#include <ace/FlReactor.h>
class ACE_FlReactor : public ACE_Select_Reactor {
public:
ACE_FlReactor ( size_t size = DEFAULT_SIZE, int restart = 0, ACE_Sig_Handler * = 0 );
virtual ~ACE_FlReactor (void);
virtual long schedule_timer ( ACE_Event_Handler *handler, const void *arg, const ACE_Time_Value &delta_time, const ACE_Time_Value &interval );
virtual int reset_timer_interval ( long timer_id, const ACE_Time_Value &interval );
virtual int cancel_timer ( ACE_Event_Handler *handler, int dont_call_handle_close = 1 );
virtual int cancel_timer ( long timer_id, const void **arg = 0, int dont_call_handle_close = 1 );
protected:
virtual int register_handler_i ( ACE_HANDLE handle, ACE_Event_Handler *handler, ACE_Reactor_Mask mask );
virtual int register_handler_i ( const ACE_Handle_Set &handles, ACE_Event_Handler *handler, ACE_Reactor_Mask mask );
virtual int remove_handler_i ( ACE_HANDLE handle, ACE_Reactor_Mask mask );
virtual int remove_handler_i ( const ACE_Handle_Set &handles, ACE_Reactor_Mask );
virtual int wait_for_multiple_events ( ACE_Select_Reactor_Handle_Set &, ACE_Time_Value * );
private:
void reset_timeout (void);
static void fl_io_proc (int fd, void*);
static void fl_timeout_proc (void*);
ACE_FlReactor (const ACE_FlReactor &);
ACE_FlReactor &operator = (const ACE_FlReactor &);
};
ACE_FlReactor (
size_t size = DEFAULT_SIZE,
int restart = 0,
ACE_Sig_Handler * = 0
);
virtual ~ACE_FlReactor (void);
virtual long schedule_timer (
ACE_Event_Handler *handler,
const void *arg,
const ACE_Time_Value &delta_time,
const ACE_Time_Value &interval
);
virtual int reset_timer_interval (
long timer_id,
const ACE_Time_Value &interval
);
virtual int cancel_timer (
ACE_Event_Handler *handler,
int dont_call_handle_close = 1
);
virtual int cancel_timer (
long timer_id,
const void **arg = 0,
int dont_call_handle_close = 1
);
virtual int register_handler_i (
ACE_HANDLE handle,
ACE_Event_Handler *handler,
ACE_Reactor_Mask mask
);
handler
.
virtual int register_handler_i (
const ACE_Handle_Set &handles,
ACE_Event_Handler *handler,
ACE_Reactor_Mask mask
);
handlers
.
virtual int remove_handler_i (
ACE_HANDLE handle,
ACE_Reactor_Mask mask
);
handler
associated with this handle
.
virtual int remove_handler_i (
const ACE_Handle_Set &handles,
ACE_Reactor_Mask
);
handles
.
virtual int wait_for_multiple_events (
ACE_Select_Reactor_Handle_Set &,
ACE_Time_Value *
);
static void fl_io_proc (int fd, void*);
static void fl_timeout_proc (void*);
ACE_FlReactor (const ACE_FlReactor &);
ACE_FlReactor &operator = (const ACE_FlReactor &);
coryan@cs.wustl.edu
Based in part in the ACE_XtReactor implementation by:
Eric C. Newton's ecn@clark.net
,
Kirill Rybaltchenko Kirill.Rybaltchenko@cern.ch
, and
Douglas C. Schmidt schmidt@cs.wustl.edu