Scope
scope::BaseController< N_ACTIVES, STATIC_PIMPL > Class Template Reference

#include <BaseController.h>

Classes

class  Impl
 

Public Member Functions

virtual ~BaseController ()
 
ImplPimpl () const
 
void Start (const parameters::Scope &_parameters)
 
void StopAll ()
 
ControllerReturnStatus WaitForAll (const int32_t &_wait_time=-1)
 

Protected Member Functions

 BaseController (Impl *const _pimpl)
 

Protected Attributes

Impl *const pimpl
 

Private Member Functions

 BaseController (const BaseController &i)
 
BaseController operator= (const BaseController &i)
 

Detailed Description

template<uint32_t N_ACTIVES = 1, bool STATIC_PIMPL = false>
class scope::BaseController< N_ACTIVES, STATIC_PIMPL >

Base class for all controllers.

Template Parameters
N_ACTIVESthe number of active threads
STATIC_PIMPLis the pimpl pointer static (if not we have to delete it in the destructor!), implementin the static pimpl (as a static local variable has to be done in derived classes, see e.g. ScopeController!)

Definition at line 20 of file BaseController.h.

Constructor & Destructor Documentation

template<uint32_t N_ACTIVES = 1, bool STATIC_PIMPL = false>
virtual scope::BaseController< N_ACTIVES, STATIC_PIMPL >::~BaseController ( )
inlinevirtual

Deletes the pimpl unless it points to a static local variable.

Definition at line 28 of file BaseController.h.

template<uint32_t N_ACTIVES = 1, bool STATIC_PIMPL = false>
scope::BaseController< N_ACTIVES, STATIC_PIMPL >::BaseController ( const BaseController< N_ACTIVES, STATIC_PIMPL > &  i)
private

disable copy

template<uint32_t N_ACTIVES = 1, bool STATIC_PIMPL = false>
scope::BaseController< N_ACTIVES, STATIC_PIMPL >::BaseController ( Impl *const  _pimpl)
inlineexplicitprotected

Constructor which can be used from derived classes to store their implementation class in BaseControllers pimpl.

Stores a pimpl pointer in BaseController::Impl* pimpl (we use this to store pointers to derived Impl classes in the BaseControllers pimpl).

Parameters
[in]_pimpla pimpl pointer

Definition at line 50 of file BaseController.h.

Member Function Documentation

template<uint32_t N_ACTIVES = 1, bool STATIC_PIMPL = false>
BaseController scope::BaseController< N_ACTIVES, STATIC_PIMPL >::operator= ( const BaseController< N_ACTIVES, STATIC_PIMPL > &  i)
private

disable assignment

template<uint32_t N_ACTIVES = 1, bool STATIC_PIMPL = false>
Impl* scope::BaseController< N_ACTIVES, STATIC_PIMPL >::Pimpl ( ) const
inline
Returns
a pointer to the hidden implementation

Definition at line 56 of file BaseController.h.

template<uint32_t N_ACTIVES = 1, bool STATIC_PIMPL = false>
void scope::BaseController< N_ACTIVES, STATIC_PIMPL >::Start ( const parameters::Scope _parameters)
inline

Start the controller, calls BaseController::Impl::Start.

Definition at line 61 of file BaseController.h.

template<uint32_t N_ACTIVES = 1, bool STATIC_PIMPL = false>
void scope::BaseController< N_ACTIVES, STATIC_PIMPL >::StopAll ( )
inline

Stop the controller, calls BaseController::Impl::StopAll.

Definition at line 66 of file BaseController.h.

template<uint32_t N_ACTIVES = 1, bool STATIC_PIMPL = false>
ControllerReturnStatus scope::BaseController< N_ACTIVES, STATIC_PIMPL >::WaitForAll ( const int32_t &  _wait_time = -1)
inline

Wait until the controller threads finished, calls BaseController::Impl::WaitForAll.

Parameters
[in]_wait_timetime to wait for finish in milliseconds

Definition at line 72 of file BaseController.h.

Member Data Documentation

template<uint32_t N_ACTIVES = 1, bool STATIC_PIMPL = false>
Impl* const scope::BaseController< N_ACTIVES, STATIC_PIMPL >::pimpl
protected

the pointer to the implementation

Definition at line 42 of file BaseController.h.


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