#include <Root_POA.h>
Collaboration diagram for TAO_POA_Static_Resources:
Static Public Member Functions | |
TAO_POA_Static_Resources * | instance (void) |
Return the singleton instance. | |
Public Attributes | |
ACE_CString | ort_adapter_factory_name_ |
ACE_CString | imr_client_adapter_name_ |
Private Member Functions | |
TAO_POA_Static_Resources (void) | |
Constructor. | |
Static Private Attributes | |
TAO_POA_Static_Resources * | instance_ = 0 |
The singleton instance. | |
TAO_POA_Static_Resources * | initialization_reference_ |
This class is used by the POA to store the resources global to all POA's. All instance variables that would have been declared "static" in TAO_Regular_POA, should be declared in this class to avoid the "static initialization order fiasco" as described in http://www.parashift.com/c++-faq-lite/ctors.html#faq-10.11. Briefly, this is the problem that occurs if any static initializers in any other code call into set static members of TAO_Regular_POA. Since the order in which these initializers execute is unspecified, uninitialized members can be accessed.
Definition at line 999 of file Root_POA.h.
|
Constructor.
Definition at line 2957 of file Root_POA.cpp.
02958 : ort_adapter_factory_name_ ("ORT_Adapter_Factory"), 02959 imr_client_adapter_name_ ("ImR_Client_Adapter") 02960 { 02961 } |
|
Return the singleton instance.
Definition at line 2940 of file Root_POA.cpp. References ACE_NEW_RETURN, and instance_. Referenced by TAO_Root_POA::imr_client_adapter_name(), and TAO_Root_POA::ort_adapter_factory_name().
02941 { 02942 if (TAO_POA_Static_Resources::instance_ == 0) 02943 { 02944 // This new is never freed on purpose. The data specified by 02945 // it needs to be around for the last shared library that references 02946 // this class. This could occur in a destructor in a shared library 02947 // that is unloaded after this one. One solution to avoid this 02948 // harmless memory leak would be to use reference counting. 02949 ACE_NEW_RETURN (TAO_POA_Static_Resources::instance_, 02950 TAO_POA_Static_Resources (), 02951 0); 02952 } 02953 02954 return TAO_POA_Static_Resources::instance_; 02955 } |
|
Name of the service object for functions that make calls on the Implementation Repository. The default value is "ImR_Client_Adapter". If TAO_IMR_CLient is linked, imr_client_adapter_name() will be called to set the value to "Concrete_ImR_Client_Adapter". Definition at line 1024 of file Root_POA.h. Referenced by TAO_Root_POA::imr_client_adapter_name(). |
|
Initial value: Mostly unused variable whose sole purpose is to enforce the instantiation of a TAO_POA_Static_Resources instance at initialization time.Definition at line 2936 of file Root_POA.cpp. |
|
The singleton instance.
Definition at line 2931 of file Root_POA.cpp. Referenced by instance(). |
|
Name of the factory object used to adapt function calls on the PortableInterceptor interfaces ORT. The default value is "ObjectReferenceTemplate_Adapter_Factory". If the ORT library is linked, the corresponding accessor function objectreferencefactory_adapter_factory_name() will be called to set the value to "Concrete_ObjectReferenceTemplate_Adapter_Factory". Definition at line 1016 of file Root_POA.h. Referenced by TAO_Root_POA::ort_adapter_factory_name(). |