Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
HighPriorityQueue Class Reference

Public Member Functions

 HighPriorityQueue (Particle *pElement, int pPriority, double pEnterTime, int pPosition)
 
void clear ()
 
Particle * dequeue (int &pPriority, double &pEnterTime)
 
QueueElementenqueue (Particle *pElement, int pDiscipline, int pPriority, double pEnterTime=-1, int pPosition=0)
 
Particle * getElm (int pPosition, int &pPriority, double &pEnterTime)
 
Particle * getElm (int pPosition, int &pTag)
 
int indexOfLowestPriority ()
 
int length ()
 
int maxPriority ()
 
int minPriority ()
 
QueueElementnext ()
 
QueueElementputAfterElm (Particle *pElement, int pAfterPosition, int pPriority, double pEnterTime=-1, int pPosisiton=0)
 
QueueElementputAtEnd (Particle *pElement, int pPriority, double pEnterTime=-1, int pPosition=0)
 
QueueElementputAtFront (Particle *pElement, int pPriority, double pEnterTime=-1, int pPosition=0)
 
void putFreeElement (QueueElement *pQE)
 
Particle * remove (int pPosition)
 
Particle * remove (int pPosition, int &pPriority, double &pEnterTime)
 
void reset ()
 

Protected Member Functions

void clearFreeList ()
 
QueueElementgetFreeElement ()
 

Protected Attributes

QueueElementmLastNode
 
QueueElementmLastReference