diff options
Diffstat (limited to 'ACE/examples/APG/Timers/PTimerDispatcher.h')
-rw-r--r-- | ACE/examples/APG/Timers/PTimerDispatcher.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/ACE/examples/APG/Timers/PTimerDispatcher.h b/ACE/examples/APG/Timers/PTimerDispatcher.h new file mode 100644 index 00000000000..8a530f41709 --- /dev/null +++ b/ACE/examples/APG/Timers/PTimerDispatcher.h @@ -0,0 +1,39 @@ +/* -*- C++ -*- */ +// $Id$ + +#if !defined(PTIMER_DISPATCHER_H) +#define PTIMER_DISPATCHER_H + +#include "ace/Singleton.h" +#include "ace/Synch.h" // needed for ACE_Event + +#include "Upcall.h" +class PCB; + +class PTimer_Dispatcher +{ +public: + void wait_for_event (void); + + long schedule (PCB *cb, + void *arg, + const ACE_Time_Value &abs_time, + const ACE_Time_Value &interval); + + int cancel (PCB *cb, + int dont_call_handle_close = 1); + + int reset_interval (long timer_id, + const ACE_Time_Value &interval); + + void set (PTimerQueue *timer_queue); + +private: + PTimerQueue *timer_queue_; + ACE_Event timer_; +}; + +typedef ACE_Singleton<PTimer_Dispatcher, ACE_Null_Mutex> PTimer; + +#endif /*TIMER_DISPATCHER_H*/ + |