Merge pull request #1844 from jrw972/monterey
[ACE_TAO.git] / TAO / tests / Portable_Interceptors / PICurrent / ClientORBInitializer.h
blobd915986215de34c5932221c545bda01e2a6aebbf
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file ClientORBInitializer.h
7 * @author Ossama Othman <ossama@uci.edu>
8 */
9 //=============================================================================
11 #ifndef CLIENT_ORB_INITIALIZER_H
12 #define CLIENT_ORB_INITIALIZER_H
14 #include "ace/config-all.h"
16 #if !defined (ACE_LACKS_PRAGMA_ONCE)
17 # pragma once
18 #endif /* ACE_LACKS_PRAGMA_ONCE */
20 #include "tao/PI/PI.h"
21 #include "tao/LocalObject.h"
23 #if defined(_MSC_VER)
24 #pragma warning(push)
25 #pragma warning(disable:4250)
26 #endif /* _MSC_VER */
29 // Test's SlotId made global for ease of implementation.
30 // It is initialized to a large number to make it obvious when the
31 // SlotId is invalid.
33 // Don't do this if you have more than one ORB in your application or
34 // if thread-safety is an issue!!!
35 extern PortableInterceptor::SlotId slot_id;
38 /**
39 * @class ClientORBInitializer
41 * @brief Simple concrete ORB initializer.
43 * This is a test ORB initializer that registers an
44 * ClientRequestInterceptor for this test.
46 class ClientORBInitializer :
47 public virtual PortableInterceptor::ORBInitializer,
48 public virtual ::CORBA::LocalObject
50 public:
52 /**
53 * @name Methods Required by the ORBInitializer Interface
55 * These are methods that must be implemented since they are pure
56 * virtual in the abstract base class. They are the canonical
57 * methods required for all ORB initializers.
59 //@{
60 /// The pre-initialization hook.
61 virtual void pre_init (
62 PortableInterceptor::ORBInitInfo_ptr info);
64 /// The post-initialization hook.
65 virtual void post_init (
66 PortableInterceptor::ORBInitInfo_ptr info);
67 //@}
71 #if defined(_MSC_VER)
72 #pragma warning(pop)
73 #endif /* _MSC_VER */
75 #endif /* CLIENT_ORB_INITIALIZER_H */