14#ifndef PRIORITY_QUEUE_STLPQ_H
15#define PRIORITY_QUEUE_STLPQ_H
32template<
class T,
class Compare >
41 const T&
top ()
const;
51template<
class T,
class Compare>
56 trace(
"PriorityQueue_STLPQ::~PriorityQueue_STLPQ");
58 while ( m_queue.size () ) {
59 delete m_queue.top ();
64template<
class T,
class Compare>
69 trace(
"PriorityQueue_STLPQ::insert");
73template<
class T,
class Compare>
78 trace(
"PriorityQueue_STLPQ::pop");
85template<
class T,
class Compare>
90 trace(
"PriorityQueue_STLPQ::top");
91 return (
const T&) m_queue.top ();
103template<
class T,
class Compare>
108 trace(
"PriorityQueue_STLPQ::remove");
112 register int cnt = 0;
114 while (m_queue.size () > 0) {
115 t_ptr = m_queue.top ();
116 if (
t_ptr->getHandler ()->
id() ==
id_) {
127 list<Timer*>::iterator
i;
136template<
class T,
class Compare>
141 return m_queue.size ();
144template<
class T,
class Compare>
149 trace(
"PriorityQueue_STLPQ::dump");
153 DL((
TRACE,
"======TimerQueue start=======\n"));
154 while (m_queue.size () > 0) {
155 t_ptr = m_queue.top ();
159 DL((
TRACE,
"======TimerQueue end=========\n"));
160 list<Timer*>::iterator
i;
#define trace(s)
trace() is used to trace function call chain in C++ program.
#define DL(X)
A macro for writing debug message to the Logger.
Timer class represents tuple that is stored in TimerQueue.
A wrapper class to provide AutoPtr with reference semantics.
Class PriorityQueue_Impl.
priority_queue< T *, deque< T * >, Compare > m_queue
@ TRACE
Function call trace