00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef __CMDR_EVENT_H__
00013 #define __CMDR_EVENT_H__
00014
00015 #include <art_nav/FSMevent.h>
00016
00017 class CmdrEvent: FSMevent
00018 {
00019 public:
00020 typedef enum
00021 {
00022 Blocked,
00023 Done,
00024 EnterLane,
00025 Fail,
00026 None,
00027 Replan,
00028 Wait,
00029 N_events
00030 } event_t;
00031
00032
00033 const char *Name()
00034 {
00035 static const char *event_name[] =
00036 {
00037 "Blocked",
00038 "Done",
00039 "EnterLane",
00040 "Fail",
00041 "None",
00042 "Replan",
00043 "Wait",
00044 };
00045 return event_name[event];
00046 }
00047
00048 CmdrEvent()
00049 {
00050 this->event = None;
00051 }
00052
00053 CmdrEvent(event_t val)
00054 {
00055 this->event = val;
00056 }
00057
00058 event_t Value(void)
00059 {
00060 return this->event;
00061 }
00062
00063 void operator=(event_t newval)
00064 {
00065 this->event = newval;
00066 }
00067
00068 void operator=(CmdrEvent newval)
00069 {
00070 this->event = newval.event;
00071 }
00072
00073 private:
00074 event_t event;
00075 };
00076
00077 #endif // __CMDR_EVENT_H__