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 | |
PQueue16 * | Create (int nbuckets, int nelems, ushort *value) |
void | Destroy (PQueue16 **Q) |
PQueue16 * | Grow (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 struct gft::PQueue16::_pqcircularqueue gft::PQueue16::PQCircularQueue |
typedef struct gft::PQueue16::_pqnode gft::PQueue16::PQNode |
typedef struct gft::PQueue16::_priorityqueue gft::PQueue16::PQueue16 |
Priority queue by Dial implemented as proposed by A.X. Falcao with circular and growing features.
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.
|
inline |
|
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.