FREE::CallbackEvent< T > Class Template Reference
[Events]

Event object in f.r.e.e., used for every kind of callback... More...

#include <freEvents.h>

Inheritance diagram for FREE::CallbackEvent< T >:

Inheritance graph
FREE::CallbackEventBase
[legend]
Collaboration diagram for FREE::CallbackEvent< T >:

Collaboration graph
FREE::CallbackEventBase
[legend]

List of all members.

Public Types

typedef bool(T::* CallEvent )(CallbackType callbackID, CallbackFlagType flag, void *pData, void *pSender, long threadID)
typedef
itk::SmartPointer
< CallbackEvent< T > > 
Pointer

Public Member Functions

virtual const char * GetNameOfClass () const
virtual bool Execute (CallbackType callbackID, CallbackFlagType flag, void *pData, void *pSender, long threadID=0)

Static Public Member Functions

static Pointer New (T *pObject, CallEvent pE)

Protected Member Functions

 CallbackEvent (T *pObject, CallEvent pCE)

Private Attributes

T * m_Object
CallEvent m_CallEvent


Detailed Description

template<typename T>
class FREE::CallbackEvent< T >

Event object in f.r.e.e., used for every kind of callback...

Other than the EventBase this object is used by a class to pass a member function as a function pointer to allow a callback. The template T is the class which offers the function pointer. (This differentiation between type based Event and untyped EventBase is needed, because the call of member function always passes a hidden pointer (this-pointer), unlike a call of aglobal function).

This Event is used for callback based data retrieval or other situations where a part of f.r.e.e. should get the possibility to interact or make a request.

Definition at line 226 of file freEvents.h.


Member Typedef Documentation

template<typename T>
typedef bool(T::* FREE::CallbackEvent< T >::CallEvent)(CallbackType callbackID, CallbackFlagType flag, void *pData, void *pSender, long threadID)

Reimplemented from FREE::CallbackEventBase.

Definition at line 229 of file freEvents.h.

template<typename T>
typedef itk::SmartPointer<CallbackEvent<T> > FREE::CallbackEvent< T >::Pointer

Reimplemented from FREE::CallbackEventBase.

Definition at line 231 of file freEvents.h.


Constructor & Destructor Documentation

template<typename T>
FREE::CallbackEvent< T >::CallbackEvent ( T *  pObject,
CallEvent  pCE 
) [inline, protected]

Definition at line 241 of file freEvents.h.

References FREE::CallbackEvent< T >::m_CallEvent, and FREE::CallbackEvent< T >::m_Object.


Member Function Documentation

template<typename T>
static Pointer FREE::CallbackEvent< T >::New ( T *  pObject,
CallEvent  pE 
) [inline, static]

Definition at line 233 of file freEvents.h.

template<typename T>
virtual const char* FREE::CallbackEvent< T >::GetNameOfClass (  )  const [inline, virtual]

Reimplemented from FREE::CallbackEventBase.

Definition at line 234 of file freEvents.h.

template<typename T>
virtual bool FREE::CallbackEvent< T >::Execute ( CallbackType  callbackID,
CallbackFlagType  flag,
void *  pData,
void *  pSender,
long  threadID = 0 
) [inline, virtual]

This Event is used for callback based data retrieval or other situations where a part of f.r.e.e. should get the possibility to interact or make a request.

Parameters:
[in] callbackID Defines the callback type and so the meaning of flag and pData. Typical callbacks of f.r.e.e. are defined in freConstCallbackIDs.h, where the meaning of flag and pData are also explained.
[in] flag Possibility of an additional specification of the callback. Meaning depends on the callbackID.
[in] pData Void pointer to other data structures may be passed or wanted with the callback. Meaning and use depends on the callbackID.
[in] pSender Pointer to the object who called the event.
[in] threadID ID of the thread executing the event. By default this value is 0. This ID is not unique over the complete system, it should only be assumed that it is unique in the context of the sender.
Returns:
If return is true, pData is valid,

Reimplemented from FREE::CallbackEventBase.

Definition at line 263 of file freEvents.h.

References FREE::CallbackEvent< T >::m_CallEvent, and FREE::CallbackEvent< T >::m_Object.


Member Data Documentation

template<typename T>
T* FREE::CallbackEvent< T >::m_Object [private]

Definition at line 234 of file freEvents.h.

Referenced by FREE::CallbackEvent< T >::CallbackEvent(), and FREE::CallbackEvent< T >::Execute().

template<typename T>
CallEvent FREE::CallbackEvent< T >::m_CallEvent [private]

Reimplemented from FREE::CallbackEventBase.

Definition at line 238 of file freEvents.h.

Referenced by FREE::CallbackEvent< T >::CallbackEvent(), and FREE::CallbackEvent< T >::Execute().


The documentation for this class was generated from the following file:
Generated at Sat Oct 13 18:17:26 2007 for f.r.e.e. - Flexible Registration and Evaluation Engine by doxygen 1.5.3 written by Dimitri van Heesch, © 1997-2000