TAO_RTCORBA
2.1.3
|
RTCORBA::RTORB implementation. More...
#include <RT_ORB.h>
Public Member Functions | |
TAO_RT_ORB (TAO_ORB_Core *orb_core, TAO_RT_ORBInitializer::TAO_RTCORBA_DT_LifeSpan lifespan, ACE_Time_Value const &dynamic_thread_time) | |
Constructor. | |
virtual RTCORBA::Mutex_ptr | create_mutex (void) |
virtual void | destroy_mutex (RTCORBA::Mutex_ptr the_mutex) |
virtual RTCORBA::Mutex_ptr | create_named_mutex (const char *name, CORBA::Boolean_out created_flag) |
virtual RTCORBA::Mutex_ptr | open_named_mutex (const char *name) |
Retrieve a previously created mutex. | |
RTCORBA::TCPProtocolProperties_ptr | create_tcp_protocol_properties (CORBA::Long send_buffer_size, CORBA::Long recv_buffer_size, CORBA::Boolean keep_alive, CORBA::Boolean dont_route, CORBA::Boolean no_delay, CORBA::Boolean enable_network_priority) |
RTCORBA::UnixDomainProtocolProperties_ptr | create_unix_domain_protocol_properties (CORBA::Long send_buffer_size, CORBA::Long recv_buffer_size) |
RTCORBA::SharedMemoryProtocolProperties_ptr | create_shared_memory_protocol_properties (CORBA::Long send_buffer_size, CORBA::Long recv_buffer_size, CORBA::Boolean keep_alive, CORBA::Boolean dont_route, CORBA::Boolean no_delay, CORBA::Long preallocate_buffer_size, const char *mmap_filename, const char *mmap_lockname) |
RTCORBA::UserDatagramProtocolProperties_ptr | create_user_datagram_protocol_properties (CORBA::Long send_buffer_size, CORBA::Long recv_buffer_size, CORBA::Boolean enable_network_priority) |
RTCORBA::StreamControlProtocolProperties_ptr | create_stream_control_protocol_properties (CORBA::Long send_buffer_size, CORBA::Long recv_buffer_size, CORBA::Boolean keep_alive, CORBA::Boolean dont_route, CORBA::Boolean no_delay, CORBA::Boolean enable_network_priority) |
virtual RTCORBA::ThreadpoolId | create_threadpool (CORBA::ULong stacksize, CORBA::ULong static_threads, CORBA::ULong dynamic_threads, RTCORBA::Priority default_priority, CORBA::Boolean allow_request_buffering, CORBA::ULong max_buffered_requests, CORBA::ULong max_request_buffer_size) |
Create a RTCORBA threadpool to manage a set of threads without lanes. | |
virtual RTCORBA::ThreadpoolId | create_threadpool_with_lanes (CORBA::ULong stacksize, const RTCORBA::ThreadpoolLanes &lanes, CORBA::Boolean allow_borrowing, CORBA::Boolean allow_request_buffering, CORBA::ULong max_buffered_requests, CORBA::ULong max_request_buffer_size) |
virtual void | destroy_threadpool (RTCORBA::ThreadpoolId threadpool) |
Free the resources associated with the specified threadpool. | |
virtual RTCORBA::PriorityModelPolicy_ptr | create_priority_model_policy (RTCORBA::PriorityModel priority_model, RTCORBA::Priority server_priority) |
Create a priority model policy for use when configuring a POA. | |
virtual RTCORBA::ThreadpoolPolicy_ptr | create_threadpool_policy (RTCORBA::ThreadpoolId threadpool) |
Create a ThreadpoolPolicy instance for POA creation. | |
virtual RTCORBA::PriorityBandedConnectionPolicy_ptr | create_priority_banded_connection_policy (const RTCORBA::PriorityBands &priority_bands) |
virtual RTCORBA::PrivateConnectionPolicy_ptr | create_private_connection_policy (void) |
virtual RTCORBA::ServerProtocolPolicy_ptr | create_server_protocol_policy (const RTCORBA::ProtocolList &protocols) |
virtual RTCORBA::ClientProtocolPolicy_ptr | create_client_protocol_policy (const RTCORBA::ProtocolList &protocols) |
TAO_ORB_Core * | orb_core (void) const |
Reference to our creating ORB Core. | |
TAO_Thread_Pool_Manager & | tp_manager (void) const |
Get the Thread Pool Manager. | |
![]() | |
virtual | ~LocalObject (void) |
virtual CORBA::Boolean | _non_existent (void) |
virtual char * | _repository_id (void) |
virtual CORBA::InterfaceDef_ptr | _get_interface (void) |
virtual CORBA::Object_ptr | _get_component (void) |
virtual void | _create_request (CORBA::Context_ptr ctx, const char *operation, CORBA::NVList_ptr arg_list, CORBA::NamedValue_ptr result, CORBA::Request_ptr &request, CORBA::Flags req_flags) |
virtual void | _create_request (CORBA::Context_ptr ctx, const char *operation, CORBA::NVList_ptr arg_list, CORBA::NamedValue_ptr result, CORBA::ExceptionList_ptr exclist, CORBA::ContextList_ptr ctxtlist, CORBA::Request_ptr &request, CORBA::Flags req_flags) |
virtual CORBA::Request_ptr | _request (const char *operation) |
CORBA::Policy_ptr | _get_policy (CORBA::PolicyType type) |
CORBA::Policy_ptr | _get_cached_policy (TAO_Cached_Policy_Type type) |
CORBA::Object_ptr | _set_policy_overrides (const CORBA::PolicyList &policies, CORBA::SetOverrideType set_add) |
CORBA::PolicyList * | _get_policy_overrides (const CORBA::PolicyTypeSeq &types) |
CORBA::Boolean | _validate_connection (CORBA::PolicyList_out inconsistent_policies) |
virtual CORBA::ULong | _hash (CORBA::ULong maximum) |
virtual CORBA::Boolean | _is_equivalent (CORBA::Object_ptr other_obj) |
virtual CORBA::ORB_ptr | _get_orb (void) |
virtual TAO::ObjectKey * | _key (void) |
virtual | ~Object (void) |
virtual TAO_Abstract_ServantBase * | _servant (void) const |
virtual CORBA::Boolean | _is_collocated (void) const |
virtual CORBA::Boolean | _is_local (void) const |
Object (TAO_Stub *p, CORBA::Boolean collocated=false, TAO_Abstract_ServantBase *servant=0, TAO_ORB_Core *orb_core=0) | |
Object (IOP::IOR *ior, TAO_ORB_Core *orb_core) | |
virtual TAO_Stub * | _stubobj (void) const |
virtual TAO_Stub * | _stubobj (void) |
virtual void | _proxy_broker (TAO::Object_Proxy_Broker *proxy_broker) |
virtual CORBA::Boolean | marshal (TAO_OutputCDR &cdr) |
CORBA::Boolean | is_evaluated (void) const |
IOP::IOR * | steal_ior (void) |
const IOP::IOR & | ior (void) const |
virtual bool | can_convert_to_ior (void) const |
virtual char * | convert_to_ior (bool use_omg_ior_format, const char *ior_prefix) const |
void | _decr_refcount (void) |
virtual void | _add_ref (void) |
virtual void | _remove_ref (void) |
virtual CORBA::ULong | _refcount_value (void) const |
virtual CORBA::Boolean | _is_a (const char *logical_type_id) |
virtual const char * | _interface_repository_id (void) const |
Static Public Member Functions | |
static int | modify_thread_scheduling_policy (CORBA::ORB_ptr orb) |
![]() | |
static LocalObject_ptr | _duplicate (LocalObject_ptr obj) |
static LocalObject_ptr | _nil (void) |
static LocalObject_ptr | _narrow (CORBA::Object_ptr obj) |
static CORBA::Boolean | marshal (const Object_ptr x, TAO_OutputCDR &cdr) |
static void | _tao_any_destructor (void *) |
static CORBA::Boolean | is_nil_i (CORBA::Object_ptr obj) |
static void | tao_object_initialize (Object *) |
static CORBA::Object_ptr | _duplicate (CORBA::Object_ptr obj) |
Protected Member Functions | |
virtual | ~TAO_RT_ORB (void) |
![]() | |
LocalObject (void) | |
Object (int dummy=0) | |
TAO::Object_Proxy_Broker * | proxy_broker () const |
Protected Attributes | |
TAO_ORB_Core *const | orb_core_ |
Reference to our creating ORB Core. | |
TAO_Named_RT_Mutex_Manager | mutex_mgr_ |
mutex_mgr_ manages the names associated with named mutexes. | |
TAO_Thread_Pool_Manager * | tp_manager_ |
Thread Pool Manager. | |
TAO_RT_ORBInitializer::TAO_RTCORBA_DT_LifeSpan | lifespan_ |
Dynamic thread lifespan policy. | |
ACE_Time_Value const | dynamic_thread_time_ |
Dynamic thread run time. | |
![]() | |
ACE_Atomic_Op< TAO_SYNCH_MUTEX, unsigned long > | refcount_ |
![]() | |
ACE_Atomic_Op< TAO_SYNCH_MUTEX, unsigned long > | refcount_ |
Additional Inherited Members | |
![]() | |
typedef LocalObject_ptr | _ptr_type |
typedef LocalObject_var | _var_type |
typedef LocalObject_out | _out_type |
typedef Object_ptr | _ptr_type |
typedef Object_var | _var_type |
typedef Object_out | _out_type |
RTCORBA::RTORB implementation.
Creates and destroys RT CORBA objects, i.e., policies, threadpools, mutexes.
TAO_RT_ORB::TAO_RT_ORB | ( | TAO_ORB_Core * | orb_core, |
TAO_RT_ORBInitializer::TAO_RTCORBA_DT_LifeSpan | lifespan, | ||
ACE_Time_Value const & | dynamic_thread_time | ||
) |
Constructor.
|
protectedvirtual |
Protected destructor to enforce proper memory management of this reference counted object.
|
virtual |
Create a ClientProtocolPolicy instance to select and configure communication protocols on the client side.
|
virtual |
Create a new mutex. Mutexes returned by this method are the same as those used internally by the ORB, so that consistant priority inheritance/piority ceiling semantics can be guaranteed.
|
virtual |
Create a mutex and assign a name to it. If the mutex already exists, it is returned and the created_flag is set to 0.
|
virtual |
Create a PriorityBandedConnectionPolicy instance for use on either the client or server side
|
virtual |
Create a priority model policy for use when configuring a POA.
|
virtual |
Create a PrivateConnectionPolicy instance to use on client to request a private (non-multiplexed) transport connection to the server.
|
virtual |
Create a ServerProtocolPolicy instance to select and configure communication protocols on the server side.
RTCORBA::SharedMemoryProtocolProperties_ptr TAO_RT_ORB::create_shared_memory_protocol_properties | ( | CORBA::Long | send_buffer_size, |
CORBA::Long | recv_buffer_size, | ||
CORBA::Boolean | keep_alive, | ||
CORBA::Boolean | dont_route, | ||
CORBA::Boolean | no_delay, | ||
CORBA::Long | preallocate_buffer_size, | ||
const char * | mmap_filename, | ||
const char * | mmap_lockname | ||
) |
RTCORBA::StreamControlProtocolProperties_ptr TAO_RT_ORB::create_stream_control_protocol_properties | ( | CORBA::Long | send_buffer_size, |
CORBA::Long | recv_buffer_size, | ||
CORBA::Boolean | keep_alive, | ||
CORBA::Boolean | dont_route, | ||
CORBA::Boolean | no_delay, | ||
CORBA::Boolean | enable_network_priority | ||
) |
RTCORBA::TCPProtocolProperties_ptr TAO_RT_ORB::create_tcp_protocol_properties | ( | CORBA::Long | send_buffer_size, |
CORBA::Long | recv_buffer_size, | ||
CORBA::Boolean | keep_alive, | ||
CORBA::Boolean | dont_route, | ||
CORBA::Boolean | no_delay, | ||
CORBA::Boolean | enable_network_priority | ||
) |
Create and return a TCPProtocolProperties instance with the specified parameters.
|
virtual |
Create a RTCORBA threadpool to manage a set of threads without lanes.
|
virtual |
Create a ThreadpoolPolicy instance for POA creation.
|
virtual |
Create a threadpool and separate it into subsets based on priorities.
RTCORBA::UnixDomainProtocolProperties_ptr TAO_RT_ORB::create_unix_domain_protocol_properties | ( | CORBA::Long | send_buffer_size, |
CORBA::Long | recv_buffer_size | ||
) |
RTCORBA::UserDatagramProtocolProperties_ptr TAO_RT_ORB::create_user_datagram_protocol_properties | ( | CORBA::Long | send_buffer_size, |
CORBA::Long | recv_buffer_size, | ||
CORBA::Boolean | enable_network_priority | ||
) |
|
virtual |
Destroy a mutex. Currently this is a no-op since RTCORBA::Mutex instances are destroyed as soon as their reference counts go to 0.
|
virtual |
Free the resources associated with the specified threadpool.
|
static |
This method changes the scheduling policy of the calling thread to match the scheduling policy specified in the svc.conf file. The priority of the calling thread will be set to the minimum priority supported by that scheduling policy.
This method make sense on those platform (e.g., Linux) where PTHREAD_SCOPE_SYSTEM is the only scheduling scope supported. On other platforms, this method is a no-op since the only way to get the real-time threading behavior is to setup the PTHREAD_SCOPE_SYSTEM scheduling scope when a thread is being created. On such platforms, one can set the correct scheduling scope and policy when creating the thread, thus not needing to use this method.
|
virtual |
Retrieve a previously created mutex.
TAO_ORB_Core * TAO_RT_ORB::orb_core | ( | void | ) | const |
Reference to our creating ORB Core.
Reimplemented from CORBA::LocalObject.
TAO_Thread_Pool_Manager & TAO_RT_ORB::tp_manager | ( | void | ) | const |
Get the Thread Pool Manager.
|
protected |
Dynamic thread run time.
|
protected |
Dynamic thread lifespan policy.
|
protected |
mutex_mgr_ manages the names associated with named mutexes.
|
protected |
Reference to our creating ORB Core.
|
protected |
Thread Pool Manager.