#include <PQueue.h>
Public Member Functions | |
LimitedPriorityQueue (int maxNumNodes, int maxPriority, int(*mapToInt)(T)) | |
virtual | ~LimitedPriorityQueue () |
void | insert (T value, int priority) |
void | remove (T value, int priority) |
void | update (T value, int oldPriority, int newPriority) |
T | getMax () |
int | size () |
void | reset () |
Private Attributes | |
int | numNodes |
int | _maxPriority |
int | pPrioritySpan |
int | nPrioritySpan |
ListNode< T > * | nodes |
vector< ListNode< T > * > | buckets |
int | bucketSize |
int | bucketIndex |
const int | PLUS_PRIORITYSPAN |
const int | NEG_PRIORITYSPAN |
int(* | _mapToInt )(T) |
LimitedPriorityQueue< T >::LimitedPriorityQueue | ( | int | maxNumNodes, | |
int | maxPriority, | |||
int(*)(T) | mapToInt | |||
) | [inline] |
virtual LimitedPriorityQueue< T >::~LimitedPriorityQueue | ( | ) | [inline, virtual] |
T LimitedPriorityQueue< T >::getMax | ( | ) | [inline, virtual] |
Implements SuperPQueue< T >.
void LimitedPriorityQueue< T >::insert | ( | T | value, | |
int | priority | |||
) | [inline, virtual] |
Implements SuperPQueue< T >.
void LimitedPriorityQueue< T >::remove | ( | T | value, | |
int | priority | |||
) | [inline, virtual] |
Implements SuperPQueue< T >.
void LimitedPriorityQueue< T >::reset | ( | ) | [inline, virtual] |
Implements SuperPQueue< T >.
int LimitedPriorityQueue< T >::size | ( | ) | [inline, virtual] |
Implements SuperPQueue< T >.
void LimitedPriorityQueue< T >::update | ( | T | value, | |
int | oldPriority, | |||
int | newPriority | |||
) | [inline, virtual] |
Implements SuperPQueue< T >.
int(* LimitedPriorityQueue< T >::_mapToInt)(T) [private] |
int LimitedPriorityQueue< T >::_maxPriority [private] |
int LimitedPriorityQueue< T >::bucketIndex [private] |
vector<ListNode<T>*> LimitedPriorityQueue< T >::buckets [private] |
int LimitedPriorityQueue< T >::bucketSize [private] |
const int LimitedPriorityQueue< T >::NEG_PRIORITYSPAN [private] |
ListNode<T>* LimitedPriorityQueue< T >::nodes [private] |
int LimitedPriorityQueue< T >::nPrioritySpan [private] |
int LimitedPriorityQueue< T >::numNodes [private] |
const int LimitedPriorityQueue< T >::PLUS_PRIORITYSPAN [private] |
int LimitedPriorityQueue< T >::pPrioritySpan [private] |