|
MTC
|
ordered<ValueType> provides an adapter for a std::list to allow sorting. More...
#include <cost_queue.h>
Public Member Functions | |
| ordered () | |
| initialize empty container | |
| bool | empty () const |
| size_type | size () const |
| void | clear () |
| reference | top () |
| const_reference | top () const |
| value_type | pop () |
| reference | front () |
| const_reference | front () const |
| reference | back () |
| const_reference | back () const |
| iterator | begin () |
| iterator | end () |
| const_iterator | begin () const |
| const_iterator | end () const |
| const_iterator | cbegin () const |
| const_iterator | cend () const |
| const_reverse_iterator | rbegin () const |
| const_reverse_iterator | rend () const |
| const_reverse_iterator | crbegin () const |
| const_reverse_iterator | crend () const |
| void | sort () |
| explicitly sort container, useful if many items have changed their value | |
| iterator | insert (const value_type &item) |
| iterator | insert (value_type &&item) |
| void | push (const value_type &item) |
| void | push (value_type &&item) |
| iterator | erase (const_iterator pos) |
| iterator | update (iterator &it) |
| update sort position of a single item after changes | |
| iterator | moveTo (iterator pos, container_type &other, iterator other_pos) |
| move element pos from this to other container, inserting before other_pos | |
| iterator | moveFrom (iterator pos, container_type &other) |
| move element pos from other container into this one (sorted) | |
| template<typename Predicate > | |
| void | remove_if (Predicate p) |
Protected Attributes | |
| container_type | c |
| Compare | comp |
ordered<ValueType> provides an adapter for a std::list to allow sorting.
In contrast to std::priority_queue, we use a std::list as the underlying container. This ensures, that existing iterators remain valid upon insertion and deletion. Sorted insertion has logarithmic complexity.