Dune::Singleton< T > Class Template Reference
#include <singleton.hh>
Detailed Description
template<class T>
class Dune::Singleton< T >
An adapter to turn a class into a singleton.
The class represented by the template parameter T must have a parameterless constructor.
Class T can be publically derived from Singleton<T>:
#include<dune/common/singleton.hh> class Foo : public Dune::Singleton<Foo> { public: Foo() { bytes = new char[1000]; } ~Foo() { delete[] bytes; } private: char* bytes; };
Or one can construct a Singleton of an existing class. Say Foo1 is a class with parameterless constructor then
typedef Dune::Singleton<Foo1> FooSingleton; Foo1 instance& = FooSingleton::instance();
Static Public Member Functions | |
static T & | instance () |
Get the instance of the singleton. | |
Protected Member Functions | |
Singleton (const Singleton &) | |
Private copy constructor. | |
Singleton & | operator= (const Singleton &) |
Private assignment operator. | |
Classes | |
class | InstancePointer |
A simple smart pointer responsible for creation and deletion of the instance. More... |
Member Function Documentation
template<class T>
static T& Dune::Singleton< T >::instance | ( | ) | [inline, static] |
Get the instance of the singleton.
- Returns:
- The instance of the singleton.
References Dune::Singleton< T >::InstancePointer::get(), and Dune::Singleton< T >::InstancePointer::set().
The documentation for this class was generated from the following file: