#include <ace/Select_Reactor_Base.h>
class ACE_Select_Reactor_Impl : public ACE_Reactor_Impl {
public:enum{ DEFAULT_SIZE = ACE_DEFAULT_SELECT_REACTOR_SIZE };ACE_Select_Reactor_Impl ();friend class ACE_Select_Reactor_Notify;friend class ACE_Select_Reactor_Handler_Repository;protected:virtual int bit_ops ( ACE_HANDLE handle, ACE_Reactor_Mask mask, ACE_Select_Reactor_Handle_Set &wait_Set, int ops );virtual void renew (void) = 0;ACE_Select_Reactor_Handler_Repository handler_rep_;ACE_Select_Reactor_Handle_Set wait_set_;ACE_Select_Reactor_Handle_Set suspend_set_;ACE_Select_Reactor_Handle_Set ready_set_;ACE_Timer_Queue *timer_queue_;int delete_timer_queue_;ACE_Sig_Handler *signal_handler_;int delete_signal_handler_;ACE_Reactor_Notify *notify_handler_;int delete_notify_handler_;int restart_;int requeue_position_;int initialized_;ACE_thread_t owner_;int state_changed_;int supress_notify_renew (void);void supress_notify_renew (int sr);private:int supress_renew_;ACE_Select_Reactor_Impl (const ACE_Select_Reactor_Impl &);ACE_Select_Reactor_Impl &operator = ( const ACE_Select_Reactor_Impl & );};
ACE_Select_Reactor_Impl ();
friend class ACE_Select_Reactor_Notify;
friend class ACE_Select_Reactor_Handler_Repository;
virtual int bit_ops (
ACE_HANDLE handle,
ACE_Reactor_Mask mask,
ACE_Select_Reactor_Handle_Set &wait_Set,
int ops
);
wait_set_ mask and ready_set_ mask.
virtual void renew (void) = 0;
requeue_position_.
ACE_Select_Reactor_Handler_Repository handler_rep_;
ACE_HANDLEs to ACE_Event_Handler *'s.
ACE_Select_Reactor_Handle_Set wait_set_;
ACE_Select_Reactor_Handle_Set suspend_set_;
ACE_Select_Reactor_Handle_Set ready_set_;
ACE_Timer_Queue *timer_queue_;
int delete_timer_queue_;
ACE_Sig_Handler *signal_handler_;
int delete_signal_handler_;
ACE_Reactor_Notify *notify_handler_;
ACE_Select_Reactor if it's
sleeping.
int delete_notify_handler_;
int restart_;
int requeue_position_;
int initialized_;
ACE_thread_t owner_;
int state_changed_;
ACE_Event_Handlers, else false. This is used to determine
whether we need to make another trip through the
Select_Reactor's wait_for_multiple_events loop.
int supress_notify_renew (void);
void supress_notify_renew (int sr);
int supress_renew_;
ACE_Select_Reactor_Impl (const ACE_Select_Reactor_Impl &);
ACE_Select_Reactor_Impl &operator = (const ACE_Select_Reactor_Impl &);