Orxonox  0.0.5 Codename: Arcturus
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 > Class Template Reference

Implementation class for a standalone function or class static function with four parameters. More...

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

Inheritance diagram for Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >:
Loki::ScopeGuardImplBase

Public Member Functions

 ScopeGuardImpl4 (F fun, P1 p1, P2 p2, P3 p3, P4 p4)
 
 ~ScopeGuardImpl4 () throw ()
 
void Execute ()
 
- Public Member Functions inherited from Loki::ScopeGuardImplBase
 ScopeGuardImplBase () throw ()
 
void Dismiss () const throw ()
 

Static Public Member Functions

static ScopeGuardImpl4< F, P1, P2, P3, P4 > MakeGuard (F fun, P1 p1, P2 p2, P3 p3, P4 p4)
 

Protected Attributes

fun_
 
const P1 p1_
 
const P2 p2_
 
const P3 p3_
 
const P4 p4_
 
- Protected Attributes inherited from Loki::ScopeGuardImplBase
bool dismissed_
 

Additional Inherited Members

- Protected Member Functions inherited from Loki::ScopeGuardImplBase
 ScopeGuardImplBase (const ScopeGuardImplBase &other) throw ()
 Copy-constructor takes over responsibility from other ScopeGuard. More...
 
 ~ScopeGuardImplBase ()
 
- Static Protected Member Functions inherited from Loki::ScopeGuardImplBase
template<typename J >
static void SafeExecute (J &j) throw ()
 

Detailed Description

template<typename F, typename P1, typename P2, typename P3, typename P4>
class Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >

Implementation class for a standalone function or class static function with four parameters.

Each parameter is copied by value - use Loki::ByRef if you must use a reference instead. ScopeGuard ignores any value returned from the call within the Execute function.

This class has a single standalone helper function, MakeGuard which creates and returns a ScopeGuard.

Constructor & Destructor Documentation

template<typename F, typename P1, typename P2, typename P3, typename P4>
Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::~ScopeGuardImpl4 ( )
throw (
)
inline
template<typename F, typename P1, typename P2, typename P3, typename P4>
Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::ScopeGuardImpl4 ( fun,
P1  p1,
P2  p2,
P3  p3,
P4  p4 
)
inline

Member Function Documentation

template<typename F, typename P1, typename P2, typename P3, typename P4>
void Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::Execute ( )
inline
template<typename F, typename P1, typename P2, typename P3, typename P4>
static ScopeGuardImpl4< F, P1, P2, P3, P4 > Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::MakeGuard ( fun,
P1  p1,
P2  p2,
P3  p3,
P4  p4 
)
inlinestatic

Member Data Documentation

template<typename F, typename P1, typename P2, typename P3, typename P4>
F Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::fun_
protected
template<typename F, typename P1, typename P2, typename P3, typename P4>
const P1 Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::p1_
protected
template<typename F, typename P1, typename P2, typename P3, typename P4>
const P2 Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::p2_
protected
template<typename F, typename P1, typename P2, typename P3, typename P4>
const P3 Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::p3_
protected
template<typename F, typename P1, typename P2, typename P3, typename P4>
const P4 Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::p4_
protected

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