Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends
bk_lib::indexed_priority_queue< Cmp > Class Template Reference

#include <indexed_priority_queue.h>

List of all members.

Public Types

typedef Cmp compare_type
typedef pod_vector< key_typeindex_container_type
typedef detail::key_type key_type
typedef std::size_t size_type

Public Member Functions

void clear ()
void decrease (key_type k)
bool empty () const
void increase (key_type k)
 indexed_priority_queue (const compare_type &c=compare_type())
 indexed_priority_queue (const indexed_priority_queue &other)
bool is_in_queue (key_type k) const
const compare_typekey_compare () const
indexed_priority_queueoperator= (const indexed_priority_queue &other)
void pop ()
void push (key_type k)
void remove (key_type k)
void reserve (size_type n)
size_type size () const
template<class C >
void swapMem (indexed_priority_queue< C > &o)
key_type top () const
void update (key_type k)

Private Member Functions

void siftdown (key_type n)
void siftup (key_type n)
key_type smaller_child (size_type n) const
bool valid_key (key_type k) const

Private Attributes

compare_type compare_
index_container_type heap_
index_container_type indices_

Friends

class indexed_priority_queue

Detailed Description

template<class Cmp>
class bk_lib::indexed_priority_queue< Cmp >

Definition at line 46 of file indexed_priority_queue.h.


Member Typedef Documentation

template<class Cmp>
typedef Cmp bk_lib::indexed_priority_queue< Cmp >::compare_type

Definition at line 51 of file indexed_priority_queue.h.

Definition at line 49 of file indexed_priority_queue.h.

template<class Cmp>
typedef detail::key_type bk_lib::indexed_priority_queue< Cmp >::key_type

Definition at line 48 of file indexed_priority_queue.h.

template<class Cmp>
typedef std::size_t bk_lib::indexed_priority_queue< Cmp >::size_type

Definition at line 50 of file indexed_priority_queue.h.


Constructor & Destructor Documentation

template<class C >
bk_lib::indexed_priority_queue< C >::indexed_priority_queue ( const compare_type c = compare_type()) [explicit]

Definition at line 202 of file indexed_priority_queue.h.

template<class C >
bk_lib::indexed_priority_queue< C >::indexed_priority_queue ( const indexed_priority_queue< Cmp > &  other)

Definition at line 209 of file indexed_priority_queue.h.


Member Function Documentation

template<class Cmp>
void bk_lib::indexed_priority_queue< Cmp >::clear ( ) [inline]

Definition at line 95 of file indexed_priority_queue.h.

template<class Cmp>
void bk_lib::indexed_priority_queue< Cmp >::decrease ( key_type  k) [inline]

Definition at line 131 of file indexed_priority_queue.h.

template<class Cmp>
bool bk_lib::indexed_priority_queue< Cmp >::empty ( ) const [inline]

Definition at line 67 of file indexed_priority_queue.h.

template<class Cmp>
void bk_lib::indexed_priority_queue< Cmp >::increase ( key_type  k) [inline]

Definition at line 126 of file indexed_priority_queue.h.

template<class Cmp>
bool bk_lib::indexed_priority_queue< Cmp >::is_in_queue ( key_type  k) const [inline]

Definition at line 136 of file indexed_priority_queue.h.

template<class Cmp>
const compare_type& bk_lib::indexed_priority_queue< Cmp >::key_compare ( ) const [inline]

Definition at line 63 of file indexed_priority_queue.h.

template<class Cmp>
indexed_priority_queue& bk_lib::indexed_priority_queue< Cmp >::operator= ( const indexed_priority_queue< Cmp > &  other) [inline]

Definition at line 56 of file indexed_priority_queue.h.

template<class Cmp>
void bk_lib::indexed_priority_queue< Cmp >::pop ( ) [inline]

Definition at line 85 of file indexed_priority_queue.h.

template<class Cmp>
void bk_lib::indexed_priority_queue< Cmp >::push ( key_type  k) [inline]

Definition at line 74 of file indexed_priority_queue.h.

template<class Cmp>
void bk_lib::indexed_priority_queue< Cmp >::remove ( key_type  k) [inline]

Definition at line 141 of file indexed_priority_queue.h.

template<class Cmp>
void bk_lib::indexed_priority_queue< Cmp >::reserve ( size_type  n) [inline]

Definition at line 70 of file indexed_priority_queue.h.

template<class Cmp>
void bk_lib::indexed_priority_queue< Cmp >::siftdown ( key_type  n) [inline, private]

Definition at line 177 of file indexed_priority_queue.h.

template<class Cmp>
void bk_lib::indexed_priority_queue< Cmp >::siftup ( key_type  n) [inline, private]

Definition at line 163 of file indexed_priority_queue.h.

template<class Cmp>
size_type bk_lib::indexed_priority_queue< Cmp >::size ( ) const [inline]

Definition at line 107 of file indexed_priority_queue.h.

template<class Cmp>
key_type bk_lib::indexed_priority_queue< Cmp >::smaller_child ( size_type  n) const [inline, private]

Definition at line 193 of file indexed_priority_queue.h.

template<class Cmp>
template<class C >
void bk_lib::indexed_priority_queue< Cmp >::swapMem ( indexed_priority_queue< C > &  o) [inline]

Definition at line 101 of file indexed_priority_queue.h.

template<class Cmp>
key_type bk_lib::indexed_priority_queue< Cmp >::top ( ) const [inline]

Definition at line 111 of file indexed_priority_queue.h.

template<class Cmp>
void bk_lib::indexed_priority_queue< Cmp >::update ( key_type  k) [inline]

Definition at line 116 of file indexed_priority_queue.h.

template<class Cmp>
bool bk_lib::indexed_priority_queue< Cmp >::valid_key ( key_type  k) const [inline, private]

Definition at line 157 of file indexed_priority_queue.h.


Friends And Related Function Documentation

template<class Cmp>
friend class indexed_priority_queue [friend]

Definition at line 156 of file indexed_priority_queue.h.


Member Data Documentation

template<class Cmp>
compare_type bk_lib::indexed_priority_queue< Cmp >::compare_ [private]

Definition at line 162 of file indexed_priority_queue.h.

template<class Cmp>
index_container_type bk_lib::indexed_priority_queue< Cmp >::heap_ [private]

Definition at line 161 of file indexed_priority_queue.h.

template<class Cmp>
index_container_type bk_lib::indexed_priority_queue< Cmp >::indices_ [private]

Definition at line 160 of file indexed_priority_queue.h.


The documentation for this class was generated from the following file:


clasp
Author(s): Benjamin Kaufmann
autogenerated on Thu Aug 27 2015 12:41:40