Carna  Version 3.3.2
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | List of all members
Carna::base::Singleton< InstanceType > Class Template Reference

Singleton base class More...

#include <Singleton.h>

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 InstanceType & instance ()
 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 Carna::base::Singleton< InstanceType >

Singleton base class

Parameters
InstanceTypeNames the class, which derives from this class.

Example of usage:

class Config : public Carna::base::Singleton< Config >
{
protected:
friend class Carna::base::Singleton< Config >
Config();
};

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

Author
Leonid Kostrykin
Date
2.3.11 - 16.3.15

Definition at line 59 of file Singleton.h.


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