9 #ifndef DtMessageCallbackManager_H_
10 #define DtMessageCallbackManager_H_
19 #include <vlutil/vlExceptions.h>
34 template <
typename T_Message,
typename T_MessageKind>
102 #include "messageCallbackManager.inl"
void(* DtCallbackFcn)(const T_Message &msg, void *userData)
Definition: messageCallbackManager.h:39
void addMsgCallback(T_MessageKind k, DtCallbackFcn fcn, void *userData)
Add a callback function for the given message kind and user data.
std::list< DtCallbackInfo > DtCallbackList
A callback function list.
Definition: messageCallbackManager.h:47
The DtMessageCallbackManager template can be instantiated to declare a message callback manager for a...
Definition: messageCallbackManager.h:35
void removeWildcardMsgCallback(DtCallbackFcn fcn, void *userData)
Remove a function callback for the given user data.
std::pair< DtCallbackFcn, void * > DtCallbackInfo
The callback function and user data passed to it.
Definition: messageCallbackManager.h:45
void addWildcardMsgCallback(DtCallbackFcn fcn, void *userData)
/brief Add a function callback for the given user data.
int numCallbacks(T_MessageKind k)
Return the number of callbacks registered for the msg kind.
~DtMessageCallbackManager()
Destructor.
void processMsg(const T_Message &msg) const
Call the callbacks registered for the msg's kind.
std::map< T_MessageKind, DtCallbackList > DtCallbackMap
A map from message kind to a list of callback functions.
Definition: messageCallbackManager.h:49
DtMessageCallbackManager()
Constructor - Default.
DtCallbackMap myCallbacks
A map of message kinds to callback list.
Definition: messageCallbackManager.h:95
DtCallbackList myWildcardCallbacks
A list of callbacks processed for all message kinds.
Definition: messageCallbackManager.h:98
DtMessageCallbackManager & operator=(const DtMessageCallbackManager &orig)
Operator - Assignment.
void removeMsgCallback(T_MessageKind k, DtCallbackFcn fcn, void *userData)
Remove a callback function for the given message kind and user data.