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

# TAO_Singleton< TYPE, ACE_LOCK > Class Template Reference

TAO-specific Singleton class. More...

`#include <TAO_Singleton.h>`

Inheritance diagram for TAO_Singleton< TYPE, ACE_LOCK >:

[legend]
Collaboration diagram for TAO_Singleton< TYPE, ACE_LOCK >:

[legend]
List of all members.

## Public Methods

virtual void | cleanup (void *param=0)

## Static Public Methods

TYPE * | instance (void)
| Global access point to the Singleton.
void | dump (void)
| Dump the state of the object.

## Protected Methods

| TAO_Singleton (void)
| Default constructor.

## Static Protected Methods

TAO_Singleton< TYPE, ACE_LOCK > *& | instance_i (void)
| Get pointer to the TAO Singleton instance.

## Protected Attributes

TYPE | instance_
| Contained instance.

## Static Protected Attributes

TAO_Singleton< TYPE, ACE_LOCK > * | singleton_ = 0
| Pointer to the Singleton (ACE_Cleanup) instance.

## Detailed Description

### template<class TYPE, class ACE_LOCK>
class TAO_Singleton< TYPE, ACE_LOCK >

TAO-specific Singleton class.

TAO_Singletons are used by TAO to register TAO-specific singleton instances with the TAO_Object_Manager. This ensures that TAO singletons are isolated from ACE's Object_Manager, thus allowing TAO to be safely dynamically unloaded.

## Constructor & Destructor Documentation

template<class TYPE, class ACE_LOCK>
ACE_INLINE TAO_Singleton< TYPE, ACE_LOCK >::TAO_Singleton | ( | void |  | ) | `[protected]`

| Default constructor.

## Member Function Documentation

template<class TYPE, class ACE_LOCK>
void TAO_Singleton< TYPE, ACE_LOCK >::cleanup | ( | void * | param = 0 | ) | `[virtual]`

| Cleanup method, used by <ace_cleanup_destroyer> to destroy the singleton. Reimplemented from ACE_Cleanup.

template<class TYPE, class ACE_LOCK>
void TAO_Singleton< TYPE, ACE_LOCK >::dump | ( | void |  | ) | `[static]`

| Dump the state of the object.

template<class TYPE, class ACE_LOCK>
TYPE * TAO_Singleton< TYPE, ACE_LOCK >::instance | ( | void |  | ) | `[static]`

| Global access point to the Singleton.

template<class TYPE, class ACE_LOCK>
TAO_Singleton< TYPE, ACE_LOCK > *& TAO_Singleton< TYPE, ACE_LOCK >::instance_i | ( | void |  | ) | `[static, protected]`

| Get pointer to the TAO Singleton instance.

## Member Data Documentation

template<class TYPE, class ACE_LOCK>
TYPE TAO_Singleton< TYPE, ACE_LOCK >::instance_`[protected]`

| Contained instance.

template<class TYPE, class ACE_LOCK>
TAO_Singleton< TYPE, ACE_LOCK > * TAO_Singleton< TYPE, ACE_LOCK >::singleton_ = 0`[static, protected]`

| Pointer to the Singleton (ACE_Cleanup) instance.

The documentation for this class was generated from the following files:

- TAO_Singleton.h
- TAO_Singleton.cpp
- TAO_Singleton.inl