3 //=============================================================================
5 * @file Trading_Service.h
7 * @author Seth Widoff <sbw1@cs.wustl.edu>
9 //=============================================================================
12 #ifndef _TRADING_SERVICE_H
13 #define _TRADING_SERVICE_H
15 #include "ace/Auto_Ptr.h"
16 #include "ace/Sig_Handler.h"
18 #if !defined (ACE_LACKS_PRAGMA_ONCE)
20 #endif /* ACE_LACKS_PRAGMA_ONCE */
22 #include "orbsvcs/IOR_Multicast.h"
23 #include "orbsvcs/Trader/Trader.h"
24 #include "orbsvcs/Trader/Service_Type_Repository.h"
25 #include "orbsvcs/Trader/Trading_Loader.h"
27 class Trading_Service
;
30 * @class Trading_Shutdown
32 * @brief A class that shutsdown a Trading Service instance.
34 class Trading_Shutdown
: public ACE_Event_Handler
38 Trading_Shutdown (Trading_Service
& trader
);
41 virtual int handle_signal (int,
46 Trading_Service
&trader_
;
47 ACE_Sig_Handler shutdown_
;
51 * @class Trading_Service
53 * @brief A class that initializes a Trading Service instance.
59 /// Default constructor.
60 Trading_Service (void);
63 ~Trading_Service (void);
65 /// Initialize the Trading Service with arguments.
69 /// Run the Trading Service.
76 /// Pointer to the linked trader.
77 auto_ptr
<TAO_Trader_Factory::TAO_TRADER
> trader_
;
79 /// Instance of TAO_Trading_Laoder
80 TAO_Trading_Loader trading_loader_
;
83 #endif /* _TRADING_SERVICE_H */