ldas-tools-al 2.6.7
Loading...
Searching...
No Matches
LDASTools::AL::SingletonHolder< T, CreationPolicy, LifetimePolicy > Class Template Reference

#include <Singleton.hh>

Collaboration diagram for LDASTools::AL::SingletonHolder< T, CreationPolicy, LifetimePolicy >:

Public Types

typedef T ObjectType
 

Static Public Member Functions

static T & Instance ()
 
static T & Instance ()
 

Private Types

typedef T * PtrInstanceType
 
typedef MutexLock::baton_type baton_type
 

Private Member Functions

 SingletonHolder ()
 
 SingletonHolder ()
 

Static Private Member Functions

static void MakeInstance ()
 
static void DestroySingleton ()
 
static void MakeInstance ()
 
static void DestroySingleton ()
 

Static Private Attributes

static baton_type baton
 
static PtrInstanceType pInstance_
 
static bool destroyed_
 

Detailed Description

template<typename T, template< class > class CreationPolicy = CreateUsingNew, template< class > class LifetimePolicy = DefaultLifetime>
class LDASTools::AL::SingletonHolder< T, CreationPolicy, LifetimePolicy >
Note
Removed the ThreadingModel and MutexPolicy from the originial code

Member Typedef Documentation

◆ baton_type

template<typename T , template< class > class CreationPolicy = CreateUsingNew, template< class > class LifetimePolicy = DefaultLifetime>
typedef MutexLock::baton_type LDASTools::AL::SingletonHolder< T, CreationPolicy, LifetimePolicy >::baton_type
private

◆ ObjectType

template<typename T , template< class > class CreationPolicy = CreateUsingNew, template< class > class LifetimePolicy = DefaultLifetime>
typedef T LDASTools::AL::SingletonHolder< T, CreationPolicy, LifetimePolicy >::ObjectType

◆ PtrInstanceType

template<typename T , template< class > class CreationPolicy = CreateUsingNew, template< class > class LifetimePolicy = DefaultLifetime>
typedef T * LDASTools::AL::SingletonHolder< T, CreationPolicy, LifetimePolicy >::PtrInstanceType
private

Constructor & Destructor Documentation

◆ SingletonHolder() [1/2]

template<typename T , template< class > class CreationPolicy = CreateUsingNew, template< class > class LifetimePolicy = DefaultLifetime>
LDASTools::AL::SingletonHolder< T, CreationPolicy, LifetimePolicy >::SingletonHolder ( )
private

◆ SingletonHolder() [2/2]

template<typename T , template< class > class CreationPolicy = CreateUsingNew, template< class > class LifetimePolicy = DefaultLifetime>
LDASTools::AL::SingletonHolder< T, CreationPolicy, LifetimePolicy >::SingletonHolder ( )
private

Member Function Documentation

◆ DestroySingleton() [1/2]

template<typename T , template< class > class CreationPolicy, template< class > class L>
void LDASTools::AL::SingletonHolder< T, CreationPolicy, L >::DestroySingleton ( )
staticprivate

◆ DestroySingleton() [2/2]

template<typename T , template< class > class CreationPolicy = CreateUsingNew, template< class > class LifetimePolicy = DefaultLifetime>
static void LDASTools::AL::SingletonHolder< T, CreationPolicy, LifetimePolicy >::DestroySingleton ( )
staticprivate

◆ Instance() [1/2]

template<class T , template< class > class CreationPolicy, template< class > class LifetimePolicy>
T & LDASTools::AL::SingletonHolder< T, CreationPolicy, LifetimePolicy >::Instance ( )
inlinestatic

◆ Instance() [2/2]

template<typename T , template< class > class CreationPolicy = CreateUsingNew, template< class > class LifetimePolicy = DefaultLifetime>
static T & LDASTools::AL::SingletonHolder< T, CreationPolicy, LifetimePolicy >::Instance ( )
static

◆ MakeInstance() [1/2]

template<class T , template< class > class CreationPolicy, template< class > class LifetimePolicy>
void LDASTools::AL::SingletonHolder< T, CreationPolicy, LifetimePolicy >::MakeInstance ( )
staticprivate

◆ MakeInstance() [2/2]

template<typename T , template< class > class CreationPolicy = CreateUsingNew, template< class > class LifetimePolicy = DefaultLifetime>
static void LDASTools::AL::SingletonHolder< T, CreationPolicy, LifetimePolicy >::MakeInstance ( )
staticprivate

Member Data Documentation

◆ baton

template<class T , template< class > class C, template< class > class L>
SingletonHolder< T, C, L >::baton_type LDASTools::AL::SingletonHolder< T, C, L >::baton
staticprivate

◆ destroyed_

template<class T , template< class > class C, template< class > class L>
bool LDASTools::AL::SingletonHolder< T, C, L >::destroyed_
staticprivate

◆ pInstance_

template<class T , template< class > class C, template< class > class L>
SingletonHolder< T, C, L >::PtrInstanceType LDASTools::AL::SingletonHolder< T, C, L >::pInstance_
staticprivate

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