Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

TAO_RT_ORB Class Reference

RTCORBA::RTORB implementation. More...

#include <RT_ORB.h>

Inheritance diagram for TAO_RT_ORB:

Inheritance graph
[legend]
Collaboration diagram for TAO_RT_ORB:

Collaboration graph
[legend]
List of all members.

Public Methods

 TAO_RT_ORB (TAO_ORB_Core *orb_core)
 Constructor.

virtual RTCORBA::Mutex_ptr create_mutex (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
virtual void destroy_mutex (RTCORBA::Mutex_ptr the_mutex ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
virtual RTCORBA::Mutex_ptr create_named_mutex (const char *name, CORBA::Boolean_out created_flag ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
virtual RTCORBA::Mutex_ptr open_named_mutex (const char *name ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, RTCORBA::RTORB::MutexNotFound )
 Retrieve a previously created mutex.

virtual 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 ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException )
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 ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
 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 ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
virtual void destroy_threadpool (RTCORBA::ThreadpoolId threadpool ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, RTCORBA::RTORB::InvalidThreadpool)
 Free the resources associated with the specified threadpool.

virtual RTCORBA::PriorityModelPolicy_ptr create_priority_model_policy (RTCORBA::PriorityModel priority_model, RTCORBA::Priority server_priority ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
 Create a priority model policy for use when configuring a POA.

virtual RTCORBA::ThreadpoolPolicy_ptr create_threadpool_policy (RTCORBA::ThreadpoolId threadpool ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
 Create a ThreadpoolPolicy instance for POA creation.

virtual RTCORBA::PriorityBandedConnectionPolicy_ptr create_priority_banded_connection_policy (const RTCORBA::PriorityBands &priority_bands ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
virtual RTCORBA::PrivateConnectionPolicy_ptr create_private_connection_policy (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
virtual RTCORBA::ServerProtocolPolicy_ptr create_server_protocol_policy (const RTCORBA::ProtocolList &protocols ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
virtual RTCORBA::ClientProtocolPolicy_ptr create_client_protocol_policy (const RTCORBA::ProtocolList &protocols ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
TAO_Thread_Pool_Managertp_manager (void)
 Get the Thread Pool Manager.


Static Public Methods

int modify_thread_scheduling_policy (CORBA::ORB_ptr orb)

Protected Methods

virtual ~TAO_RT_ORB (void)

Protected Attributes

TAO_ORB_Coreorb_core_
 Reference to our creating ORB.

TAO_Named_RT_Mutex_Manager mutex_mgr_
 mutex_mgr_ manages the names associated with named mutexes.

TAO_Thread_Pool_Managertp_manager_
 Thread Pool Manager.


Detailed Description

RTCORBA::RTORB implementation.

Creates and destroys RT CORBA objects, i.e., policies, threadpools, mutexes.


Constructor & Destructor Documentation

TAO_RT_ORB::TAO_RT_ORB TAO_ORB_Core   orb_core
 

Constructor.

TAO_RT_ORB::~TAO_RT_ORB void    [protected, virtual]
 

Protected destructor to enforce proper memory management of this reference counted object.


Member Function Documentation

RTCORBA::ClientProtocolPolicy_ptr TAO_RT_ORB::create_client_protocol_policy const RTCORBA::ProtocolList &protocols    ACE_ENV_ARG_DECL_WITH_DEFAULTS throw (CORBA::SystemException) [virtual]
 

Create a ClientProtocolPolicy instance to select and configure communication protocols on the client side.

Implements RTCORBA::RTORB.

RTCORBA::Mutex_ptr TAO_RT_ORB::create_mutex ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS    throw (CORBA::SystemException) [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.

Implements RTCORBA::RTORB.

RTCORBA::Mutex_ptr TAO_RT_ORB::create_named_mutex const char *    name,
CORBA::Boolean_out created_flag    ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException) [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.

Implements RTCORBA::RTORB.

RTCORBA::PriorityBandedConnectionPolicy_ptr TAO_RT_ORB::create_priority_banded_connection_policy const RTCORBA::PriorityBands &priority_bands    ACE_ENV_ARG_DECL_WITH_DEFAULTS throw (CORBA::SystemException) [virtual]
 

Create a PriorityBandedConnectionPolicy instance for use on either the client or server side

Implements RTCORBA::RTORB.

RTCORBA::PriorityModelPolicy_ptr TAO_RT_ORB::create_priority_model_policy RTCORBA::PriorityModel    priority_model,
RTCORBA::Priority server_priority    ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException) [virtual]
 

Create a priority model policy for use when configuring a POA.

Implements RTCORBA::RTORB.

RTCORBA::PrivateConnectionPolicy_ptr TAO_RT_ORB::create_private_connection_policy ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS    throw (CORBA::SystemException) [virtual]
 

Create a PrivateConnectionPolicy instance to use on client to request a private (non-multiplexed) transport connection to the server.

Implements RTCORBA::RTORB.

RTCORBA::ServerProtocolPolicy_ptr TAO_RT_ORB::create_server_protocol_policy const RTCORBA::ProtocolList &protocols    ACE_ENV_ARG_DECL_WITH_DEFAULTS throw (CORBA::SystemException) [virtual]
 

Create a ServerProtocolPolicy instance to select and configure communication protocols on the server side.

Implements RTCORBA::RTORB.

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    ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException ) [virtual]
 

Create and return a TCPProtocolProperties instance with the specified parameters.

Implements RTCORBA::RTORB.

RTCORBA::ThreadpoolId TAO_RT_ORB::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    ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException) [virtual]
 

Create a RTCORBA threadpool to manage a set of threads without lanes.

Implements RTCORBA::RTORB.

RTCORBA::ThreadpoolPolicy_ptr TAO_RT_ORB::create_threadpool_policy RTCORBA::ThreadpoolId threadpool    ACE_ENV_ARG_DECL_WITH_DEFAULTS throw (CORBA::SystemException) [virtual]
 

Create a ThreadpoolPolicy instance for POA creation.

Implements RTCORBA::RTORB.

RTCORBA::ThreadpoolId TAO_RT_ORB::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    ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException) [virtual]
 

Create a threadpool and separate it into subsets based on priorities.

Implements RTCORBA::RTORB.

virtual void TAO_RT_ORB::destroy_mutex RTCORBA::Mutex_ptr the_mutex    ACE_ENV_ARG_DECL_WITH_DEFAULTS throw (CORBA::SystemException) [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.

Implements RTCORBA::RTORB.

void TAO_RT_ORB::destroy_threadpool RTCORBA::ThreadpoolId threadpool    ACE_ENV_ARG_DECL_WITH_DEFAULTS throw (CORBA::SystemException, RTCORBA::RTORB::InvalidThreadpool) [virtual]
 

Free the resources associated with the specified threadpool.

Implements RTCORBA::RTORB.

int TAO_RT_ORB::modify_thread_scheduling_policy CORBA::ORB_ptr    orb [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.

RTCORBA::Mutex_ptr TAO_RT_ORB::open_named_mutex const char *name    ACE_ENV_ARG_DECL_WITH_DEFAULTS throw (CORBA::SystemException, RTCORBA::RTORB::MutexNotFound ) [virtual]
 

Retrieve a previously created mutex.

Implements RTCORBA::RTORB.

TAO_Thread_Pool_Manager & TAO_RT_ORB::tp_manager void   
 

Get the Thread Pool Manager.


Member Data Documentation

TAO_Named_RT_Mutex_Manager TAO_RT_ORB::mutex_mgr_ [protected]
 

mutex_mgr_ manages the names associated with named mutexes.

TAO_ORB_Core* TAO_RT_ORB::orb_core_ [protected]
 

Reference to our creating ORB.

Reimplemented from CORBA::Object.

TAO_Thread_Pool_Manager* TAO_RT_ORB::tp_manager_ [protected]
 

Thread Pool Manager.


The documentation for this class was generated from the following files:
Generated on Thu Jan 15 00:02:47 2004 for TAO_RTCORBA by doxygen1.2.18