Classes | Typedefs | Functions
gft::PQueue16 Namespace Reference

Classes

struct  _pqnode
 
struct  _pqdoublylinkedlists
 
struct  _pqcircularqueue
 
struct  _priorityqueue
 Priority queue by Dial implemented as proposed by A.X. Falcao with circular and growing features. More...
 

Typedefs

typedef struct
gft::PQueue16::_pqnode 
PQNode
 
typedef struct
gft::PQueue16::_pqdoublylinkedlists 
PQDoublyLinkedLists
 
typedef struct
gft::PQueue16::_pqcircularqueue 
PQCircularQueue
 
typedef struct
gft::PQueue16::_priorityqueue 
PQueue16
 Priority queue by Dial implemented as proposed by A.X. Falcao with circular and growing features. More...
 

Functions

PQueue16Create (int nbuckets, int nelems, ushort *value)
 
void Destroy (PQueue16 **Q)
 
PQueue16Grow (PQueue16 **Q, int nbuckets)
 
void Reset (PQueue16 *Q)
 
void InsertElem (PQueue16 **Q, int elem)
 
void RemoveElem (PQueue16 *Q, int elem)
 
void UpdateElem (PQueue16 **Q, int elem, ushort newvalue)
 
int RemoveMinFIFO (PQueue16 *Q)
 
int RemoveMinLIFO (PQueue16 *Q)
 
int RemoveMaxFIFO (PQueue16 *Q)
 
int RemoveMaxLIFO (PQueue16 *Q)
 
void FastInsertElem (PQueue16 *Q, int elem)
 
void FastRemoveElem (PQueue16 *Q, int elem)
 
void FastUpdateElem (PQueue16 *Q, int elem, ushort newvalue)
 
int FastRemoveMinFIFO (PQueue16 *Q)
 
int FastRemoveMinLIFO (PQueue16 *Q)
 
int FastRemoveMaxFIFO (PQueue16 *Q)
 
int FastRemoveMaxLIFO (PQueue16 *Q)
 
bool IsEmpty (PQueue16 *Q)
 
bool IsFull (PQueue16 *Q)
 

Typedef Documentation

Priority queue by Dial implemented as proposed by A.X. Falcao with circular and growing features.

Function Documentation

PQueue16 * gft::PQueue16::Create ( int  nbuckets,
int  nelems,
ushort *  value 
)
void gft::PQueue16::Destroy ( PQueue16 **  Q)
void gft::PQueue16::FastInsertElem ( PQueue16 *  Q,
int  elem 
)

Faster version to be used when values are in fixed range 0, nbuckets-1.

void gft::PQueue16::FastRemoveElem ( PQueue16 *  Q,
int  elem 
)

Faster version to be used when values are in fixed range 0, nbuckets-1.

int gft::PQueue16::FastRemoveMaxFIFO ( PQueue16 *  Q)

Faster version to be used when values are in fixed range 0, nbuckets-1.

int gft::PQueue16::FastRemoveMaxLIFO ( PQueue16 *  Q)

Faster version to be used when values are in fixed range 0, nbuckets-1.

int gft::PQueue16::FastRemoveMinFIFO ( PQueue16 *  Q)

Faster version to be used when values are in fixed range 0, nbuckets-1.

int gft::PQueue16::FastRemoveMinLIFO ( PQueue16 *  Q)

Faster version to be used when values are in fixed range 0, nbuckets-1.

void gft::PQueue16::FastUpdateElem ( PQueue16 *  Q,
int  elem,
ushort  newvalue 
)

Faster version to be used when values are in fixed range 0, nbuckets-1.

PQueue16 * gft::PQueue16::Grow ( PQueue16 **  Q,
int  nbuckets 
)
void gft::PQueue16::InsertElem ( PQueue16 **  Q,
int  elem 
)

Generic version with circular and growing features.

bool gft::PQueue16::IsEmpty ( PQueue16 *  Q)
inline
bool gft::PQueue16::IsFull ( PQueue16 *  Q)
inline
void gft::PQueue16::RemoveElem ( PQueue16 *  Q,
int  elem 
)

Generic version with circular and growing features.

int gft::PQueue16::RemoveMaxFIFO ( PQueue16 *  Q)

Generic version with circular and growing features.

int gft::PQueue16::RemoveMaxLIFO ( PQueue16 *  Q)

Generic version with circular and growing features.

int gft::PQueue16::RemoveMinFIFO ( PQueue16 *  Q)

Generic version with circular and growing features.

int gft::PQueue16::RemoveMinLIFO ( PQueue16 *  Q)

Generic version with circular and growing features.

void gft::PQueue16::Reset ( PQueue16 *  Q)
void gft::PQueue16::UpdateElem ( PQueue16 **  Q,
int  elem,
ushort  newvalue 
)

Generic version with circular and growing features.