8 #ifndef OPENDDS_DCPS_EVENT_DISPATCHER_H 9 #define OPENDDS_DCPS_EVENT_DISPATCHER_H 31 virtual void handle_event() = 0;
34 virtual void handle_error();
38 virtual void handle_cancel();
48 template <
typename Delegate>
51 typedef void (Delegate::*PMF)();
62 ((*handle).*function_)();
75 template <
typename Delegate>
117 virtual void shutdown(
bool immediate =
false) = 0;
124 virtual bool dispatch(EventBase_rch event) = 0;
139 virtual size_t cancel(
long id) = 0;
149 #endif // OPENDDS_DCPS_EVENT_DISPATCHER_H
PmfNowEvent(RcHandle< Delegate > delegate, PMF function)
RcHandle< EventDispatcher > EventDispatcher_rch
#define OpenDDS_Dcps_Export
RcHandle< EventBase > EventBase_rch
static TimePoint_T< MonotonicClock > now()
WeakRcHandle< Delegate > delegate_
void handle_event()
Called when the event is dispatched by an EventDispatcher.
void handle_event()
Called when the event is dispatched by an EventDispatcher.
WeakRcHandle< Delegate > delegate_
#define OPENDDS_END_VERSIONED_NAMESPACE_DECL
int shutdown(ACE_HANDLE handle, int how)
PmfEvent(RcHandle< Delegate > delegate, PMF function)
The Internal API and Implementation of OpenDDS.