ReactOS  0.4.14-dev-323-g6fe6a88
priority_queue< _Tp, _Sequence, _Compare > Class Template Reference

#include <_queue.h>

Public Types

typedef _Sequence::value_type value_type
 
typedef _Sequence::size_type size_type
 
typedef _Sequence container_type
 
typedef _Sequence::reference reference
 
typedef _Sequence::const_reference const_reference
 

Public Member Functions

 priority_queue ()
 
 priority_queue (const _Compare &__x)
 
 priority_queue (const _Compare &__x, const _Sequence &__s)
 
 priority_queue (__move_source< _Self > src)
 
 priority_queue (const value_type *__first, const value_type *__last)
 
 priority_queue (const value_type *__first, const value_type *__last, const _Compare &__x)
 
 priority_queue (const value_type *__first, const value_type *__last, const _Compare &__x, const _Sequence &__c)
 
bool empty () const
 
size_type size () const
 
const_reference top () const
 
void push (const value_type &__x)
 
void pop ()
 

Protected Attributes

_Sequence c
 
_Compare comp
 

Private Types

typedef priority_queue< _Tp, _Sequence, _Compare > _Self
 

Detailed Description

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
class priority_queue< _Tp, _Sequence, _Compare >

Definition at line 142 of file _queue.h.

Member Typedef Documentation

◆ _Self

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
typedef priority_queue<_Tp, _Sequence, _Compare> priority_queue< _Tp, _Sequence, _Compare >::_Self
private

Definition at line 156 of file _queue.h.

◆ const_reference

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
typedef _Sequence::const_reference priority_queue< _Tp, _Sequence, _Compare >::const_reference

Definition at line 164 of file _queue.h.

◆ container_type

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
typedef _Sequence priority_queue< _Tp, _Sequence, _Compare >::container_type

Definition at line 161 of file _queue.h.

◆ reference

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
typedef _Sequence::reference priority_queue< _Tp, _Sequence, _Compare >::reference

Definition at line 163 of file _queue.h.

◆ size_type

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
typedef _Sequence::size_type priority_queue< _Tp, _Sequence, _Compare >::size_type

Definition at line 160 of file _queue.h.

◆ value_type

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
typedef _Sequence::value_type priority_queue< _Tp, _Sequence, _Compare >::value_type

Definition at line 159 of file _queue.h.

Constructor & Destructor Documentation

◆ priority_queue() [1/7]

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
priority_queue< _Tp, _Sequence, _Compare >::priority_queue ( )
inline

Definition at line 170 of file _queue.h.

170 : c() {}
_Sequence c
Definition: _queue.h:167

◆ priority_queue() [2/7]

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
priority_queue< _Tp, _Sequence, _Compare >::priority_queue ( const _Compare &  __x)
inlineexplicit

Definition at line 171 of file _queue.h.

171 : c(), comp(__x) {}
_Compare comp
Definition: _queue.h:168
_Sequence c
Definition: _queue.h:167

◆ priority_queue() [3/7]

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
priority_queue< _Tp, _Sequence, _Compare >::priority_queue ( const _Compare &  __x,
const _Sequence &  __s 
)
inline

Definition at line 172 of file _queue.h.

173  : c(__s), comp(__x)
174  { make_heap(c.begin(), c.end(), comp); }
_Compare comp
Definition: _queue.h:168
_Sequence c
Definition: _queue.h:167
const GLubyte * c
Definition: glext.h:8905
void make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
Definition: _heap.c:206

◆ priority_queue() [4/7]

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
priority_queue< _Tp, _Sequence, _Compare >::priority_queue ( __move_source< _Self src)
inline

Definition at line 177 of file _queue.h.

178  : c(_STLP_PRIV _AsMoveSource(src.get().c)),
179  comp(_STLP_PRIV _AsMoveSource(src.get().comp)) {}
_Compare comp
Definition: _queue.h:168
_Sequence c
Definition: _queue.h:167
#define _STLP_PRIV
Definition: _dm.h:70
_STLP_TYPENAME_ON_RETURN_TYPE _MoveSourceTraits< _Tp >::_Type _AsMoveSource(_Tp &src)
GLenum src
Definition: glext.h:6340

