A priority set, which only holds a limited number of entries and sorts itself based on the Compare template argument. It is also a set, which means every entry exists only once. More...
#include <LimitedPriorityQueueSet.h>
Public Member Functions | |
bool | Empty () const |
const T & | Front () const |
LimitedPriorityQueueSet (size_t size) | |
T | PopFront () |
void | Push (const T &item) |
size_t | Size () const |
virtual | ~LimitedPriorityQueueSet () |
Deconstructor. | |
Private Attributes | |
std::deque< T > | m_deque |
size_t | m_maxSize |
size_t | m_size |
A priority set, which only holds a limited number of entries and sorts itself based on the Compare template argument. It is also a set, which means every entry exists only once.
T | the type of value that is being saved (must have a copy-constructor) |
Compare | the compare function (see std::less for how to define it) |
Definition at line 16 of file LimitedPriorityQueueSet.h.
face_contour_detector::LimitedPriorityQueueSet< T, Compare >::LimitedPriorityQueueSet | ( | size_t | size | ) |
Creates a LimitedPriorityQueueSet of a certain maximum size
size | the maximum number of entries that can be saved |
Definition at line 49 of file LimitedPriorityQueueSet.h.
face_contour_detector::LimitedPriorityQueueSet< T, Compare >::~LimitedPriorityQueueSet | ( | ) | [virtual] |
Deconstructor.
Definition at line 52 of file LimitedPriorityQueueSet.h.
bool face_contour_detector::LimitedPriorityQueueSet< T, Compare >::Empty | ( | ) | const |
True if the LimitedPriorityQueueSet is empty.
Definition at line 97 of file LimitedPriorityQueueSet.h.
const T & face_contour_detector::LimitedPriorityQueueSet< T, Compare >::Front | ( | ) | const |
Returns the front element, without modifying the LimitedPriorityQueueSet.
Definition at line 92 of file LimitedPriorityQueueSet.h.
T face_contour_detector::LimitedPriorityQueueSet< T, Compare >::PopFront | ( | ) |
Returns the front element and also removes it from the LimitedPriorityQueueSet.
Definition at line 83 of file LimitedPriorityQueueSet.h.
void face_contour_detector::LimitedPriorityQueueSet< T, Compare >::Push | ( | const T & | item | ) |
Tries to add an item. Note: if the value has not enough priority (based on Compare) and the list is already at it's maximum size the item will not be added. Note: if the item already exists in the list, it will not be added ( meaning if Compare(item, other) && Compare(other,item) is true with any element other in the LimitedPriorityQueueSet)
item | the item being added |
Definition at line 55 of file LimitedPriorityQueueSet.h.
size_t face_contour_detector::LimitedPriorityQueueSet< T, Compare >::Size | ( | ) | const |
The number of entries the LimitedPriorityQueueSet.
Definition at line 102 of file LimitedPriorityQueueSet.h.
std::deque<T> face_contour_detector::LimitedPriorityQueueSet< T, Compare >::m_deque [private] |
Definition at line 41 of file LimitedPriorityQueueSet.h.
size_t face_contour_detector::LimitedPriorityQueueSet< T, Compare >::m_maxSize [private] |
Definition at line 43 of file LimitedPriorityQueueSet.h.
size_t face_contour_detector::LimitedPriorityQueueSet< T, Compare >::m_size [private] |
Definition at line 42 of file LimitedPriorityQueueSet.h.