3 //=============================================================================
5 * @file Monitor_Signal_Handler.h
7 * @author Ossama Othman <ossama@uci.edu>
9 //=============================================================================
12 #ifndef TAO_LB_MONITOR_SIGNAL_HANDLER_H
13 #define TAO_LB_MONITOR_SIGNAL_HANDLER_H
15 #include "Signal_Handler.h"
17 #if !defined (ACE_LACKS_PRAGMA_ONCE)
19 #endif /* ACE_LACKS_PRAGMA_ONCE */
21 #include "orbsvcs/CosLoadBalancingC.h"
25 * @class TAO_LB_Monitor_Signal_Handler
27 * @brief LoadMonitor-specific signal handler.
29 * This class simply builds on the TAO_LB_Signal_Handler class to add
30 * some LoadMonitor-specific cleanup.
32 class TAO_LB_Monitor_Signal_Handler
: public TAO_LB_Signal_Handler
36 TAO_LB_Monitor_Signal_Handler (
38 PortableServer::POA_ptr poa
,
39 CosLoadBalancing::LoadManager_ptr load_manager
,
40 const PortableGroup::Location
& location
);
43 /// Template method that initiates the cleanup process.
44 virtual int perform_cleanup (int signum
);
47 /// Reference to the LoadManager with which the LoadMonitor is
49 CosLoadBalancing::LoadManager_var load_manager_
;
51 /// Reference to the location the LoadMonitor resides at.
52 const PortableGroup::Location
& location_
;
56 #endif /* TAO_LB_MONITOR_SIGNAL_HANDLER_H */