Iterates over an ACE_Timer_Heap_T. More...
#include <Timer_Heap_T.h>
Public Member Functions | |
ACE_Timer_Heap_Iterator_T (ACE_Timer_Heap_T< TYPE, FUNCTOR, ACE_LOCK > &) | |
Constructor. | |
~ACE_Timer_Heap_Iterator_T (void) | |
Destructor. | |
virtual void | first (void) |
Positions the iterator at the earliest node in the Timer Queue. | |
virtual void | next (void) |
Positions the iterator at the next node in the Timer Queue. | |
virtual bool | isdone (void) const |
Returns true when there are no more nodes in the sequence. | |
virtual ACE_Timer_Node_T< TYPE > * | item (void) |
Returns the node at the current position in the sequence. | |
Protected Attributes | |
ACE_Timer_Heap_T< TYPE, FUNCTOR, ACE_LOCK > & | timer_heap_ |
Pointer to the ACE_Timer_Heap that we are iterating over. | |
size_t | position_ |
Position in the array where the iterator is at. |
Iterates over an ACE_Timer_Heap_T.
This is a generic iterator that can be used to visit every node of a timer queue. Be aware that it doesn't transverse in the order of timeout values.
Definition at line 42 of file Timer_Heap_T.h.
ACE_Timer_Heap_Iterator_T< TYPE, FUNCTOR, ACE_LOCK >::ACE_Timer_Heap_Iterator_T | ( | ACE_Timer_Heap_T< TYPE, FUNCTOR, ACE_LOCK > & | heap | ) |
Constructor.
Definition at line 43 of file Timer_Heap_T.cpp.
: timer_heap_ (heap) { ACE_TRACE ("ACE_Timer_Heap_Iterator_T::ACE_Timer_Heap_Iterator"); this->first (); }
ACE_Timer_Heap_Iterator_T< TYPE, FUNCTOR, ACE_LOCK >::~ACE_Timer_Heap_Iterator_T | ( | void | ) |
void ACE_Timer_Heap_Iterator_T< TYPE, FUNCTOR, ACE_LOCK >::first | ( | void | ) | [virtual] |
Positions the iterator at the earliest node in the Timer Queue.
Implements ACE_Timer_Queue_Iterator_T< TYPE, FUNCTOR, ACE_LOCK >.
Definition at line 60 of file Timer_Heap_T.cpp.
{ this->position_ = 0; }
bool ACE_Timer_Heap_Iterator_T< TYPE, FUNCTOR, ACE_LOCK >::isdone | ( | void | ) | const [virtual] |
Returns true when there are no more nodes in the sequence.
Implements ACE_Timer_Queue_Iterator_T< TYPE, FUNCTOR, ACE_LOCK >.
Definition at line 78 of file Timer_Heap_T.cpp.
{ return this->position_ == this->timer_heap_.cur_size_; }
ACE_Timer_Node_T< TYPE > * ACE_Timer_Heap_Iterator_T< TYPE, FUNCTOR, ACE_LOCK >::item | ( | void | ) | [virtual] |
Returns the node at the current position in the sequence.
Implements ACE_Timer_Queue_Iterator_T< TYPE, FUNCTOR, ACE_LOCK >.
Definition at line 86 of file Timer_Heap_T.cpp.
{ if (this->position_ != this->timer_heap_.cur_size_) return this->timer_heap_.heap_[this->position_]; return 0; }
void ACE_Timer_Heap_Iterator_T< TYPE, FUNCTOR, ACE_LOCK >::next | ( | void | ) | [virtual] |
Positions the iterator at the next node in the Timer Queue.
Implements ACE_Timer_Queue_Iterator_T< TYPE, FUNCTOR, ACE_LOCK >.
Definition at line 69 of file Timer_Heap_T.cpp.
{ if (this->position_ != this->timer_heap_.cur_size_) ++this->position_; }
size_t ACE_Timer_Heap_Iterator_T< TYPE, FUNCTOR, ACE_LOCK >::position_ [protected] |
Position in the array where the iterator is at.
Definition at line 68 of file Timer_Heap_T.h.
ACE_Timer_Heap_T<TYPE, FUNCTOR, ACE_LOCK>& ACE_Timer_Heap_Iterator_T< TYPE, FUNCTOR, ACE_LOCK >::timer_heap_ [protected] |
Pointer to the ACE_Timer_Heap that we are iterating over.
Definition at line 65 of file Timer_Heap_T.h.