=default for generated implementation copy ctor
[ACE_TAO.git] / TAO / tao / PI / DLL_Resident_ORB_Initializer.h
blobb6ede5251ec24a2507a8aa85158ba4405ffa887f
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file DLL_Resident_ORB_Initializer.h
7 * @author Dale Wilson <wilsond@ociweb.com>
8 */
9 //=============================================================================
12 #ifndef PI_DLL_RESIDENT_ORB_INITIALIZER_H
13 #define PI_DLL_RESIDENT_ORB_INITIALIZER_H
15 #include /**/ "ace/pre.h"
16 #include "ace/DLL.h"
18 #if !defined (ACE_LACKS_PRAGMA_ONCE)
19 # 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.
28 #if defined(_MSC_VER)
29 #pragma warning(push)
30 #pragma warning(disable:4250)
31 #endif /* _MSC_VER */
33 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
35 namespace PortableInterceptor
37 /**
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
47 public:
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);
57 private:
58 PortableInterceptor::ORBInitializer_var initializer_;
59 #if 1 // to re-inject the CSD vs SSLIOP bug, make this a zero
60 ACE_DLL dll_;
61 #else // CSD vs SSLIOP
62 const ACE_TCHAR * dll_;
63 #endif // CSD vs SSLIOP
66 TAO_END_VERSIONED_NAMESPACE_DECL
68 #if defined(_MSC_VER)
69 #pragma warning(pop)
70 #endif /* _MSC_VER */
72 #include /**/ "ace/post.h"
74 #endif /* PI_DLL_RESIDENT_ORB_INITIALIZER_H */