Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка платформы CoreFoundation ссылка CFBinaryHeap

Опции
Развертывание Target:

На этой странице
Язык:

Ссылка CFBinaryHeap

CFBinaryHeap реализует контейнер, хранящий сортированное использование значений алгоритма двоичного поиска. Вся двоичная «куча» является непостоянной; нет отдельного неизменного разнообразия. Двоичная «куча» может быть полезной как приоритетные очереди.

Функции

  • Добавляет значение к двоичной «куче».

    Объявление

    Swift

    func CFBinaryHeapAddValue(_ heap: CFBinaryHeap!, _ value: UnsafePointer<Void>)

    Objective C

    void CFBinaryHeapAddValue ( CFBinaryHeapRef heap, const void *value );

    Параметры

    heap

    Двоичная «куча» для использования.

    value

    Значение для добавления к двоичной «куче». Значение сохраняется двоичной «кучей» с помощью сохранить обратного вызова, предоставленного в CFBinaryHeapCallBacks структура, когда создавалась двоичная «куча».

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Многократно применяет функцию ко всем значениям в двоичной «куче».

    Объявление

    Swift

    func CFBinaryHeapApplyFunction(_ heap: CFBinaryHeap!, _ applier: CFBinaryHeapApplierFunction, _ context: UnsafeMutablePointer<Void>)

    Objective C

    void CFBinaryHeapApplyFunction ( CFBinaryHeapRef heap, CFBinaryHeapApplierFunction applier, void *context );

    Параметры

    heap

    Двоичная «куча» для использования.

    applier

    Функция обратного вызова для вызова один раз для каждого значения в heap.

    context

    Определенное с помощью программы значение, передающееся applier функция обратного вызова, но иначе не использовано этой функцией.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвраты, является ли данное значение в двоичной «куче».

    Объявление

    Swift

    func CFBinaryHeapContainsValue(_ heap: CFBinaryHeap!, _ value: UnsafePointer<Void>) -> Boolean

    Objective C

    Boolean CFBinaryHeapContainsValue ( CFBinaryHeapRef heap, const void *value );

    Параметры

    heap

    Двоичная «куча» для поиска.

    value

    Значение, для которого можно найти соответствия в двоичной «куче». Сравнить обратный вызов обеспечил в CFBinaryHeapCallBacks структура, когда двоичная «куча» создавалась, используется для сравнения значений. Если value, или любое из значений в двоичной «куче», не поняты под сравнить обратным вызовом, поведение не определено.

    Возвращаемое значение

    true если value элемент heap, false иначе.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Создает новую непостоянную или фиксировано-непостоянную двоичную «кучу».

    Объявление

    Swift

    func CFBinaryHeapCreate(_ allocator: CFAllocator!, _ capacity: CFIndex, _ callBacks: UnsafePointer<CFBinaryHeapCallBacks>, _ compareContext: UnsafePointer<CFBinaryHeapCompareContext>) -> CFBinaryHeap!

    Objective C

    CFBinaryHeapRef CFBinaryHeapCreate ( CFAllocatorRef allocator, CFIndex capacity, const CFBinaryHeapCallBacks *callBacks, const CFBinaryHeapCompareContext *compareContext );

    Параметры

    allocator

    Средство выделения для использования для выделения памяти для нового объекта. Передача NULL или kCFAllocatorDefault использовать текущее средство выделения по умолчанию.

    capacity

    Максимальное количество значений, которые могут содержаться двоичной «кучей». Двоичная «куча» запускается пустой и может расти до этого числа значений. Если этот параметр 0, максимальная способность двоичной «кучи» ограничивается только памятью.

    callBacks

    Указатель на a CFBinaryHeapCallBacks структура инициализировала с обратными вызовами, воздействующими на значения, помещенные в двоичную «кучу». Если двоичная «куча» будет содержать CFString объекты, передайте kCFStringBinaryHeapCallBacks постоянный. Это функционирует, делает копию содержания структуры обратных вызовов, так, чтобы указатель на структуру на штабеле мог быть передан в или мог быть снова использован для многократных двоичных созданий «кучи». Этот параметр обратных вызовов может не быть NULL.

    compareContext

    Не используемый. Передача NULL.

    Возвращаемое значение

    Новое CFBinaryHeap объект. Владение соблюдает Создать Правило.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Создает новую непостоянную или фиксировано-непостоянную двоичную «кучу» со значениями от существующей ранее двоичной «кучи».

    Объявление

    Swift

    func CFBinaryHeapCreateCopy(_ allocator: CFAllocator!, _ capacity: CFIndex, _ heap: CFBinaryHeap!) -> CFBinaryHeap!

    Objective C

    CFBinaryHeapRef CFBinaryHeapCreateCopy ( CFAllocatorRef allocator, CFIndex capacity, CFBinaryHeapRef heap );

    Параметры

    allocator

    Средство выделения для использования для выделения памяти для нового объекта. Передача NULL или kCFAllocatorDefault использовать текущее средство выделения по умолчанию.

    capacity

    Максимальное количество значений, которые могут содержаться двоичной «кучей». Двоичная «куча» запускается с того же числа значений как heap и может расти до этого числа значений. Если этот параметр 0, максимальная способность двоичной «кучи» ограничивается только памятью. Если ненулевой, capacity должно быть достаточно большим для сдержания всех значений heap.

    heap

    Двоичная «куча», которая должна быть скопирована. Значения от двоичной «кучи» копируются как указатели в новую двоичную «кучу» (т.е. сами значения копируются, не что, на который значения указывают, если что-либо). Однако значения также сохраняются новой двоичной «кучей».

    Возвращаемое значение

    Новое CFBinaryHeap объект, содержащий те же значения как heap. Новая двоичная «куча» использует те же обратные вызовы как heap. Владение соблюдает Создать Правило.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает число значений в настоящее время в двоичной «куче».

    Объявление

    Swift

    func CFBinaryHeapGetCount(_ heap: CFBinaryHeap!) -> CFIndex

    Objective C

    CFIndex CFBinaryHeapGetCount ( CFBinaryHeapRef heap );

    Параметры

    heap

    Двоичная «куча» для использования.

    Возвращаемое значение

    Число значений в heap.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Считает число раз, данное значение происходит в двоичной «куче».

    Объявление

    Swift

    func CFBinaryHeapGetCountOfValue(_ heap: CFBinaryHeap!, _ value: UnsafePointer<Void>) -> CFIndex

    Objective C

    CFIndex CFBinaryHeapGetCountOfValue ( CFBinaryHeapRef heap, const void *value );

    Параметры

    heap

    Двоичная «куча» для поиска.

    value

    Значение, для которого можно найти соответствия в двоичной «куче». Сравнить обратный вызов обеспечил в CFBinaryHeapCallBacks структура, когда двоичная «куча» создавалась, используется для сравнения. Если value, или любое из значений в двоичной «куче», не поняты под сравнить обратным вызовом, поведение не определено.

    Возвращаемое значение

    Число раз value происходит в heap.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает минимальное значение в двоичной «куче».

    Объявление

    Swift

    func CFBinaryHeapGetMinimum(_ heap: CFBinaryHeap!) -> UnsafePointer<Void>

    Objective C

    const void * CFBinaryHeapGetMinimum ( CFBinaryHeapRef heap );

    Параметры

    heap

    Двоичная «куча» для использования.

    Возвращаемое значение

    Минимальное значение в heap как определено двоичной «кучей» сравнивают обратный вызов. Если heap содержит несколько равных минимальных значений, любой может быть возвращен. Если значение является Базовым объектом Основы, владение соблюдает Получить Правило.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает минимальное значение в двоичной «куче», если существующий.

    Объявление

    Swift

    func CFBinaryHeapGetMinimumIfPresent(_ heap: CFBinaryHeap!, _ value: UnsafeMutablePointer<UnsafePointer<Void>>) -> Boolean

    Objective C

    Boolean CFBinaryHeapGetMinimumIfPresent ( CFBinaryHeapRef heap, const void **value );

    Параметры

    heap

    Двоичная «куча» для использования.

    value

    По возврату, минимальному значению в heap как определено двоичной «кучей» сравнивают обратный вызов. Если heap содержит несколько равных минимальных значений, любой может быть возвращен. Если значение является Базовым объектом Основы, владение соблюдает Получить Правило.

    Возвращаемое значение

    true если минимальное значение существует в heap, false иначе. false возвращается только если heap пусто.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает идентификатор типа CFBinaryHeap непрозрачный тип.

    Объявление

    Swift

    func CFBinaryHeapGetTypeID() -> CFTypeID

    Objective C

    CFTypeID CFBinaryHeapGetTypeID ( void );

    Возвращаемое значение

    Идентификатор типа CFBinaryHeap непрозрачный тип.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Копии все значения от двоичной «кучи» в сортированный массив C.

    Объявление

    Swift

    func CFBinaryHeapGetValues(_ heap: CFBinaryHeap!, _ values: UnsafeMutablePointer<UnsafePointer<Void>>)

    Objective C

    void CFBinaryHeapGetValues ( CFBinaryHeapRef heap, const void **values );

    Параметры

    heap

    Двоичная «куча» для использования.

    values

    По возврату память, на которую указывает этот параметр, содержит массив C всех значений в «куче», сортированной от минимума до максимальных значений. Необходимо выделить достаточную память для сдержания всех значений heap прежде, чем вызвать эту функцию. Если значения являются Базовыми объектами Основы, владение соблюдает Получить Правило.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Удаляет все значения из двоичной «кучи», делая его пустым.

    Объявление

    Swift

    func CFBinaryHeapRemoveAllValues(_ heap: CFBinaryHeap!)

    Objective C

    void CFBinaryHeapRemoveAllValues ( CFBinaryHeapRef heap );

    Параметры

    heap

    Двоичная «куча» для использования.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Удаляет минимальное значение из двоичной «кучи».

    Объявление

    Swift

    func CFBinaryHeapRemoveMinimumValue(_ heap: CFBinaryHeap!)

    Objective C

    void CFBinaryHeapRemoveMinimumValue ( CFBinaryHeapRef heap );

    Параметры

    heap

    Двоичная «куча» для использования.

    Обсуждение

    Если heap содержит несколько равных минимальных значений, только один из них удален. Если heap пусто, эта функция ничего не делает.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

