binaryHeap Class Template Reference
[Priority queues]

Standard implementation of a priority queue using a binary tree. More...

#include <binaryHeap.h>

Inheritance diagram for binaryHeap:

goblinQueue managedObject goblinRootObject

Public Member Functions

 binaryHeap (TItem nn, goblinController &thisContext) throw ()
 ~binaryHeap () throw ()
void Init () throw ()
unsigned long Size () const throw ()
unsigned long Allocated () const throw ()
void Display (TItem i) const throw (ERRange)
char * Display () const throw ()
void Insert (TItem w, TKey alpha) throw (ERRange,ERRejected)
TItem Delete () throw (ERRejected)
void Delete (TItem w) throw (ERRange)
TKey Key (TItem w) const throw (ERRange)
void ChangeKey (TItem w, TKey alpha) throw (ERRange)
TItem Peek () const throw (ERRejected)
bool Empty () const throw ()
TItem Cardinality () const throw ()

Detailed Description

template<class TItem, class TKey>
class binaryHeap< TItem, TKey >

Standard implementation of a priority queue using a binary tree.


Constructor & Destructor Documentation

binaryHeap TItem  nn,
goblinController thisContext
throw ()
 

~binaryHeap  )  throw ()
 


Member Function Documentation

unsigned long Allocated  )  const throw ()
 

Reimplemented from managedObject.

TItem Cardinality  )  const throw () [virtual]
 

Query the current queue cardinality.

Returns:
The queue cardinality

Implements goblinQueue.

void ChangeKey TItem  w,
TKey  alpha
throw (ERRange) [virtual]
 

Insert an index into the queue.

Parameters:
w An element index
alpha A new priority for this element

Implements goblinQueue.

void Delete TItem  w  )  throw (ERRange)
 

TItem Delete  )  throw (ERRejected) [virtual]
 

Delete an element from the queue.

Returns:
The index of the deleted element

Implements goblinQueue.

char * Display  )  const throw () [virtual]
 

Unconditional display of data objects.

Reimplemented from managedObject.

void Display TItem  i  )  const throw (ERRange)
 

bool Empty  )  const throw () [virtual]
 

Check if the queue is empty.

Return values:
true The queue is empty

Implements goblinQueue.

void Init  )  throw () [virtual]
 

Delete all elements from the queue efficently.

Implements goblinQueue.

void Insert TItem  w,
TKey  alpha
throw (ERRange,ERRejected) [virtual]
 

Insert an index into the queue.

Parameters:
w The index to be inserted
alpha The priority of the inserted index

Implements goblinQueue.

TKey Key TItem  w  )  const throw (ERRange)
 

TItem Peek  )  const throw (ERRejected) [virtual]
 

Query what is coming next on the queue.

Returns:
The index of the element to be deleted next

Implements goblinQueue.

unsigned long Size  )  const throw () [virtual]
 

Implements goblinQueue.