00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file ImplicitActivationPolicy.h 00006 * 00007 * ImplicitActivationPolicy.h,v 1.5 2006/06/20 06:25:01 jwillemsen Exp 00008 * 00009 * @author Johnny Willemsen <jwillemsen@remedy.nl> 00010 */ 00011 //============================================================================= 00012 00013 #ifndef TAO_PORTABLESERVER_IMPLICITACTIVATIONPOLICY_H 00014 #define TAO_PORTABLESERVER_IMPLICITACTIVATIONPOLICY_H 00015 #include /**/ "ace/pre.h" 00016 00017 #include "tao/PortableServer/portableserver_export.h" 00018 00019 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00020 # pragma once 00021 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00022 00023 #include "tao/PortableServer/ImplicitActivationPolicyC.h" 00024 #include "tao/LocalObject.h" 00025 00026 // This is to remove "inherits via dominance" warnings from MSVC. 00027 // MSVC is being a little too paranoid. 00028 #if defined(_MSC_VER) 00029 #pragma warning(push) 00030 #pragma warning(disable:4250) 00031 #endif /* _MSC_VER */ 00032 00033 #if (TAO_HAS_MINIMUM_POA == 0) && !defined (CORBA_E_COMPACT) && !defined (CORBA_E_MICRO) 00034 00035 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00036 00037 namespace TAO 00038 { 00039 namespace Portable_Server 00040 { 00041 class TAO_PortableServer_Export ImplicitActivationPolicy 00042 : public virtual ::PortableServer::ImplicitActivationPolicy, 00043 public virtual TAO_Local_RefCounted_Object 00044 { 00045 public: 00046 ImplicitActivationPolicy (::PortableServer::ImplicitActivationPolicyValue value); 00047 00048 CORBA::Policy_ptr copy (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) 00049 ACE_THROW_SPEC ((CORBA::SystemException)); 00050 00051 void destroy (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) 00052 ACE_THROW_SPEC ((CORBA::SystemException)); 00053 00054 ::PortableServer::ImplicitActivationPolicyValue value (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) 00055 ACE_THROW_SPEC ((CORBA::SystemException)); 00056 00057 CORBA::PolicyType policy_type (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) 00058 ACE_THROW_SPEC ((CORBA::SystemException)); 00059 00060 /// Return the cached policy type for this policy. 00061 virtual TAO_Cached_Policy_Type _tao_cached_type (void) const; 00062 00063 /// Returns the scope at which this policy can be applied. See orbconf.h. 00064 virtual TAO_Policy_Scope _tao_scope (void) const; 00065 00066 private: 00067 ::PortableServer::ImplicitActivationPolicyValue value_; 00068 }; 00069 } 00070 } 00071 00072 TAO_END_VERSIONED_NAMESPACE_DECL 00073 00074 #endif /* TAO_HAS_MINIMUM_POA == 0 && !CORBA_E_COMPACT && !CORBA_E_MICRO */ 00075 00076 #if defined(_MSC_VER) 00077 #pragma warning(pop) 00078 #endif /* _MSC_VER */ 00079 00080 #include /**/ "ace/post.h" 00081 #endif /* TAO_PORTABLESERVER_IMPLICITACTIVATIONPOLICY_H */