00001 /* -*- C++ -*- */ 00002 00003 //============================================================================= 00004 /** 00005 * @file CSD_Framework_Loader.h 00006 * 00007 * $Id: CSD_Framework_Loader.h 87582 2009-11-16 16:04:12Z vzykov $ 00008 * 00009 * Header file for loading CSD framework service objects. 00010 * 00011 * @author Yan Dai (dai_y@ociweb.com) 00012 */ 00013 //============================================================================= 00014 00015 #ifndef TAO_CSD_FRAMEWORK_LOADER_H 00016 #define TAO_CSD_FRAMEWORK_LOADER_H 00017 #include /**/ "ace/pre.h" 00018 00019 #include "tao/CSD_Framework/CSD_FW_Export.h" 00020 00021 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00022 # pragma once 00023 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00024 00025 #include "tao/Versioned_Namespace.h" 00026 #include "ace/Service_Object.h" 00027 #include "ace/Service_Config.h" 00028 00029 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00030 00031 /** 00032 * @class TAO_CSD_Framework_Loader 00033 * 00034 * @brief TAO_CSD_Framework_Loader. 00035 * 00036 * This class acts as a facade for the CSD_Framework library to the 00037 * ORB. 00038 */ 00039 class TAO_CSD_FW_Export TAO_CSD_Framework_Loader : public ACE_Service_Object 00040 { 00041 public: 00042 /// Constructor. 00043 TAO_CSD_Framework_Loader (void); 00044 00045 /// Destructor. 00046 virtual ~TAO_CSD_Framework_Loader (void); 00047 00048 /// Used to force the initialization of the ORB code. 00049 static int static_init (void); 00050 00051 /// Initialize the PI_Server loader hooks. 00052 virtual int init (int argc, ACE_TCHAR* []); 00053 00054 private: 00055 /// Set to true after init is called. 00056 bool initialized_; 00057 }; 00058 00059 00060 ACE_STATIC_SVC_DECLARE_EXPORT (TAO_CSD_FW, TAO_CSD_Framework_Loader) 00061 ACE_FACTORY_DECLARE (TAO_CSD_FW, TAO_CSD_Framework_Loader) 00062 00063 TAO_END_VERSIONED_NAMESPACE_DECL 00064 00065 #include /**/ "ace/post.h" 00066 #endif /* TAO_CSD_FRAMEWORK_LOADER_H */