Ocular Engine
|
#include <PriorityMultiQueue.hpp>
Public Member Functions | |
bool | enqueue (T const element, Core::Priority priority) |
bool | dequeue () |
bool | dequeue (T &retElement) |
bool | dequeue (Core::Priority priority, T &retElement) |
unsigned | getNumElements () const |
unsigned | getNumElementsCritical () const |
unsigned | getNumElementsHigh () const |
unsigned | getNumElementsMedium () const |
unsigned | getNumElementsLow () const |
bool | empty () |
void | clear () |
The PriorityMultiQueue is a priority system based off of the priority levels defined in Core::Priority
This structure is best suited for situations where high volumes of enqueue and dequeue actions are expected, and can perform up to 250 times faster than the STL std::priority_queue in this regard. Conversely, random-access is not supported and (currently) neither is set iteration.
If random-access and/or element iteration is required, please see PriorityList.
|
inline |
Dequeues the first available element from the priority queues.
The queues are attempted to be dequeued in this order:
[out] | retElement | The element removed from the queue. |
|
inline |
Dequeues the first available element from the priority queues.
The queues are attempted to be dequeued in this order:
[out] | retElement | The element removed from the queue. |
|
inline |
Dequeues the element at the front of the specified queue.
[out] | retElement | The element removed from the queue. |
|
inline |
|
inline |
Enqueues the element inside of the specified priority queue.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |