F bool AllowsDuplicates | Access: Read-Only
Value:True since this collection has bag semantics |
F System.Collections.Generic.IComparer<T> Comparer | Access: Read-Only
Value:The comparer
The comparer object supplied at creation time for this collection
|
int Count | Access: Read-Only
Value:The size of this collection |
Speed CountSpeed | Access: Read-Only
Value:A characterization of the speed of the
Count property in this collection.
The value is symbolic indicating the type of asymptotic complexity
in terms of the size of this collection (worst-case or amortized as
relevant).
|
bool DuplicatesByCounting | Access: Read-Only
Value:True if only one representative of a group of equal items
is kept in the collection together with the total count.
By convention this is true for any collection with set semantics.
|
System.Collections.Generic.IEqualityComparer<T> EqualityComparer | Access: Read-Only
Value:
Value is null since this collection has no equality concept for its items.
|
bool IsEmpty | Access: Read-Only
Value:True if this collection is empty. |
F bool IsReadOnly | Access: Read-Only
Value:True if this collection is read-only.
If true any call of an updating operation will throw an
ReadOnlyCollectionException |
F T this[IPriorityQueueHandle<T> handle] | Access: Read-Write
Get or set the item corresponding to a handle.
Parameters: | handle: | The reference into the heap |
|
EventTypeEnum ListenableEvents | Access: Read-Only
Value: |
F bool Add(T item) |
Add an item to this priority queue.
Returns: | True | Parameters: | item: | The item to add. |
|
F bool Add(ref IPriorityQueueHandle<T> handle, T item) |
Add an item to the priority queue, receiving a
handle for the item in the queue,
or reusing an already existing handle.
Returns: | True since item will always be added unless the call throws an exception. | Parameters: | handle: | On output: a handle for the added item.
On input: null for allocating a new handle, an invalid handle for reuse.
A handle for reuse must be compatible with this priority queue,
by being created by a priority queue of the same runtime type, but not
necessarily the same priority queue object. | item: | The item to add. |
|
F void AddAll<U>(IEnumerable<U> items) |
Add the elements from another collection with a more specialized item type
to this collection.
Type parameters: | | U | The type of items to add | Constraints: | | | U : T |
Parameters: | items: | The items to add |
|
F bool Check() |
Check the integrity of the internal data structures of this collection.
Only avaliable in DEBUG builds???
Returns: | True if check does not fail. |
|
T Choose() |
Choose some item of this collection.
|
object Clone() |
Make a shallow copy of this IntervalHeap.
|
F T Delete(IPriorityQueueHandle<T> handle) |
Delete an item with a handle from a priority queue.
Returns: | The deleted item | Parameters: | handle: | The handle for the item. The handle will be invalidated, but reusable. |
|
F T DeleteMax() |
Remove the largest item from this priority queue.
/ThrowsC5.NoSuchItemException if queue is empty
Returns: | The removed item. |
|
F T DeleteMax(out IPriorityQueueHandle<T> handle) |
Remove the largest item from this priority queue.
Returns: | The removed item. | Parameters: | handle: | On return: the handle of the removed item. |
|
F T DeleteMin() |
Remove the least item from this priority queue.
/ThrowsC5.NoSuchItemException if queue is empty
Returns: | The removed item. |
|
F T DeleteMin(out IPriorityQueueHandle<T> handle) |
Remove the least item from this priority queue.
Returns: | The removed item. | Parameters: | handle: | On return: the handle of the removed item. |
|
F bool Find(IPriorityQueueHandle<T> handle, out T item) |
Check safely if a handle is valid for this queue and if so, report the corresponding queue item.
Returns: | True if the handle is valid. | Parameters: | handle: | The handle to check | item: | If the handle is valid this will contain the corresponding item on output. |
|
F T FindMax() |
Find the current largest item of this priority queue.
/ThrowsC5.NoSuchItemException if queue is empty
Returns: | The largest item. |
|
F T FindMax(out IPriorityQueueHandle<T> handle) |
Find the current largest item of this priority queue.
Returns: | The largest item. | Parameters: | handle: | On return: the handle of the item. |
|
F T FindMin() |
Find the current least item of this priority queue.
/ThrowsC5.NoSuchItemException if queue is empty
|
F T FindMin(out IPriorityQueueHandle<T> handle) |
Find the current least item of this priority queue.
Returns: | The least item. | Parameters: | handle: | On return: the handle of the item. |
|
System.Collections.Generic.IEnumerator<T> GetEnumerator() |
Create an enumerator for the collection
Note: the enumerator does *not* enumerate the items in sorted order,
but in the internal table order. Returns: | The enumerator(SIC) |
|
F T Replace(IPriorityQueueHandle<T> handle, T item) |
Replace an item with a handle in a priority queue with a new item.
Typically used for changing the priority of some queued object.
Returns: | The old item | Parameters: | handle: | The handle for the old item | item: | The new item |
|