Defines a queue for handling prioritized elements. More...
#include <ogdf/basic/PriorityQueue.h>
Public Types | |
using | Handle = typename SuperQueue::handle |
The type of handle for accessing the elements of this queue. | |
Public Types inherited from ogdf::PriorityQueue< T, C, Impl > | |
using | const_reference = const value_type & |
using | handle = typename SpecImpl::Handle |
using | reference = value_type & |
using | size_type = std::size_t |
using | value_type = T |
Public Member Functions | |
PrioritizedQueue (const C &cmp=C(), int initialSize=128) | |
void | decrease (Handle pos, const P &priority) |
Handle | push (const E &element, const P &priority) |
Pushes a new element with the respective priority to the queue. | |
const E & | topElement () const |
Returns the topmost element in the queue. | |
const P & | topPriority () const |
Returns the priority of the topmost element in this queue. | |
Public Member Functions inherited from ogdf::PriorityQueue< T, C, Impl > | |
PriorityQueue (const C &cmp=C(), int initialSize=128) | |
Creates empty priority queue. | |
PriorityQueue (const PriorityQueue &other) | |
Copy constructor. | |
template<class InputIt > | |
PriorityQueue (InputIt first, InputIt last, const C &cmp=C()) | |
Creates priority queue with contents of the given range. | |
PriorityQueue (PriorityQueue &&other) | |
Move constructor. | |
PriorityQueue (std::initializer_list< value_type > init, const C &cmp=C()) | |
Creates priority queue with contents of the given initializer list. | |
~PriorityQueue () | |
Destroys the underlying data structure. | |
void | clear () |
Removes all the entries from the queue. | |
void | decrease (handle pos, const T &value) |
Decreases value of the element specified by handle to value . | |
bool | empty () const |
Checks whether the queue is empty. | |
void | merge (PriorityQueue &other) |
Merges in enqueued values of other queue. | |
PriorityQueue & | operator= (PriorityQueue other) |
Copy and move assignment. | |
PriorityQueue & | operator= (std::initializer_list< value_type > ilist) |
Assigns the priority queue contents of the given initializer list. | |
void | pop () |
Removes the top element from the heap. | |
handle | push (const value_type &value) |
Inserts a new element with given value into the queue. | |
template<class InputIt > | |
void | push (InputIt first, InputIt last) |
Inserts new elements specified by the given range. | |
void | push (std::initializer_list< value_type > ilist) |
Inserts new elements specified by the given initializer list. | |
size_type | size () const |
Returns the number of enqueued elements. | |
void | swap (PriorityQueue &other) |
Swaps the contents. | |
const T & | top () const |
Returns reference to the top element in the queue. | |
const T & | value (handle pos) const |
Returns the priority of that handle. | |
Private Types | |
using | Pair = PairTemplate< E, P > |
using | SuperQueue = SuperQueueTemplate< E, P, C, Impl > |
Private Attributes | |
C | m_comp |
Defines a queue for handling prioritized elements.
Definition at line 267 of file PriorityQueue.h.
using ogdf::pq_internal::PrioritizedQueue< E, P, C, Impl >::Handle = typename SuperQueue::handle |
The type of handle for accessing the elements of this queue.
Definition at line 276 of file PriorityQueue.h.
|
private |
Definition at line 270 of file PriorityQueue.h.
|
private |
Definition at line 269 of file PriorityQueue.h.
|
inline |
Definition at line 278 of file PriorityQueue.h.
|
inline |
Definition at line 299 of file PriorityQueue.h.
|
inline |
Pushes a new element with the respective priority to the queue.
element | the element to be added |
priority | the priority of that element |
Definition at line 293 of file PriorityQueue.h.
|
inline |
Returns the topmost element in the queue.
Definition at line 282 of file PriorityQueue.h.
|
inline |
Returns the priority of the topmost element in this queue.
Definition at line 285 of file PriorityQueue.h.
|
private |
Definition at line 272 of file PriorityQueue.h.