MIRA
Classes | Namespaces | Macros
Singleton.h File Reference

A singleton class that can be freely configured using policies that control the creation, instantiation, lifetime and thread-safety. More...

#include <boost/noncopyable.hpp>
#include <boost/type_traits/remove_cv.hpp>
#include <boost/thread/mutex.hpp>
#include <error/Exception.h>
#include <platform/Platform.h>
#include <platform/Typename.h>
Include dependency graph for Singleton.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  CreateUsingNew< T >
 Implementation of the CreationPolicy that is used by the Singleton template. More...
 
struct  CreateStatic< T >
 Implementation of the CreationPolicy that is used by the Singleton template. More...
 
struct  CreateUsing< Alloc >
 Implementation of the CreationPolicy that is used by the Singleton template. More...
 
struct  CreateUsing< Alloc >::Allocator< T >
 
struct  NormalLifetime< T >
 Implementation of the LifetimePolicy that is used by the Singleton template. More...
 
struct  NoDestroyLifetime< T >
 Implementation of the LifetimePolicy that is used by the Singleton template. More...
 
class  LazyInstantiation< Trait >
 Implementation of the InstantiationPolicy that is used by the Singleton template. More...
 
class  EagerInstantiation< Trait >
 Implementation of the InstantiationPolicy that is used by the Singleton template. More...
 
class  ExplicitInstantiation< Trait >
 Implementation of the InstantiationPolicy that is used by the Singleton template. More...
 
struct  NoLock
 Implementation of the LockPolicy that is used by the Singleton template. More...
 
struct  NoLock::Lock
 
struct  NoLock::Volatile< T >
 
struct  MutexLock
 Implementation of the LockPolicy that is used by the Singleton template. More...
 
struct  MutexLock::Volatile< T >
 
class  Singleton< T, TInstantiationPolicy, TCreationPolicy, TLifetimePolicy, TLockPolicy >
 A singleton template class that can be freely configured using policies that control the instantiation, creation, lifetime and thread-safety. More...
 
class  LazySingleton< T >
 Provided for convenience. More...
 
class  EagerSingleton< T >
 Provided for convenience. More...
 
class  ExplicitSingleton< T >
 Provided for convenience. More...
 
class  LazySingletonNoLock< T >
 Provided for convenience. More...
 
class  EagerSingletonNoLock< T >
 Provided for convenience. More...
 

Namespaces

 mira
 specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec>
 
 mira::singleton
 

Macros

#define MIRA_CREATESTATIC_ALIGN   __attribute__((aligned(16)))
 

Detailed Description

A singleton class that can be freely configured using policies that control the creation, instantiation, lifetime and thread-safety.

Author
Erik Einhorn
Date
2011/12/23

Macro Definition Documentation

◆ MIRA_CREATESTATIC_ALIGN

#define MIRA_CREATESTATIC_ALIGN   __attribute__((aligned(16)))