corelinux_Singleton(3)

corelinux_Singleton3

Ensure a class only has one instance, and provide a global point of access to it.

Usage

#include <Singleton.hpp>

Inherits corelinux::CoreLinuxObject.

Public Member Functions

Singleton (void) throw ( Assertion )
Default constructor sets theSingleton and theType after insuring that they are not already instantiated. Singleton (TypeImpl *aTypePtr) throw ( Assertion )
Initializing constructor. virtual ~Singleton (void)
Virtual destructor. bool operator== (const Singleton &aSingleton) const
Equality operator tests that theSingleton instances are equal.

Static Public Member Functions

TypeImpl * instance (void)
Returns the instance of the TypeImpl.

Detailed Description

template<class TypeImpl> class corelinux::Singleton< TypeImpl >

Ensure a class only has one instance, and provide a global point of access to it.

This is easier said than done outside of the solution domain. While we can declare a protocol by which the use of this type will prevent multiple applications, we can't insure that the implementor won't violate said protocol.

Constructor & Destructor Documentation

template<class TypeImpl> corelinux::Singleton< TypeImpl >::Singleton (void) throw ( Assertion ) [inline]

Default constructor sets theSingleton and theType after insuring that they are not already instantiated. Exceptions:

Assertion .RE

Member Function Documentation

template<class TypeImpl> TypeImpl* corelinux::Singleton< TypeImpl >::instance (void) [inline, static]

Returns the instance of the TypeImpl. Returns:

TypeImpl pointer

template<class TypeImpl> bool corelinux::Singleton< TypeImpl >::operator== (const Singleton< TypeImpl > & aSingleton) const [inline]

Equality operator tests that theSingleton instances are equal. Parameters:

Singleton const reference

Returns:

bool true if equal

Releases

2 releases since Debian 3.0 (Woody); the text changed 1 time.

  1. 3.0
  2. 3.1

Author

Generated automatically by Doxygen for CoreLinux++ from the source code.

From libcorelinux-dev 0.4.32-5 in Debian 3.1 (Sarge). Parsed by carta from the page's man source.