LibCarna Version 3.4.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | List of all members
LibCarna::base::Singleton< InstanceType > Class Template Reference

Singleton base class More...

#include <Singleton.hpp>

Public Types

typedef InstanceType Instance
 Denotes the class, that is derived from this class template.
 

Public Member Functions

virtual ~Singleton ()
 Denotes that the instance was deleted.
 

Static Public Member Functions

static InstanceTypeinstance ()
 Returns the only instance from class InstanceType.
 
static bool exists ()
 Tells whether the instance from class InstanceType currently exists.
 

Protected Member Functions

 Singleton ()
 Denotes that the instance was created. Default constructor is hidden.
 

Static Protected Member Functions

static void reset ()
 Deletes the only instance from class InstanceType.
 

Detailed Description

template<typename InstanceType>
class LibCarna::base::Singleton< InstanceType >

Singleton base class

Parameters
InstanceTypeNames the class, which derives from this class.

Example of usage:

class Config : public LibCarna::base::Singleton< Config >
{
protected:
Config();
};
Represents an association.
Singleton base class
Definition Singleton.hpp:63

If you do require a special implementation of the default constructor, than there is no need for the friend class declaration.

Author
Leonid Kostrykin

Definition at line 62 of file Singleton.hpp.

Member Typedef Documentation

◆ Instance

Denotes the class, that is derived from this class template.

Definition at line 99 of file Singleton.hpp.

Constructor & Destructor Documentation

◆ Singleton()

template<typename InstanceType >
LibCarna::base::Singleton< InstanceType >::Singleton ( )
inlineprotected

Denotes that the instance was created. Default constructor is hidden.

Definition at line 77 of file Singleton.hpp.

◆ ~Singleton()

Denotes that the instance was deleted.

Definition at line 104 of file Singleton.hpp.

Member Function Documentation

◆ exists()

template<typename InstanceType >
static bool LibCarna::base::Singleton< InstanceType >::exists ( )
inlinestatic

Tells whether the instance from class InstanceType currently exists.

Definition at line 120 of file Singleton.hpp.

◆ instance()

template<typename InstanceType >
static InstanceType & LibCarna::base::Singleton< InstanceType >::instance ( )
inlinestatic

Returns the only instance from class InstanceType.

Definition at line 112 of file Singleton.hpp.

◆ reset()

template<typename InstanceType >
static void LibCarna::base::Singleton< InstanceType >::reset ( )
inlinestaticprotected

Deletes the only instance from class InstanceType.

Definition at line 86 of file Singleton.hpp.


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