00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file IORInterceptor_Adapter_Factory_Impl.h 00006 * 00007 * $Id: IORInterceptor_Adapter_Factory_Impl.h 79241 2007-08-07 12:42:30Z johnnyw $ 00008 * 00009 * @author George Edwards <g.edwards@vanderbilt.edu> 00010 */ 00011 //============================================================================= 00012 00013 00014 #ifndef TAO_IORINTERCEPTOR_ADAPTER_FACTORY_IMPL_H 00015 #define TAO_IORINTERCEPTOR_ADAPTER_FACTORY_IMPL_H 00016 00017 #include /**/ "ace/pre.h" 00018 00019 #include "tao/IORInterceptor/iorinterceptor_export.h" 00020 00021 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00022 # pragma once 00023 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00024 00025 #include "tao/IORInterceptor_Adapter_Factory.h" 00026 #include "ace/Service_Config.h" 00027 00028 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00029 00030 class TAO_IORInterceptor_Adapter; 00031 00032 /** 00033 * @class TAO_IORInterceptor_Adapter_Factory_Impl 00034 * 00035 * @brief TAO_IORInterceptor_Adapter_Factory_Impl. 00036 * 00037 * Class that creates instances of TAO_IORInterceptor_Adapter (one per ORB). 00038 * This is the derived class that contains the actual implementations. 00039 */ 00040 class TAO_IORInterceptor_Export TAO_IORInterceptor_Adapter_Factory_Impl 00041 : public TAO_IORInterceptor_Adapter_Factory 00042 { 00043 public: 00044 virtual ~TAO_IORInterceptor_Adapter_Factory_Impl (void); 00045 00046 virtual TAO_IORInterceptor_Adapter *create (void); 00047 00048 // Used to force the initialization of the ORB code. 00049 static int Initializer (void); 00050 }; 00051 00052 static int 00053 TAO_Requires_IORInterceptor_Initializer = 00054 TAO_IORInterceptor_Adapter_Factory_Impl::Initializer (); 00055 00056 TAO_END_VERSIONED_NAMESPACE_DECL 00057 00058 ACE_STATIC_SVC_DECLARE (TAO_IORInterceptor_Adapter_Factory_Impl) 00059 ACE_FACTORY_DECLARE (TAO_IORInterceptor, TAO_IORInterceptor_Adapter_Factory_Impl) 00060 00061 #define TAO_IORINTERCEPTOR_SAFE_INCLUDE 00062 #include "tao/IORInterceptor/IORInterceptorC.h" 00063 #undef TAO_IORINTERCEPTOR_SAFE_INCLUDE 00064 00065 #include /**/ "ace/post.h" 00066 00067 #endif /* TAO_IORINTERCEPTOR_ADAPTER_FACTORY_IMPL_H */