00001 00018 #ifndef CDATA_H 00019 #define CDATA_H 00020 00021 /* system includes */ 00022 #include <vector> 00023 00024 /* my includes */ 00025 //#include "gloveServer.hh" 00026 00027 #include "calibrationData.h" 00028 00036 //#define numSensors 22 00037 00038 00039 class cData { 00040 public: 00041 cData(); 00042 ~cData(); 00043 00044 typedef std::pair<double, double> fulcrum; 00045 typedef std::vector<fulcrum> sensorCal; 00046 typedef std::vector<sensorCal> trackerCal; 00047 00048 bool connectToTrackerServer(std::string trackerServerName); 00049 00050 void reset(); 00051 00052 unsigned int getNumTotalSteps(); 00053 unsigned int getCurrentStep(); 00054 std::string getTextForStep(int); 00055 std::string getPicForStep(int); 00056 bool calibrate(); 00057 00058 trackerCal getCalibration(); 00059 bool setCalibration(trackerCal g); 00060 00061 std::vector<double> calibrateNextStep(); 00062 00063 bool checkConsistency(std::string &print); 00064 bool saveCalibration(std::string fileName); 00065 bool openCalibration(std::string fileName); 00066 bool tellServerLoadCurrentCalibration(); 00067 // tracker::trackerServer_ptr myTracker; 00068 00069 private: 00070 00071 trackerCal computeCalibration(std::vector<std::vector<double> > r); 00072 00074 std::vector<std::vector<double> > rawData; 00075 00077 trackerCal data; 00078 00080 unsigned int numTotalSteps; 00081 unsigned int currStep; 00082 00084 00085 }; 00086 00087 #endif /* CDATA_H */