NAME
ACE_Timer_Hash_Iterator_T - Iterates over an ACE_Timer_Hash.
SYNOPSIS
#include <ace/Timer_Hash_T.h>
template<class TYPE, class FUNCTOR, class ACE_LOCK, class BUCKET>
class ACE_Timer_Hash_Iterator_T :
public ACE_Timer_Queue_Iterator_T <TYPE, FUNCTOR, ACE_LOCK>
{
public:
ACE_Timer_Hash_Iterator_T (
ACE_Timer_Hash_T<TYPE, FUNCTOR, ACE_LOCK, BUCKET> &
);
virtual void first (void);
virtual void next (void);
virtual int isdone (void);
virtual ACE_Timer_Node_T<TYPE> *item (void);
protected:
ACE_Timer_Hash_T<TYPE, FUNCTOR, ACE_LOCK, BUCKET> &timer_hash_;
size_t position_;
ACE_Timer_Queue_Iterator_T<TYPE, ACE_Timer_Hash_Upcall<TYPE, FUNCTOR, ACE_LOCK>, ACE_Null_Mutex> *iter_;
};
DESCRIPTION
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.
PUBLIC MEMBERS
ACE_Timer_Hash_Iterator_T (
ACE_Timer_Hash_T<TYPE, FUNCTOR, ACE_LOCK, BUCKET> &
);
Constructor.
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 int isdone (void);
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 MEMBERS
ACE_Timer_Hash_T<TYPE, FUNCTOR, ACE_LOCK, BUCKET> &timer_hash_;
Pointer to the ACE_Timer_Hash that we are iterating over.
size_t position_;
Current position in timer_hash_'s table
ACE_Timer_Queue_Iterator_T<TYPE, ACE_Timer_Hash_Upcall<TYPE, FUNCTOR, ACE_LOCK>, ACE_Null_Mutex> *iter_;
Current iterator used on position's bucket
AUTHOR
Darrell Brunsch [email protected]
LIBRARY
ace