3 //=============================================================================
5 * @file Reactor_Notification_Strategy.h
9 //=============================================================================
10 #ifndef ACE_REACTOR_NOTIFICATION_STRATEGY_H
11 #define ACE_REACTOR_NOTIFICATION_STRATEGY_H
13 #include /**/ "ace/pre.h"
15 #include "ace/Notification_Strategy.h"
17 #if !defined (ACE_LACKS_PRAGMA_ONCE)
19 #endif /* ACE_LACKS_PRAGMA_ONCE */
21 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
24 * @class ACE_Reactor_Notification_Strategy
26 * @brief Used to notify an ACE_Reactor
28 * Integrates the ACE_Message_Queue notification into the
29 * ACE_Reactor::notify() method.
31 class ACE_Export ACE_Reactor_Notification_Strategy
: public ACE_Notification_Strategy
34 ACE_Reactor_Notification_Strategy (ACE_Reactor
*reactor
,
35 ACE_Event_Handler
*eh
,
36 ACE_Reactor_Mask mask
);
38 /// Default destructor.
39 virtual ~ACE_Reactor_Notification_Strategy ();
41 virtual int notify ();
43 virtual int notify (ACE_Event_Handler
*eh
, ACE_Reactor_Mask mask
);
46 ACE_Reactor
*reactor ();
49 void reactor (ACE_Reactor
*r
);
53 ACE_Reactor
*reactor_
;
56 ACE_END_VERSIONED_NAMESPACE_DECL
58 #if defined (__ACE_INLINE__)
59 #include "ace/Reactor_Notification_Strategy.inl"
60 #endif /* __ACE_INLINE __ */
62 #include /**/ "ace/post.h"
64 #endif /*ACE_REACTOR_NOTIFICATION_STRATEGY_H */