Public Member Functions | Static Public Member Functions | Public Attributes

TAO_TSS_Resources Class Reference

The TSS resoures shared by all the ORBs. More...

#include <TSS_Resources.h>

Collaboration diagram for TAO_TSS_Resources:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 TAO_TSS_Resources (void)
 Constructor.
 ~TAO_TSS_Resources (void)
 Destructor.

Static Public Member Functions

static TAO_TSS_Resourcesinstance (void)
 Return a singleton instance of this class.

Public Attributes

void * poa_current_impl_
void * rtscheduler_current_impl_
void * rtscheduler_previous_current_impl_
CORBA::Short rtcorba_current_priority_
CORBA::Environmentdefault_environment_
 The default environment for the thread.
CORBA::Environment tss_environment_
TAO_Policy_Current_Impl initial_policy_current_
TAO_Policy_Current_Implpolicy_current_
 This pointer is reset by the POA on each upcall.
TAO::GUIResource_Factory * gui_resource_factory_
 A factory for creating GUIReactors.
TAO::Transport_Selection_Guard * tsg_

Private Member Functions

 TAO_TSS_Resources (const TAO_TSS_Resources &)
 Do not copy TSS resources.
void operator= (const TAO_TSS_Resources &)
 Do not copy TSS resources.

Detailed Description

The TSS resoures shared by all the ORBs.

This class is used by TAO to store the resources that are thread-specific but are *not* ORB specific. The members are public because only the ORB Core is expected to access them.

Definition at line 47 of file TSS_Resources.h.


Constructor & Destructor Documentation

TAO_TSS_Resources::TAO_TSS_Resources ( void   ) 

Constructor.

Definition at line 14 of file TSS_Resources.cpp.

  : poa_current_impl_ (0)
  , rtscheduler_current_impl_ (0)
  , rtscheduler_previous_current_impl_ (0)
  , rtcorba_current_priority_ (-1) // RTCORBA::minPriority - 1
  , default_environment_ (&tss_environment_)

#if (TAO_HAS_CORBA_MESSAGING == 1)

  , policy_current_ (&initial_policy_current_)

#endif /* TAO_HAS_CORBA_MESSAGING == 1 */
  , gui_resource_factory_ (0)
#if (TAO_HAS_TRANSPORT_CURRENT == 1)
  , tsg_ (0)
#endif /* TAO_HAS_TRANSPORT_CURRENT */
{
}

TAO_TSS_Resources::~TAO_TSS_Resources ( void   ) 

Destructor.

Definition at line 33 of file TSS_Resources.cpp.

{
  delete this->gui_resource_factory_;
}

TAO_TSS_Resources::TAO_TSS_Resources ( const TAO_TSS_Resources  )  [private]

Do not copy TSS resources.


Member Function Documentation

TAO_TSS_Resources * TAO_TSS_Resources::instance ( void   )  [static]

Return a singleton instance of this class.

Definition at line 39 of file TSS_Resources.cpp.

{
  // Hide the template instantiation to prevent multiple instances
  // from being created.
  return
    TAO_TSS_Singleton<TAO_TSS_Resources, TAO_SYNCH_MUTEX>::instance ();
}

void TAO_TSS_Resources::operator= ( const TAO_TSS_Resources  )  [private]

Do not copy TSS resources.


Member Data Documentation

The default environment for the thread.

Definition at line 90 of file TSS_Resources.h.

TAO::GUIResource_Factory* TAO_TSS_Resources::gui_resource_factory_

A factory for creating GUIReactors.

GUIResource_Factory has to be stored in TSS, as GUIReactors are operational only in within the context of GUI event loops.

Definition at line 112 of file TSS_Resources.h.

The initial PolicyCurrent for this thread. Should be a TSS resource.

Definition at line 100 of file TSS_Resources.h.

Points to structure containing state for the current upcall context in this thread. Note that it does not come from the resource factory because it must always be held in thread-specific storage. For now, since TAO_ORB_Core instances are TSS singletons, we simply ride along and don't allocate occupy another TSS slot since there are some platforms where those are precious commodities (e.g., NT).

Definition at line 79 of file TSS_Resources.h.

This pointer is reset by the POA on each upcall.

Definition at line 103 of file TSS_Resources.h.

The CORBA priority of the thread if set via RTCORBA::Current. RTCORBA::minPriority - 1 otherwise.

Definition at line 87 of file TSS_Resources.h.

Definition at line 81 of file TSS_Resources.h.

Definition at line 83 of file TSS_Resources.h.

TAO::Transport_Selection_Guard* TAO_TSS_Resources::tsg_

A TSS for a pointer to the current transport guard (see below). The guard keeps track of the Transport, if any that has been selected for use by the current thread, in the context of an upcall or client-side interceptor.

Definition at line 121 of file TSS_Resources.h.

If the user (or library) provides no environment the ORB_Core still holds one.

Definition at line 94 of file TSS_Resources.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines