Gecode::Iter::PriorityQueue< T, Less > Class Template Reference
[Support algorithms and datastructures]
Simple fixed-size priority queue. More...
#include <priority-queue.hpp>
Public Member Functions | |
PriorityQueue (void) | |
Default constructor (creates empty queue). | |
PriorityQueue (int n, const Less &l) | |
Create for n elements and order l. | |
void | init (int, const Less &) |
Initialize for n elements and order l. | |
PriorityQueue (const PriorityQueue &p) | |
Assign queue from queue p (elements are shared). | |
const PriorityQueue & | operator= (const PriorityQueue &) |
Assign queue from queue p (elements are shared). | |
~PriorityQueue (void) | |
Release queue. | |
bool | empty (void) const |
Test whether queue is empty. | |
void | insert (const T &x) |
Insert element x according to order. | |
void | remove (void) |
Remove smallest element. | |
T & | top (void) |
Provide access to smallest element. | |
void | fix (void) |
Reorder queue after smallest element has changed (might not be smallest any longer). | |
void | update (const PriorityQueue< T, Less > &p, bool share) |
Update this queue from queue p (share elements if share is true). |
Detailed Description
template<class T, class Less>
class Gecode::Iter::PriorityQueue< T, Less >
Simple fixed-size priority queue.
The order is implemented by an instance of the class Less which must provide the single member function
bool operator ()(const T&, const T&)
for comparing elements.
Definition at line 55 of file priority-queue.hpp.
Constructor & Destructor Documentation
Gecode::Iter::PriorityQueue< T, Less >::PriorityQueue | ( | void | ) | [inline] |
Default constructor (creates empty queue).
Definition at line 149 of file priority-queue.hpp.
Gecode::Iter::PriorityQueue< T, Less >::PriorityQueue | ( | int | n, | |
const Less & | l | |||
) | [inline] |
Create for n elements and order l.
Definition at line 154 of file priority-queue.hpp.
Gecode::Iter::PriorityQueue< T, Less >::PriorityQueue | ( | const PriorityQueue< T, Less > & | p | ) | [inline] |
Assign queue from queue p (elements are shared).
Definition at line 165 of file priority-queue.hpp.
Gecode::Iter::PriorityQueue< T, Less >::~PriorityQueue | ( | void | ) | [inline] |
Release queue.
Definition at line 202 of file priority-queue.hpp.
Member Function Documentation
void Gecode::Iter::PriorityQueue< T, Less >::init | ( | int | n, | |
const Less & | l | |||
) | [inline] |
Initialize for n elements and order l.
Definition at line 159 of file priority-queue.hpp.
const PriorityQueue< T, Less > & Gecode::Iter::PriorityQueue< T, Less >::operator= | ( | const PriorityQueue< T, Less > & | p | ) | [inline] |
Assign queue from queue p (elements are shared).
Definition at line 173 of file priority-queue.hpp.
bool Gecode::Iter::PriorityQueue< T, Less >::empty | ( | void | ) | const [inline] |
Test whether queue is empty.
Definition at line 209 of file priority-queue.hpp.
void Gecode::Iter::PriorityQueue< T, Less >::insert | ( | const T & | x | ) | [inline] |
Insert element x according to order.
Definition at line 216 of file priority-queue.hpp.
void Gecode::Iter::PriorityQueue< T, Less >::remove | ( | void | ) | [inline] |
Remove smallest element.
Definition at line 223 of file priority-queue.hpp.
T & Gecode::Iter::PriorityQueue< T, Less >::top | ( | void | ) | [inline] |
Provide access to smallest element.
Definition at line 230 of file priority-queue.hpp.
void Gecode::Iter::PriorityQueue< T, Less >::fix | ( | void | ) | [inline] |
Reorder queue after smallest element has changed (might not be smallest any longer).
Definition at line 236 of file priority-queue.hpp.
void Gecode::Iter::PriorityQueue< T, Less >::update | ( | const PriorityQueue< T, Less > & | p, | |
bool | share | |||
) | [inline] |
Update this queue from queue p (share elements if share is true).
Definition at line 186 of file priority-queue.hpp.
The documentation for this class was generated from the following file:
- gecode/iter/priority-queue.hpp (Revision: 9692)