Function

CFBinaryHeapCreateCopy

Creates a new mutable or fixed-mutable binary heap with the values from a pre-existing binary heap.

Declaration

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

Parameters

allocator

The allocator to use to allocate memory for the new object. Pass NULL or kCFAllocatorDefault to use the current default allocator.

capacity

The maximum number of values that can be contained by the binary heap. The binary heap starts with the same number of values as heap and can grow to this number of values. If this parameter is 0, the binary heap's maximum capacity is limited only by memory. If nonzero, capacity must be large enough to hold all the values in heap.

heap

The binary heap which is to be copied. The values from the binary heap are copied as pointers into the new binary heap (that is, the values themselves are copied, not that to which the values point, if anything). However, the values are also retained by the new binary heap.

Return Value

A new CFBinaryHeap object holding the same values as heap. The new binary heap uses the same callbacks as heap. Ownership follows the The Create Rule.

See Also

CFBinaryHeap Miscellaneous Functions

CFBinaryHeapAddValue

Adds a value to a binary heap.

CFBinaryHeapApplyFunction

Iteratively applies a function to all the values in a binary heap.

CFBinaryHeapContainsValue

Returns whether a given value is in a binary heap.

CFBinaryHeapCreate

Creates a new mutable or fixed-mutable binary heap.

CFBinaryHeapGetCount

Returns the number of values currently in a binary heap.

CFBinaryHeapGetCountOfValue

Counts the number of times a given value occurs in a binary heap.

CFBinaryHeapGetMinimum

Returns the minimum value in a binary heap.

CFBinaryHeapGetMinimumIfPresent

Returns the minimum value in a binary heap, if present.

CFBinaryHeapGetTypeID

Returns the type identifier of the CFBinaryHeap opaque type.

CFBinaryHeapGetValues

Copies all the values from a binary heap into a sorted C array.

CFBinaryHeapRemoveAllValues

Removes all values from a binary heap, making it empty.

CFBinaryHeapRemoveMinimumValue

Removes the minimum value from a binary heap.