00001 #ifndef _ots_VStateMachine_h_
00002 #define _ots_VStateMachine_h_
00003
00004 #include <string>
00005
00006 namespace ots
00007 {
00008
00009 class VStateMachine
00010 {
00011 public:
00012
00013 VStateMachine (void){;}
00014 virtual ~VStateMachine(void){;}
00015
00016
00017 virtual void configure (void) = 0;
00018 virtual void halt (void) = 0;
00019 virtual void pause (void) = 0;
00020 virtual void resume (void) = 0;
00021 virtual void start (std::string runNumber) = 0;
00022 virtual void stop (void) = 0;
00023
00024
00025 virtual bool running (void){return false;}
00026 virtual void paused (void){;}
00027 virtual void halted (void){;}
00028 virtual void configured(void){;}
00029 virtual void initial (void){;}
00030 virtual void inError (void){;}
00031
00032
00033 };
00034
00035 }
00036
00037 #endif