ThreadPolicy.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 //=============================================================================
00004 /**
00005  *  @file ThreadPolicy.h
00006  *
00007  *  ThreadPolicy.h,v 1.5 2006/06/20 07:21:21 jwillemsen Exp
00008  *
00009  *  @author  Johnny Willemsen  <jwillemsen@remedy.nl>
00010  */
00011 //=============================================================================
00012 
00013 #ifndef TAO_PORTABLESERVER_THREADPOLICY_H
00014 #define TAO_PORTABLESERVER_THREADPOLICY_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/ThreadPolicyC.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 ThreadPolicy
00042       : public virtual ::PortableServer::ThreadPolicy,
00043         public virtual TAO_Local_RefCounted_Object
00044     {
00045     public:
00046       ThreadPolicy (::PortableServer::ThreadPolicyValue 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::ThreadPolicyValue 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       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       TAO_Policy_Scope _tao_scope (void) const;
00065 
00066     private:
00067       ::PortableServer::ThreadPolicyValue value_;
00068     };
00069   }
00070 }
00071 
00072 TAO_END_VERSIONED_NAMESPACE_DECL
00073 
00074 #endif /* TAO_HAS_MINIMUM_POA == 0 */
00075 
00076 #if defined(_MSC_VER)
00077 #pragma warning(pop)
00078 #endif /* _MSC_VER */
00079 
00080 #include /**/ "ace/post.h"
00081 #endif /* TAO_PORTABLESERVER_THREADPOLICY_H */

Generated on Thu Nov 9 12:40:45 2006 for TAO_PortableServer by doxygen 1.3.6