Merge pull request #2309 from mitza-oci/warnings
[ACE_TAO.git] / TAO / orbsvcs / performance-tests / LoadBalancing / LBPerf / RPS / ORBInitializer.h
blobe8c7dfba851193f6fbb36a1eb086809243cc09d4
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file ORBInitializer.h
7 * @author Ossama Othman <ossama@dre.vanderbilt.edu>
8 */
9 //=============================================================================
11 #ifndef ORB_INITIALIZER_H
12 #define ORB_INITIALIZER_H
14 #include /**/ "ace/pre.h"
16 #include "orbsvcs/LoadBalancing/LB_LoadAlert.h"
18 #if !defined (ACE_LACKS_PRAGMA_ONCE)
19 # pragma once
20 #endif /* ACE_LACKS_PRAGMA_ONCE */
22 #include "tao/LocalObject.h"
23 #include "tao/PI/PI.h"
25 // This is to remove "inherits via dominance" warnings from MSVC.
26 // MSVC is being a little too paranoid.
27 #if defined(_MSC_VER)
28 #pragma warning(push)
29 #pragma warning(disable:4250)
30 #endif /* _MSC_VER */
32 class ServerRequestInterceptor;
34 /**
35 * @class ORBInitializer
37 * @brief ORBInitializer
39 * ORBInitializer
41 class ORBInitializer
42 : public virtual PortableInterceptor::ORBInitializer,
43 public virtual ::CORBA::LocalObject
45 public:
46 /// Constructor.
47 ORBInitializer ();
49 /**
50 * @name PortableInterceptor::ORBInitializer Methods
52 * Methods required by the PortableInterceptor::ORBInitializer
53 * interface.
55 //@{
56 virtual void pre_init (PortableInterceptor::ORBInitInfo_ptr info);
58 virtual void post_init (PortableInterceptor::ORBInitInfo_ptr info);
59 //@}
61 /// Return a reference to the LoadAlert object.
62 TAO_LB_LoadAlert & load_alert ();
64 ServerRequestInterceptor * interceptor () const;
66 private:
67 /// The CosLoadBalancing::LoadAlert servant to be used at this
68 /// location.
69 /**
70 * This is the servant supplied by TAO's Load Balancer. It is
71 * used out of convencience.
73 TAO_LB_LoadAlert load_alert_;
75 /// Interceptor that counts requests.
76 ServerRequestInterceptor * interceptor_;
80 #if defined(_MSC_VER)
81 #pragma warning(pop)
82 #endif /* _MSC_VER */
84 #include /**/ "ace/post.h"
86 #endif /* ORB_INITIALIZER_H */