PriorityQueue< T, Key, GetKey, CompareKeys, Sequence > Class Template Reference

A base class for priority queues. More...

#include <PriorityQueue.h>

Inheritance diagram for PriorityQueue< T, Key, GetKey, CompareKeys, Sequence >:
PriorityQueueBinaryHeap< T, Key, GetKey, CompareKeys, Sequence > PriorityQueueBinaryHeapDynamicKeys< T, GetHandle, Key, GetKey, CompareKeys, Sequence > PriorityQueueBinaryHeapDynamicKeys< T, HeapHandleArray< T, Sequence::iterator >, Key, GetKey, CompareKeys, Sequence > PriorityQueueBinaryHeapStoreKeys< T, Key, GetKey, CompareKeys, Sequence > PriorityQueueBinaryHeapArray< T, Key, GetKey, CompareKeys, Sequence >

List of all members.

Public Types

typedef T element_type
 The element type.
typedef const element_typeconst_reference
 A const reference to the element type.
typedef Key key_type
 The key type.
typedef GetKey get_key_functor
 The functor to get a key from an element.
typedef CompareKeys compare_keys_functor
 The functor to compare keys.
typedef Sequence sequence_type
 The sequence to store elements.
typedef sequence_type::value_type value_type
 The type stored in the priority queue.
typedef sequence_type::iterator iterator
 An iterator on the value type.
typedef
sequence_type::difference_type 
difference_type
 Difference between iterators.
typedef int size_type
 The size type.

Detailed Description

template<typename T, typename Key = typename std::iterator_traits<T>::value_type, class GetKey = Dereference<T>, class CompareKeys = std::greater<Key>, class Sequence = std::vector<T>>
class PriorityQueue< T, Key, GetKey, CompareKeys, Sequence >

A base class for priority queues.

PriorityQueue is a base class that defines types common to all priority queues.

Parameters:
T is the element type.
Key is the key type. By default, we assume T is an iterator and Key is the value type of this iterator.

The documentation for this class was generated from the following file:
Generated on Thu Jun 30 02:14:52 2016 for Algorithms and Data Structures Package by  doxygen 1.6.3