Merge pull request #2309 from mitza-oci/warnings
[ACE_TAO.git] / TAO / tao / PortableServer / IdUniquenessPolicy.h
blob8793a19f90bd35d1cf9a16eba1df9c5ddc40463b
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file IdUniquenessPolicy.h
7 * @author Johnny Willemsen <jwillemsen@remedy.nl>
8 */
9 //=============================================================================
11 #ifndef TAO_PORTABLESERVER_IDUNIQUENESSTPOLICY_H
12 #define TAO_PORTABLESERVER_IDUNIQUENESSTPOLICY_H
13 #include /**/ "ace/pre.h"
15 #include "tao/PortableServer/portableserver_export.h"
17 #if !defined (ACE_LACKS_PRAGMA_ONCE)
18 # pragma once
19 #endif /* ACE_LACKS_PRAGMA_ONCE */
21 #include "tao/PortableServer/IdUniquenessPolicyC.h"
22 #include "tao/LocalObject.h"
24 // This is to remove "inherits via dominance" warnings from MSVC.
25 // MSVC is being a little too paranoid.
26 #if defined(_MSC_VER)
27 #pragma warning(push)
28 #pragma warning(disable:4250)
29 #endif /* _MSC_VER */
31 #if !defined (CORBA_E_MICRO)
33 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
35 namespace TAO
37 namespace Portable_Server
39 class TAO_PortableServer_Export IdUniquenessPolicy
40 : public virtual ::PortableServer::IdUniquenessPolicy,
41 public virtual ::CORBA::LocalObject
43 public:
44 IdUniquenessPolicy (::PortableServer::IdUniquenessPolicyValue value);
46 CORBA::Policy_ptr copy () override;
48 void destroy () override;
50 ::PortableServer::IdUniquenessPolicyValue value () override;
52 CORBA::PolicyType policy_type () override;
54 /// Return the cached policy type for this policy.
55 TAO_Cached_Policy_Type _tao_cached_type () const override;
57 /// Returns the scope at which this policy can be applied. See orbconf.h.
58 TAO_Policy_Scope _tao_scope () const override;
60 private:
61 ::PortableServer::IdUniquenessPolicyValue value_;
66 TAO_END_VERSIONED_NAMESPACE_DECL
68 #endif
70 #if defined(_MSC_VER)
71 #pragma warning(pop)
72 #endif /* _MSC_VER */
74 #include /**/ "ace/post.h"
75 #endif /* TAO_PORTABLESERVER_IDUNIQUENESSTPOLICY_H */