Обратные вызовы

  • Функция обратного вызова раньше применяла функцию ко всем элементам двоичной «кучи».

    Объявление

    Swift

    typealias CFBinaryHeapApplierFunction = CFunctionPointer<((UnsafePointer<Void>, UnsafeMutablePointer<Void>) -> Void)>

    Objective C

    typedef void (*CFBinaryHeapApplierFunction) ( const void *val, void *context );

    Параметры

    val

    Текущая стоимость от двоичной «кучи».

    context

    Определенный с помощью программы параметр контекста, данный CFBinaryHeapApplyFunction функция.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Функция обратного вызова раньше сравнивала два элемента двоичной «кучи».

    Объявление

    Objective C

    typedef CFComparisonResult (*CFBinaryHeapCompareCallBack) ( const void *ptr1, const void *ptr2, void *info );

    Параметры

    ptr1

    Первое значение, которое выдержит сравнение.

    ptr2

    Второе значение для сравнения.

    info

    Не используемый. Должен всегда быть NULL.

    Возвращаемое значение

    kCFCompareLessThan если ptr1 меньше, чем ptr2, kCFCompareEqualTo если ptr1 и ptr2 равны, или kCFCompareGreaterThan если ptr1 больше, чем ptr2.

  • Функция обратного вызова раньше получала описание значения в двоичной «куче».

    Объявление

    Objective C

    typedef CFStringRef (*CFBinaryHeapCopyDescriptionCallBack) ( const void *ptr );

    Параметры

    ptr

    Значение, которое будет описано.

  • Функция обратного вызова раньше выпускала значение, прежде чем она будет удалена из двоичной «кучи».

    Объявление

    Objective C

    typedef void (*CFBinaryHeapReleaseCallBack) ( CFAllocatorRef allocator, const void *ptr );

    Параметры

    allocator

    Средство выделения двоичной «кучи».

    ptr

    Значение для выпуска.

  • Функция обратного вызова раньше сохраняла значение, добавляемое к двоичной «куче».

    Объявление

    Objective C

    typedef const void *(*CFBinaryHeapRetainCallBack) ( CFAllocatorRef allocator, const void *ptr );

    Параметры

    allocator

    Средство выделения двоичной «кучи».

    ptr

    Значение для сохранения.

    Возвращаемое значение

    Значение для хранения в двоичной «куче», которая обычно является ptr если различное значение должно быть сохранено в двоичной «куче», параметр передал этому обратному вызову, но может быть различным значением.

