#include <Dispatcher.h>
Inheritance diagram for Eris::Dispatcher:
Public Member Functions | |
Dispatcher (const std::string &nm) | |
virtual Dispatcher * | addSubdispatch (Dispatcher *sub, const std::string data=std::string())=0 |
virtual void | rmvSubdispatch (Dispatcher *sub)=0 |
virtual Dispatcher * | getSubdispatch (const std::string &nm)=0 |
locate a child dispatcher by name (NULL if not found) | |
virtual bool | dispatch (DispatchContextDeque &dq)=0 |
primary invocation method; called by the parent node when a message is received | |
virtual bool | empty ()=0 |
const std::string & | getName () const |
virtual const std::string & | getData () const |
void | addRef () |
void | decRef () |
Static Public Member Functions | |
std::string | getAnonymousSuffix (Dispatcher *d) |
void | enter () |
void | exit () |
Protected Member Functions | |
virtual void | purge ()=0 |
Protected Attributes | |
const std::string | _name |
Friends | |
class | StdBranchDispatcher |
class | ClassDispatcher |
Derived dispatchers accept or reject messages by exmaning various fields, such as the type, class or destination. The leaves of the tree perform some useful action when a message is fully matched.