00001 #ifndef CALIBRATIONCONTROLLERSTATUS_H 00002 #define CALIBRATIONCONTROLLERSTATUS_H 00003 00004 #include <is/info.h> 00005 00006 #include <string> 00007 00008 00009 // <<BeginUserCode>> 00010 00011 // <<EndUserCode>> 00018 class CalibrationControllerStatus : public ISInfo { 00019 public: 00020 enum status_E {LOADED,INCONTROL,BUSY,ERROR}; 00021 00022 00025 status_E status; 00026 00029 std::string updateOption; 00030 00033 std::string currentSequence; 00034 00037 std::string currentTest; 00038 00041 unsigned long currentScanIndex; 00042 00043 00044 static const ISType & type() { 00045 static const ISType type_ = CalibrationControllerStatus( ).ISInfo::type(); 00046 return type_; 00047 } 00048 00049 CalibrationControllerStatus( ) 00050 : ISInfo( "CalibrationControllerStatus" ) 00051 { 00052 initialize(); 00053 } 00054 00055 ~CalibrationControllerStatus(){ 00056 00057 // <<BeginUserCode>> 00058 00059 // <<EndUserCode>> 00060 } 00061 00062 protected: 00063 CalibrationControllerStatus( const std::string & type ) 00064 : ISInfo( type ) 00065 { 00066 initialize(); 00067 } 00068 00069 void publishGuts( ISostream & out ){ 00070 out << status << updateOption << currentSequence << currentTest << currentScanIndex; 00071 } 00072 00073 void refreshGuts( ISistream & in ){ 00074 in >> (int&)status >> updateOption >> currentSequence >> currentTest >> currentScanIndex; 00075 } 00076 00077 private: 00078 void initialize() 00079 { 00080 status = LOADED; 00081 updateOption = "UPDATE"; 00082 00083 // <<BeginUserCode>> 00084 00085 // <<EndUserCode>> 00086 } 00087 00088 00089 // <<BeginUserCode>> 00090 00091 // <<EndUserCode>> 00092 }; 00093 00094 // <<BeginUserCode>> 00095 00096 // <<EndUserCode>> 00097 #endif // CALIBRATIONCONTROLLERSTATUS_H