Типы данных

Прочие условия

  • Структура, содержащая обратные вызовы для значений для a CFBinaryHeap объект.

    Объявление

    Swift

    struct CFBinaryHeapCallBacks { var version: CFIndex var retain: CFunctionPointer<((CFAllocator!, UnsafePointer<Void>) -> UnsafePointer<Void>)> var release: CFunctionPointer<((CFAllocator!, UnsafePointer<Void>) -> Void)> var copyDescription: CFunctionPointer<((UnsafePointer<Void>) -> Unmanaged<CFString>!)> var compare: CFunctionPointer<((UnsafePointer<Void>, UnsafePointer<Void>, UnsafeMutablePointer<Void>) -> CFComparisonResult)> }

    Objective C

    struct CFBinaryHeapCallBacks { CFIndex version; CFBinaryHeapRetainCallBack retain; CFBinaryHeapReleaseCallBack release; CFAllocatorCopyDescriptionCallBack copyDescription; CFBinaryHeapCompareCallBack compare; }; typedef struct CFBinaryHeapCallBacks CFBinaryHeapCallBacks;

    Поля

    version

    Номер версии типа структуры, передаваемого в в качестве параметра CFBinaryHeap функции создания. Эта структура является версией 0.

    retain

    Обратный вызов раньше добавлял, что сохранение для двоичного файла сваливает значения в кучу, поскольку они помещаются в двоичную «кучу». Этот обратный вызов возвращает значение для использования в качестве значения в двоичной «куче», которая обычно является параметром, передаваемым по значению, передал этому обратному вызову, но может быть различное значение, если различное значение должно быть добавлено к двоичной «куче». Если это поле NULL, двоичная «куча» не делает ничего для сохранения добавляемого значения.

    release

    Обратный вызов раньше удалял сохранение ранее добавленного для двоичной «кучи» от значений, когда они удалены из двоичной «кучи». Если это поле NULL, двоичная «куча» не делает ничего для выпуска удаляемого значения.

    copyDescription

    Обратный вызов раньше создавал представление описательной строки каждого значения в двоичной «куче». Это используется CFCopyDescription функция. Если это поле NULL, двоичная «куча» создает a CFString объект, описывающий значение на основе его значения указателя.

    compare

    Обратный вызов раньше сравнивал значения в двоичной «куче» в некоторых операциях. Это поле не может быть NULL.

    Доступность

    Доступный в OS X v10.0 и позже.

  • Не используемый.

    Объявление

    Swift

    struct CFBinaryHeapCompareContext { var version: CFIndex var info: UnsafeMutablePointer<Void> var retain: CFunctionPointer<((UnsafePointer<Void>) -> UnsafePointer<Void>)> var release: CFunctionPointer<((UnsafePointer<Void>) -> Void)> var copyDescription: CFunctionPointer<((UnsafePointer<Void>) -> Unmanaged<CFString>!)> }

    Objective C

    struct CFBinaryHeapCompareContext { CFIndex version; void *info; CFAllocatorRetainCallBack retain; CFAllocatorReleaseCallBack release; CFAllocatorCopyDescriptionCallBack copyDescription; }; typedef struct CFBinaryHeapCompareContext CFBinaryHeapCompareContext;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Ссылка на двоичный объект «кучи».

    Объявление

    Swift

    typealias CFBinaryHeapRef = CFBinaryHeap

    Objective C

    typedef struct __CFBinaryHeap *CFBinaryHeapRef;

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

Константы

Прочие условия

  • CFBinaryHeap обеспечивает некоторые предопределенные обратные вызовы для Вашего удобства.

    Объявление

    Swift

    let kCFStringBinaryHeapCallBacks: CFBinaryHeapCallBacks

    Objective C

    const CFBinaryHeapCallBacks kCFStringBinaryHeapCallBacks;

    Константы

    • kCFStringBinaryHeapCallBacks

      kCFStringBinaryHeapCallBacks

      Предопределенный CFBinaryHeapCallBacks структура, содержащая ряд обратных вызовов, подходящих для использования, когда значения в двоичной «куче» - все CFString объекты.

      Доступный в OS X v10.0 и позже.