#include <backcaller.h>
Inherited by Base, MeasureAdapter, and WiredController.
Inheritance diagram for BackCaller:

Public Types | |
| typedef unsigned long | CallbackableType |
Public Member Functions | |
| BackCaller () | |
| virtual | ~BackCaller () |
| virtual void | addCallbackable (Callbackable *callbackableInstance, CallbackableType type=BackCaller::DEFAULT_CALLBACKABLE_TYPE) |
| Adds a Callbackable instance to this caller instance. | |
| virtual void | removeCallbackable (Callbackable *callbackableInstance, CallbackableType type=BackCaller::DEFAULT_CALLBACKABLE_TYPE) |
| Removes a Callbackable instance from this caller instance. | |
| virtual void | removeAllCallbackables (CallbackableType type) |
| Removes all Callbackable instances from this caller instance. | |
| virtual void | callBack (CallbackableType type=BackCaller::DEFAULT_CALLBACKABLE_TYPE) |
| Calls all registered callbackable classes of the determined type. | |
| virtual void | callBackQMP (CallbackableType type=BackCaller::DEFAULT_CALLBACKABLE_TYPE) |
| Calls all registered callbackable classes of the determined type. | |
Static Public Attributes | |
| static const CallbackableType | DEFAULT_CALLBACKABLE_TYPE = 0 |
| This is the default Callbackable type. | |
Classes | |
| struct | CallbackableTypeHash |
If a class implements this class, just use the function callBack which calls all registered callbackable classes. If you use different callbackable pools, just use the overloaded functions callBack(CallbackableType type), addCallbackable(CallbackableType, Callbackable* cb) and removeCallbackable(CallbackableType, Callbackable* cb).
| typedef unsigned long CallbackableType |
| BackCaller | ( | ) |
| ~BackCaller | ( | ) | [virtual] |
| void addCallbackable | ( | Callbackable * | callbackableInstance, | |
| CallbackableType | type = BackCaller::DEFAULT_CALLBACKABLE_TYPE | |||
| ) | [virtual] |
Adds a Callbackable instance to this caller instance.
| type | the desired CallbackableType of the Callbackable class. | |
| callbackableInstance | the instance to add |
| void callBack | ( | CallbackableType | type = BackCaller::DEFAULT_CALLBACKABLE_TYPE |
) | [virtual] |
Calls all registered callbackable classes of the determined type.
This is done by Callbackable::doOnCallback(CallbackableType type). You can make this function private/protected if you like.
| type | the CallbackableType of the Callbackable classes. |
| void callBackQMP | ( | CallbackableType | type = BackCaller::DEFAULT_CALLBACKABLE_TYPE |
) | [virtual] |
Calls all registered callbackable classes of the determined type.
This is done by Callbackable::doOnCallback(CallbackableType type). This function uses QUICKMP in order to parallelise the callbacks. Remember that there is only shared the used CallbackableList. So if you have other variables/objects to share, implement your own version. You can make this function private/protected if you like.
| type | the CallbackableType of the Callbackable classes. |
| void removeAllCallbackables | ( | CallbackableType | type | ) | [virtual] |
Removes all Callbackable instances from this caller instance.
| type | the CallbackableType of the Callbackable class to be removed. |
| void removeCallbackable | ( | Callbackable * | callbackableInstance, | |
| CallbackableType | type = BackCaller::DEFAULT_CALLBACKABLE_TYPE | |||
| ) | [virtual] |
Removes a Callbackable instance from this caller instance.
| type | the CallbackableType of the Callbackable class. | |
| callbackableInstance |
const CallbackableType DEFAULT_CALLBACKABLE_TYPE = 0 [static] |
This is the default Callbackable type.
If you derive from BackCaller, just define your own CallbackableTypes.
1.4.7