◆ priority_queue() [5/7]

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
priority_queue< _Tp, _Sequence, _Compare >::priority_queue ( const value_type __first,
const value_type __last 
)
inline

Definition at line 203 of file _queue.h.

204  : c(__first, __last) { make_heap(c.begin(), c.end(), comp); }
_Compare comp
Definition: _queue.h:168
_Sequence c
Definition: _queue.h:167
_STLP_INLINE_LOOP _InputIter __last
Definition: _algo.h:68
const GLubyte * c
Definition: glext.h:8905
void make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
Definition: _heap.c:206

◆ priority_queue() [6/7]

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
priority_queue< _Tp, _Sequence, _Compare >::priority_queue ( const value_type __first,
const value_type __last,
const _Compare &  __x 
)
inline

Definition at line 206 of file _queue.h.

208  : c(__first, __last), comp(__x)
209  { make_heap(c.begin(), c.end(), comp); }
_Compare comp
Definition: _queue.h:168
_Sequence c
Definition: _queue.h:167
_STLP_INLINE_LOOP _InputIter __last
Definition: _algo.h:68
const GLubyte * c
Definition: glext.h:8905
void make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
Definition: _heap.c:206

◆ priority_queue() [7/7]

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
priority_queue< _Tp, _Sequence, _Compare >::priority_queue ( const value_type __first,
const value_type __last,
const _Compare &  __x,
const _Sequence &  __c 
)
inline

Definition at line 211 of file _queue.h.

213  : c(__c), comp(__x)
214  {
215  c.insert(c.end(), __first, __last);
216  make_heap(c.begin(), c.end(), comp);
217  }
_Compare comp
Definition: _queue.h:168
_Sequence c
Definition: _queue.h:167
#define __c
Definition: schilyio.h:209
_STLP_INLINE_LOOP _InputIter __last
Definition: _algo.h:68
const GLubyte * c
Definition: glext.h:8905
void make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
Definition: _heap.c:206

Member Function Documentation

◆ empty()

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
bool priority_queue< _Tp, _Sequence, _Compare >::empty ( ) const
inline

Definition at line 220 of file _queue.h.

220 { return c.empty(); }
const GLubyte * c
Definition: glext.h:8905

◆ pop()

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
void priority_queue< _Tp, _Sequence, _Compare >::pop ( )
inline

Definition at line 230 of file _queue.h.

230  {
231  _STLP_TRY {
232  pop_heap(c.begin(), c.end(), comp);
233  c.pop_back();
234  }
235  _STLP_UNWIND(c.clear())
236  }
_Compare comp
Definition: _queue.h:168
#define _STLP_UNWIND(action)
Definition: features.h:824
void pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
Definition: _heap.c:138
const GLubyte * c
Definition: glext.h:8905
#define _STLP_TRY
Definition: features.h:817

◆ push()

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
void priority_queue< _Tp, _Sequence, _Compare >::push ( const value_type __x)
inline

Definition at line 223 of file _queue.h.

223  {
224  _STLP_TRY {
225  c.push_back(__x);
226  push_heap(c.begin(), c.end(), comp);
227  }
228  _STLP_UNWIND(c.clear())
229  }
_Compare comp
Definition: _queue.h:168
#define _STLP_UNWIND(action)
Definition: features.h:824
void push_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
Definition: _heap.c:65
const GLubyte * c
Definition: glext.h:8905
#define _STLP_TRY
Definition: features.h:817

◆ size()

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
size_type priority_queue< _Tp, _Sequence, _Compare >::size ( ) const
inline

Definition at line 221 of file _queue.h.

221 { return c.size(); }
const GLubyte * c
Definition: glext.h:8905

◆ top()

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
const_reference priority_queue< _Tp, _Sequence, _Compare >::top ( ) const
inline

Definition at line 222 of file _queue.h.

222 { return c.front(); }
const GLubyte * c
Definition: glext.h:8905

Member Data Documentation

◆ c

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
_Sequence priority_queue< _Tp, _Sequence, _Compare >::c
protected

Definition at line 167 of file _queue.h.

◆ comp

template<class _Tp, class _Sequence = vector<_Tp>, class _Compare = less<_STLP_HEADER_TYPENAME _Sequence::value_type>>
_Compare priority_queue< _Tp, _Sequence, _Compare >::comp
protected

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