ucommon::TimerQueue::event Class Reference

A timer event object that lives on a timer queue. More...

#include <timers.h>

Inheritance diagram for ucommon::TimerQueue::event:

Inheritance graph
[legend]
Collaboration diagram for ucommon::TimerQueue::event:

Collaboration graph
[legend]

Public Member Functions

void arm (timeout_t timeout)
 Arm event to trigger at specified timeout.
void attach (TimerQueue *queue)
 Attach event to a timer queue.
void detach (void)
 Detach event from a timer queue.
void disarm (void)
 Disarm event.
timeout_t get (void)
 Time remaining until expired.
TimerQueuelist (void)
 Get the timer queue we are attached to.
void update (void)
 Notify timer queue that the timer has been updated.
virtual ~event ()
 Detaches from queue when destroyed.

Protected Member Functions

 event (TimerQueue *queue, timeout_t expire)
 Construct an armed timer event object and attach to queue.
 event (timeout_t expire)
 Construct a timer event object and initially arm.
virtual void expired (void)=0
 Event method to call in derived class when timer expires.
virtual timeout_t timeout (void)
 Expected next timeout for the timer.

Friends

class TimerQueue

Detailed Description

A timer event object that lives on a timer queue.

Timer events are triggered through the timer queue's expire method. Timer events also modify the queue when they are changed, particularly to force re-evaluation of the expiration period. This class is not used by itself but rather as a base class for a timer event object.

Author:
David Sugar <dyfet@gnutelephony.org>

Definition at line 281 of file timers.h.


Constructor & Destructor Documentation

ucommon::TimerQueue::event::event ( timeout_t  expire  )  [protected]

Construct a timer event object and initially arm.

Parameters:
expire timer in specified milliseconds.

ucommon::TimerQueue::event::event ( TimerQueue queue,
timeout_t  expire 
) [protected]

Construct an armed timer event object and attach to queue.

Parameters:
queue to add event to.
expire timer in specified milliseconds.


Member Function Documentation

void ucommon::TimerQueue::event::arm ( timeout_t  timeout  ) 

Arm event to trigger at specified timeout.

Parameters:
timeout to expire and trigger.

void ucommon::TimerQueue::event::attach ( TimerQueue queue  ) 

Attach event to a timer queue.

Detaches from previous list if already attached elsewhere.

Parameters:
queue to attach to.

timeout_t ucommon::TimerQueue::event::get ( void   )  [inline]

Time remaining until expired.

Returns:
milliseconds until timer expires.

Reimplemented from ucommon::Timer.

Definition at line 344 of file timers.h.

TimerQueue* ucommon::TimerQueue::event::list ( void   )  [inline]

Get the timer queue we are attached to.

Returns:
timer queue or NULL if not attached.

Definition at line 356 of file timers.h.

virtual timeout_t ucommon::TimerQueue::event::timeout ( void   )  [protected, virtual]

Expected next timeout for the timer.

This may be overriden for strategy purposes when evaluted by timer queue's expire.

Returns:
milliseconds until timer next triggers.


The documentation for this class was generated from the following file:
Generated on 14 Aug 2013 for UCommon by  doxygen 1.4.7