ControllerButtonChangeCB< TClass > Class Template Reference

#include <ControllerButtonChangeCB.h>

Inherits AbstractControllerButtonChangeCB.

Collaboration diagram for ControllerButtonChangeCB< TClass >:

List of all members.


Public Member Functions

 ControllerButtonChangeCB ()
 ControllerButtonChangeCB (ControllerInterface *controller)
 ControllerButtonChangeCB (ControllerInterface *controller, TClass *object, void(TClass::*function)(int buttonIndex, int newButtonValue))
virtual ~ControllerButtonChangeCB ()
void setSource (ControllerInterface *controller)
void setTarget (TClass *object, void(TClass::*function)(int buttonIndex, int newButtonValue))
bool activate ()
bool deactivate ()
bool isActive () const

Private Member Functions

void call (int buttonIndex, int newButtonValue) const
void invalidateController ()
 ControllerButtonChangeCB (const ControllerButtonChangeCB &src)
ControllerButtonChangeCB
< TClass > & 
operator= (const ControllerButtonChangeCB< TClass > &rhs)

Private Attributes

bool active
ControllerInterfacecontroller
TClass * object
void(TClass::* function )(int buttonIndex, int newButtonValue)

template<class TClass>
class ControllerButtonChangeCB< TClass >


Constructor & Destructor Documentation

template<class TClass >
ControllerButtonChangeCB< TClass >::ControllerButtonChangeCB (  )  [inline]

Constructor

template<class TClass >
ControllerButtonChangeCB< TClass >::ControllerButtonChangeCB ( ControllerInterface controller  )  [inline, explicit]

Constructor setting the source of the callback (controller)

template<class TClass>
ControllerButtonChangeCB< TClass >::ControllerButtonChangeCB ( ControllerInterface controller,
TClass *  object,
void(TClass::*)(int buttonIndex, int newButtonValue)  function 
) [inline, explicit]

Constructor setting the source of the callback (controller) as well as the destination of the callback (object and function which should be called)

template<class TClass >
ControllerButtonChangeCB< TClass >::~ControllerButtonChangeCB (  )  [inline, virtual]

Destructor

template<class TClass>
ControllerButtonChangeCB< TClass >::ControllerButtonChangeCB ( const ControllerButtonChangeCB< TClass > &  src  )  [private]


Member Function Documentation

template<class TClass >
bool ControllerButtonChangeCB< TClass >::activate (  )  [inline, virtual]

Activates the callback

Implements AbstractControllerButtonChangeCB.

template<class TClass >
void ControllerButtonChangeCB< TClass >::call ( int  buttonIndex,
int  newButtonValue 
) const [inline, private, virtual]

Calls the stored callback function.

Implements AbstractControllerButtonChangeCB.

template<class TClass >
bool ControllerButtonChangeCB< TClass >::deactivate (  )  [inline, virtual]

Deactivates the callback

Implements AbstractControllerButtonChangeCB.

template<class TClass >
void ControllerButtonChangeCB< TClass >::invalidateController (  )  [inline, private, virtual]

Cleans the controller pointer and deactivates the callback (is called by the destructor of the controller)

Implements AbstractControllerButtonChangeCB.

template<class TClass >
bool ControllerButtonChangeCB< TClass >::isActive (  )  const [inline, virtual]

Returns if the callback is active

Implements AbstractControllerButtonChangeCB.

template<class TClass>
ControllerButtonChangeCB<TClass>& ControllerButtonChangeCB< TClass >::operator= ( const ControllerButtonChangeCB< TClass > &  rhs  )  [private]

template<class TClass >
void ControllerButtonChangeCB< TClass >::setSource ( ControllerInterface controller  )  [inline]

Sets the source of the callback (controller)

template<class TClass>
void ControllerButtonChangeCB< TClass >::setTarget ( TClass *  object,
void(TClass::*)(int buttonIndex, int newButtonValue)  function 
) [inline]

Sets the target of the callback (object and function which should be called)


Member Data Documentation

template<class TClass>
bool ControllerButtonChangeCB< TClass >::active [private]

template<class TClass>
ControllerInterface* ControllerButtonChangeCB< TClass >::controller [private]

template<class TClass>
void(TClass::* ControllerButtonChangeCB< TClass >::function)(int buttonIndex, int newButtonValue) [private]

template<class TClass>
TClass* ControllerButtonChangeCB< TClass >::object [private]


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

Generated on Wed Oct 20 16:11:55 2010 for inVRs by doxygen 1.5.8