3 //=============================================================================
5 * @file Reactor_Notification_Strategy.h
7 * $Id: Reactor_Notification_Strategy.h 80826 2008-03-04 14:51:23Z wotte $
11 //=============================================================================
12 #ifndef ACE_REACTOR_NOTIFICATION_STRATEGY_H
13 #define ACE_REACTOR_NOTIFICATION_STRATEGY_H
15 #include /**/ "ace/pre.h"
17 #include "ace/Notification_Strategy.h"
19 #if !defined (ACE_LACKS_PRAGMA_ONCE)
21 #endif /* ACE_LACKS_PRAGMA_ONCE */
23 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
26 * @class ACE_Reactor_Notification_Strategy
28 * @brief Used to notify an ACE_Reactor
30 * Integrates the ACE_Message_Queue notification into the
31 * <ACE_Reactor::notify> method.
33 class ACE_Export ACE_Reactor_Notification_Strategy
: public ACE_Notification_Strategy
36 ACE_Reactor_Notification_Strategy (ACE_Reactor
*reactor
,
37 ACE_Event_Handler
*eh
,
38 ACE_Reactor_Mask mask
);
41 virtual ~ACE_Reactor_Notification_Strategy (void);
43 virtual int notify (void);
45 virtual int notify (ACE_Event_Handler
*eh
, ACE_Reactor_Mask mask
);
48 ACE_Reactor
*reactor (void);
51 void reactor (ACE_Reactor
*r
);
55 ACE_Reactor
*reactor_
;
58 ACE_END_VERSIONED_NAMESPACE_DECL
60 #if defined (__ACE_INLINE__)
61 #include "ace/Reactor_Notification_Strategy.inl"
62 #endif /* __ACE_INLINE __ */
64 #include /**/ "ace/post.h"
66 #endif /*ACE_REACTOR_NOTIFICATION_STRATEGY_H */