00001
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00033
00034 #ifndef GROOVX_VISX_RESPONSE_H_UTC20050626084016_DEFINED
00035 #define GROOVX_VISX_RESPONSE_H_UTC20050626084016_DEFINED
00036
00037 #include "rutz/value.h"
00038
00040 class Response : public rutz::value
00041 {
00042 public:
00043 static const int INVALID_VALUE = -1;
00044 static const int ALWAYS_CORRECT = -2;
00045
00047
00049 static const int IGNORE = -3;
00050
00051 Response(int v = INVALID_VALUE, int m = -1) :
00052 itsVal(v), itsMsec(m)
00053 {}
00054
00055 virtual ~Response() throw();
00056
00057 virtual rutz::fstring value_typename() const;
00058
00059 virtual void print_to(std::ostream& os) const;
00060 virtual void scan_from(std::istream& is);
00061
00062 bool shouldIgnore() const { return itsVal == IGNORE; }
00063
00064 bool is_valid() const { return (itsVal >= 0); }
00065
00066 bool matchesCorrectValue(int cval) const
00067 {
00068 return (cval == ALWAYS_CORRECT) || (itsVal == cval);
00069 }
00070
00071 int val() const { return itsVal; }
00072 int msec() const { return itsMsec; }
00073
00074 void setVal(int new_val) { itsVal = new_val; }
00075 void setMsec(int new_val) { itsMsec = new_val; }
00076
00077 private:
00078 int itsVal;
00079 int itsMsec;
00080 };
00081
00082 static const char __attribute__((used)) vcid_groovx_visx_response_h_utc20050626084016[] = "$Id: response.h 10065 2007-04-12 05:54:56Z rjpeters $ $HeadURL: file:
00083 #endif // !GROOVX_VISX_RESPONSE_H_UTC20050626084016_DEFINED