00001
00002
00003
00004 #ifndef EIGER_DETECTOR_H
00005 #define EIGER_DETECTOR_H
00006
00007 using namespace std;
00008
00009
00010
00022 #include "slsDetector.h"
00023
00024 class eigerDetector : public slsDetector{
00025
00026
00027
00028 public:
00029
00030
00031
00038 eigerDetector(int id=0);
00039
00041 ~eigerDetector(){};
00042
00043
00044
00052 sls_detector_module* readTrimFile(string fname, sls_detector_module* myMod=NULL);
00053
00062 int writeTrimFile(string fname, sls_detector_module mod);
00063
00071 int writeTrimFile(string fname, int imod);
00072
00073
00087 int writeDataFile(string fname, float *data, float *err=NULL, float *ang=NULL, char dataformat='f', int nch=-1);
00088
00095 int writeDataFile(string fname, int *data);
00096
00110 int readDataFile(string fname, float *data, float *err=NULL, float *ang=NULL, char dataformat='f', int nch=0);
00111
00118 int readDataFile(string fname, int *data);
00119
00134 int readCalibrationFile(string fname, float &gain, float &offset);
00135
00136
00144 int writeCalibrationFile(string fname, float gain, float offset);
00145
00146
00147
00148
00149
00150
00151
00152
00158 float* decodeData(int *datain);
00159
00160
00161
00162
00163
00164 private:
00165
00166
00167 };
00168
00169
00170 #endif