SCL  1.0
Standard Control Library : Control, dynamics, physics, and simulation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
sutil::CCallbackBase< Idx, ArgumentTuple, Data > Class Template Referenceabstract

#include <CRegisteredCallbacks.hpp>

Inheritance diagram for sutil::CCallbackBase< Idx, ArgumentTuple, Data >:
Inheritance graph
[legend]
Collaboration diagram for sutil::CCallbackBase< Idx, ArgumentTuple, Data >:
Collaboration graph
[legend]

Public Member Functions

virtual void call (ArgumentTuple &args)=0
 
virtual CCallbackBase< Idx,
ArgumentTuple, Data > * 
createObject ()=0
 
virtual bool registerCallback (const Idx &arg_callback_name, Data *arg_data=0)
 
virtual ~CCallbackBase ()
 

Protected Member Functions

 CCallbackBase ()
 
virtual bool registerCallbackSuper (const Idx &arg_callback_name, CCallbackSuperBase *arg_obj)
 

Protected Attributes

Data * data_
 

Private Member Functions

 CCallbackBase (const CCallbackBase &)
 
CCallbackBaseoperator= (const CCallbackBase &)
 

Detailed Description

template<typename Idx, typename ArgumentTuple, typename Data>
class sutil::CCallbackBase< Idx, ArgumentTuple, Data >


This enables supporting dynamic typing for arbitrary index and object callbacks.


Constructor & Destructor Documentation

template<typename Idx, typename ArgumentTuple, typename Data>
virtual sutil::CCallbackBase< Idx, ArgumentTuple, Data >::~CCallbackBase ( )
inlinevirtual

Default Destructor : Does nothing

template<typename Idx, typename ArgumentTuple, typename Data>
sutil::CCallbackBase< Idx, ArgumentTuple, Data >::CCallbackBase ( )
inlineprotected

Only a subclass may create an object of this type

Member Function Documentation

template<typename Idx, typename ArgumentTuple, typename Data>
virtual void sutil::CCallbackBase< Idx, ArgumentTuple, Data >::call ( ArgumentTuple &  args)
pure virtual

A subclass must implement this function. You can choose to add a "return type" into the ArgumentTuple and get data from the function.

Implemented in scl::CCallbackIncrement, scl::CCallbackDecrement, scl::CCallbackHelp, scl::CCallbackSet, scl::CCallbackPrint, and scl::CCallbackEcho.

template<typename Idx, typename ArgumentTuple, typename Data>
virtual CCallbackBase<Idx, ArgumentTuple, Data>* sutil::CCallbackBase< Idx, ArgumentTuple, Data >::createObject ( )
pure virtual
template<typename Idx>
virtual bool sutil::CCallbackSuperBase< Idx >::registerCallbackSuper ( const Idx &  arg_callback_name,
CCallbackSuperBase< Idx > *  arg_obj 
)
inlineprotectedvirtualinherited

To allow the callback registry to create objects for itself


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