Merge pull request #1844 from jrw972/monterey
[ACE_TAO.git] / TAO / orbsvcs / IFR_Service / IFR_Service.h
blob6e3d62ee1020530691f611026a75ef11aea9225c
2 //=============================================================================
3 /**
4 * @file IFR_Service.h
6 * @author Jeff Parsons <parsons@cs.wustl.edu>
7 */
8 //=============================================================================
11 #ifndef IFR_SERVICE_H
12 #define IFR_SERVICE_H
14 #include "orbsvcs/IFRService/IFR_Service_Utils.h"
15 #include "tao/PortableServer/PortableServer.h"
16 #include "tao/ORB.h"
18 #if !defined (ACE_LACKS_PRAGMA_ONCE)
19 # pragma once
20 #endif /* ACE_LACKS_PRAGMA_ONCE */
22 /**
23 * @class IFR_Service
25 * A class that initializes, runs and shuts down
26 * the Interface Repository service.
28 class IFR_Service
30 public:
32 /// Default constructor.
33 IFR_Service (void);
35 /// Destructor
36 ~IFR_Service (void);
38 /// Initialize the IFR service.
39 int init (int argc,
40 ACE_TCHAR *argv[]);
42 /// Shut down the IFR Service.
43 int fini (void);
45 /// Run the IFR service.
46 int run (void);
48 /// Shutdown the Service.
49 void shutdown (void);
51 protected:
52 /// Reference to our ORB.
53 CORBA::ORB_var orb_;
55 /// IFR Server instance.
56 TAO_IFR_Server my_ifr_server_;
59 #endif /* IFR_SERVICE_H */