Shadowrun: Awakened 29 September 2011 - Build 871
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions
cat::Singleton< T > Class Template Reference

#include <Singleton.hpp>

Inheritance diagram for cat::Singleton< T >:

List of all members.

Public Member Functions

virtual ~Singleton ()

Static Public Member Functions

static CAT_INLINE void deallocate ()
static CAT_INLINE Tref ()

Static Public Attributes

static Tii = 0

Protected Member Functions

Singleton< T > & operator= (Singleton< T > &)
 Singleton ()
 Singleton (Singleton< T > &)

Detailed Description

template<class T>
class cat::Singleton< T >

Definition at line 46 of file Singleton.hpp.


Constructor & Destructor Documentation

template<class T>
cat::Singleton< T >::Singleton ( ) [inline, protected]

Definition at line 49 of file Singleton.hpp.

{}
template<class T>
cat::Singleton< T >::Singleton ( Singleton< T > &  ) [inline, protected]

Definition at line 50 of file Singleton.hpp.

{}
template<class T>
virtual cat::Singleton< T >::~Singleton ( ) [inline, virtual]

Definition at line 71 of file Singleton.hpp.

{}

Member Function Documentation

template<class T>
static CAT_INLINE void cat::Singleton< T >::deallocate ( ) [inline, static]

Definition at line 62 of file Singleton.hpp.

    {
        if (ii)
        {
            delete ii;
            ii = 0;
        }
    }
template<class T>
Singleton<T>& cat::Singleton< T >::operator= ( Singleton< T > &  ) [inline, protected]

Definition at line 51 of file Singleton.hpp.

{}
template<class T>
static CAT_INLINE T* cat::Singleton< T >::ref ( ) [inline, static]

Definition at line 57 of file Singleton.hpp.

    {
        if (ii) return ii;
        return ii = new T;
    }

Member Data Documentation

template<class T>
T * Singleton< T >::ii = 0 [static]

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

Copyright © 2007-2010 by The Shadowrun: Awakened Team. This work is licensed under the GNU Lesser General Public License 3.

GNU Lesser General Public License 3 Sourceforge.net