## NAME

ACE_Timer_Queue_Iterator_T - Generic interface for iterating over a subclass of `ACE_Timer_Queue`.

## SYNOPSIS

    #include <ace/Timer_Queue_T.h>

    template<class TYPE, class FUNCTOR, class ACE_LOCK>
    class ACE_Timer_Queue_Iterator_T
    {
      public:
        ACE_Timer_Queue_Iterator_T (void);
        virtual ~ACE_Timer_Queue_Iterator_T (void);
        virtual void first (void) = 0;
        virtual void next (void) = 0;
        virtual int isdone (void) = 0;
        virtual ACE_Timer_Node_T<TYPE> *item (void) = 0;
    };

## DESCRIPTION

This is a generic iterator that can be used to visit every node of a timer queue. Be aware that it isn't guaranteed that the transversal will be in order of timeout values.

## Initialization and termination methods.

    ACE_Timer_Queue_Iterator_T (void);

Constructor.

    virtual ~ACE_Timer_Queue_Iterator_T (void);

Destructor.

    virtual void first (void) = 0;

Positions the iterator at the earliest node in the Timer Queue

    virtual void next (void) = 0;

Positions the iterator at the next node in the Timer Queue

    virtual int isdone (void) = 0;

Returns true when there are no more nodes in the sequence

    virtual ACE_Timer_Node_T<TYPE> *item (void) = 0;

Returns the node at the current position in the sequence

## AUTHOR

Doug Schmidt, Irfan Pyarali, and Darrell Brunsch

## LIBRARY

ace