ACE
6.3.3
|
Iterates over an ACE_Timer_Wheel. More...
#include <Timer_Wheel_T.h>
Public Types | |
typedef ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK, TIME_POLICY > | Wheel |
typedef ACE_Timer_Node_T< TYPE > | Node |
Public Member Functions | |
ACE_Timer_Wheel_Iterator_T (Wheel &) | |
Constructor. More... | |
virtual | ~ACE_Timer_Wheel_Iterator_T (void) |
Destructor. More... | |
virtual void | first (void) |
Positions the iterator at the earliest node in the Timer Queue. More... | |
virtual void | next (void) |
Positions the iterator at the next node in the Timer Queue. More... | |
virtual bool | isdone (void) const |
Returns true when there are no more nodes in the sequence. More... | |
virtual ACE_Timer_Node_T< TYPE > * | item (void) |
Returns the node at the current position in the sequence. More... | |
Public Member Functions inherited from ACE_Timer_Queue_Iterator_T< TYPE > | |
ACE_Timer_Queue_Iterator_T (void) | |
Constructor. More... | |
virtual | ~ACE_Timer_Queue_Iterator_T (void) |
Destructor. More... | |
Protected Attributes | |
Wheel & | timer_wheel_ |
Pointer to the ACE_Timer_List that we are iterating over. More... | |
u_int | spoke_ |
Current position in the timing wheel. More... | |
ACE_Timer_Node_T< TYPE > * | current_node_ |
Pointer to the position in the the <pos_>th list. More... | |
Private Member Functions | |
void | goto_next (u_int start_spoke) |
Helper class for common functionality of next() and first() More... | |
Iterates over an ACE_Timer_Wheel.
This is a generic iterator that can be used to visit every node of a timer queue. Be aware that it doesn't traverse in the order of timeout values.
typedef ACE_Timer_Node_T<TYPE> ACE_Timer_Wheel_Iterator_T< TYPE, FUNCTOR, ACE_LOCK, TIME_POLICY >::Node |
typedef ACE_Timer_Wheel_T<TYPE, FUNCTOR, ACE_LOCK, TIME_POLICY> ACE_Timer_Wheel_Iterator_T< TYPE, FUNCTOR, ACE_LOCK, TIME_POLICY >::Wheel |
ACE_Timer_Wheel_Iterator_T< TYPE, FUNCTOR, ACE_LOCK, TIME_POLICY >::ACE_Timer_Wheel_Iterator_T | ( | Wheel & | wheel | ) |
Constructor.
Just initializes the iterator with a ACE_Timer_Wheel_T and then calls first() to initialize the rest of itself.
wheel | A reference for a timer queue to iterate over |
|
virtual |
Destructor.
Destructor, at this level does nothing.
|
virtual |
Positions the iterator at the earliest node in the Timer Queue.
Positions the iterator at the first position in the timing wheel that contains something. spoke_ will be set to the spoke position of this entry and current_node_ will point to the first entry in that spoke.
If the wheel is empty, spoke_ will be equal timer_wheel_.spoke_count_ and current_node_ would be 0.
Implements ACE_Timer_Queue_Iterator_T< TYPE >.
|
private |
|
virtual |
Returns true when there are no more nodes in the sequence.
Implements ACE_Timer_Queue_Iterator_T< TYPE >.
|
virtual |
Returns the node at the current position in the sequence.
Implements ACE_Timer_Queue_Iterator_T< TYPE >.
|
virtual |
Positions the iterator at the next node in the Timer Queue.
Positions the iterator at the next node.
Implements ACE_Timer_Queue_Iterator_T< TYPE >.
|
protected |
Pointer to the position in the the <pos_>th list.
|
protected |
Current position in the timing wheel.
|
protected |
Pointer to the ACE_Timer_List that we are iterating over.