IFR_Service.h

Go to the documentation of this file.
00001 // $Id: IFR_Service.h 76589 2007-01-25 18:04:11Z elliott_c $
00002 
00003 // ========================================================================
00004 //
00005 // = LIBRARY
00006 //    orbsvcs/IFR_Service
00007 //
00008 // = FILENAME
00009 //    IFR_Service.h
00010 //
00011 // = AUTHOR
00012 //    Jeff Parsons <parsons@cs.wustl.edu>
00013 //
00014 // =======================================================================
00015 
00016 #ifndef IFR_SERVICE_H
00017 #define IFR_SERVICE_H
00018 
00019 #include "orbsvcs/IFRService/IFR_Service_Utils.h"
00020 #include "tao/PortableServer/PortableServer.h"
00021 #include "tao/ORB.h"
00022 
00023 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00024 # pragma once
00025 #endif /* ACE_LACKS_PRAGMA_ONCE */
00026 
00027 /**
00028  * @class IFR_Service
00029  *
00030  * A class that initializes, runs and shuts down
00031  * the Interface Repository service.
00032  */
00033 class IFR_Service
00034 {
00035 public:
00036 
00037   /// Default constructor.
00038   IFR_Service (void);
00039 
00040   /// Destructor
00041   ~IFR_Service (void);
00042 
00043   /// Initialize the IFR service.
00044   int init (int argc,
00045             char *argv[]);
00046 
00047   /// Shut down the IFR Service.
00048   int fini (void);
00049 
00050   /// Run the IFR service.
00051   int run (void);
00052 
00053 protected:
00054 
00055   /// Reference to our ORB.
00056   CORBA::ORB_var orb_;
00057 
00058   /// Root POA reference.
00059   PortableServer::POA_var root_poa_;
00060 
00061   /// IFR Server instance.
00062   TAO_IFR_Server my_ifr_server_;
00063 };
00064 
00065 #endif /* IFR_SERVICE_H */

Generated on Sun Jan 27 16:31:52 2008 for TAO_IFR by doxygen 1.3.6