Orxonox  0.0.5 Codename: Arcturus
Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
Loki::ScopeGuardImplBase Class Reference

Base class used by all ScopeGuard implementations. More...

#include </home/jenkins/workspace/orxonox_doxygen_trunk/src/external/loki/ScopeGuard.h>

Inheritance diagram for Loki::ScopeGuardImplBase:
Loki::ObjScopeGuardImpl0< Obj, MemFun > Loki::ObjScopeGuardImpl1< Obj, MemFun, P1 > Loki::ObjScopeGuardImpl2< Obj, MemFun, P1, P2 > Loki::ObjScopeGuardImpl3< Obj, MemFun, P1, P2, P3 > Loki::ScopeGuardImpl0< F > Loki::ScopeGuardImpl1< F, P1 > Loki::ScopeGuardImpl2< F, P1, P2 > Loki::ScopeGuardImpl3< F, P1, P2, P3 > Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 > Loki::ScopeGuardImpl5< F, P1, P2, P3, P4, P5 >

Public Member Functions

 ScopeGuardImplBase () throw ()
 
void Dismiss () const throw ()
 

Protected Member Functions

 ScopeGuardImplBase (const ScopeGuardImplBase &other) throw ()
 Copy-constructor takes over responsibility from other ScopeGuard. More...
 
 ~ScopeGuardImplBase ()
 

Static Protected Member Functions

template<typename J >
static void SafeExecute (J &j) throw ()
 

Protected Attributes

bool dismissed_
 

Private Member Functions

ScopeGuardImplBaseoperator= (const ScopeGuardImplBase &)
 Copy-assignment operator is not implemented and private. More...
 

Detailed Description

Base class used by all ScopeGuard implementations.

All commonly used functions are in this class (e.g. - Dismiss and SafeExecute).

See Andrei's and Petru Marginean's CUJ article http://www.cuj.com/documents/s=8000/cujcexp1812alexandr/alexandr.htm

Changes to the original code by Joshua Lehrer: http://www.lehrerfamily.com/scopeguard.html

Constructor & Destructor Documentation

Loki::ScopeGuardImplBase::~ScopeGuardImplBase ( )
inlineprotected
Loki::ScopeGuardImplBase::ScopeGuardImplBase ( const ScopeGuardImplBase other)
throw (
)
inlineprotected

Copy-constructor takes over responsibility from other ScopeGuard.

Loki::ScopeGuardImplBase::ScopeGuardImplBase ( )
throw (
)
inline

Member Function Documentation

void Loki::ScopeGuardImplBase::Dismiss ( ) const
throw (
)
inline
ScopeGuardImplBase& Loki::ScopeGuardImplBase::operator= ( const ScopeGuardImplBase )
private

Copy-assignment operator is not implemented and private.

template<typename J >
static void Loki::ScopeGuardImplBase::SafeExecute ( J &  j)
throw (
)
inlinestaticprotected

Member Data Documentation

bool Loki::ScopeGuardImplBase::dismissed_
mutableprotected

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