00001
00002 #ifndef INCLUDED_EventGeneratorBase_h_
00003 #define INCLUDED_EventGeneratorBase_h_
00004
00005 #include "Behaviors/BehaviorBase.h"
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 class EventGeneratorBase : public BehaviorBase {
00022 public:
00023
00024
00025
00026
00027 virtual ~EventGeneratorBase() {}
00028
00029 virtual void DoStart();
00030
00031 virtual void DoStop();
00032
00033
00034
00035
00036
00037
00038 virtual void processEvent(const EventBase& event);
00039
00040
00041 virtual EventBase::EventGeneratorID_t getGeneratorID() { return myGenID; }
00042
00043 virtual void setGeneratorID(EventBase::EventGeneratorID_t gid) { myGenID=gid; }
00044
00045
00046 virtual unsigned int getSourceID() { return mySourceID; }
00047
00048 virtual void setSourceID(unsigned int sid) { mySourceID=sid; }
00049
00050
00051 virtual unsigned int getListenSourceID() const { return srcSourceID; }
00052
00053 virtual EventBase::EventGeneratorID_t getListenGeneratorID() const { return srcGenID; }
00054
00055 virtual void setAutoListen(EventBase::EventGeneratorID_t gid, unsigned int sid);
00056
00057
00058 virtual void unsetAutoListen();
00059
00060 protected:
00061
00062
00063 EventGeneratorBase(const std::string& name, EventBase::EventGeneratorID_t mgid, unsigned int msid)
00064 : BehaviorBase(name), myGenID(mgid), mySourceID(msid), autoListen(false), isListening(false), srcGenID(EventBase::unknownEGID), srcSourceID(0)
00065 {}
00066 EventGeneratorBase(const std::string& name, EventBase::EventGeneratorID_t mgid, unsigned int msid,EventBase::EventGeneratorID_t srcgid, unsigned int srcsid)
00067 : BehaviorBase(name), myGenID(mgid), mySourceID(msid), autoListen(true), isListening(false), srcGenID(srcgid), srcSourceID(srcsid)
00068 {}
00069 EventGeneratorBase(const std::string& classname, const std::string& instancename, EventBase::EventGeneratorID_t mgid, unsigned int msid)
00070 : BehaviorBase(classname,instancename), myGenID(mgid), mySourceID(msid), autoListen(false), isListening(false), srcGenID(EventBase::unknownEGID), srcSourceID(0)
00071 {}
00072 EventGeneratorBase(const std::string& classname, const std::string& instancename, EventBase::EventGeneratorID_t mgid, unsigned int msid,EventBase::EventGeneratorID_t srcgid, unsigned int srcsid)
00073 : BehaviorBase(classname,instancename), myGenID(mgid), mySourceID(msid), autoListen(true), isListening(false), srcGenID(srcgid), srcSourceID(srcsid)
00074 {}
00075
00076
00077 EventBase::EventGeneratorID_t myGenID;
00078 unsigned int mySourceID;
00079 bool autoListen;
00080 bool isListening;
00081 EventBase::EventGeneratorID_t srcGenID;
00082 unsigned int srcSourceID;
00083 };
00084
00085
00086
00087
00088
00089
00090
00091
00092
00093
00094
00095
00096 #endif