3 //=============================================================================
5 * @file DLL_Resident_ORB_Initializer.h
7 * @author Dale Wilson <wilsond@ociweb.com>
9 //=============================================================================
12 #ifndef PI_DLL_RESIDENT_ORB_INITIALIZER_H
13 #define PI_DLL_RESIDENT_ORB_INITIALIZER_H
15 #include /**/ "ace/pre.h"
18 #if !defined (ACE_LACKS_PRAGMA_ONCE)
20 #endif /* ACE_LACKS_PRAGMA_ONCE */
22 #include "tao/PI/PI.h"
23 #include "tao/LocalObject.h"
24 //#include "tao/PI/ORBInitializerC.h"
26 // This is to remove "inherits via dominance" warnings from MSVC.
27 // MSVC is being a little too paranoid.
30 #pragma warning(disable:4250)
33 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
35 namespace PortableInterceptor
38 * @class DLL_Resident_ORB_Initializer
40 * Decorator for an ORBInitializer implemented in a DLL
42 * Ensures that the DLL stays loaded while the ORBInitializer exists.
44 class TAO_PI_Export DLL_Resident_ORB_Initializer
45 : public virtual PortableInterceptor::ORBInitializer
48 DLL_Resident_ORB_Initializer (
49 PortableInterceptor::ORBInitializer_ptr initializer
,
50 const ACE_TCHAR
* dll_name
);
51 virtual ~DLL_Resident_ORB_Initializer ();
53 virtual void pre_init (::PortableInterceptor::ORBInitInfo_ptr info
);
55 virtual void post_init (::PortableInterceptor::ORBInitInfo_ptr info
);
58 PortableInterceptor::ORBInitializer_var initializer_
;
59 #if 1 // to re-inject the CSD vs SSLIOP bug, make this a zero
61 #else // CSD vs SSLIOP
62 const ACE_TCHAR
* dll_
;
63 #endif // CSD vs SSLIOP
66 TAO_END_VERSIONED_NAMESPACE_DECL
72 #include /**/ "ace/post.h"
74 #endif /* PI_DLL_RESIDENT_ORB_INITIALIZER_H */