00001
00002
00003
00004
00005
00006
00007
00008
00009 #include "FileReadoutFormat/CalibrationParametersRecord.h"
00010
00011 #include "FileReadoutFormat/FileTraits.h"
00012
00013 using DybDaq::ByteBuffer;
00014 using DybDaq::CalibrationParametersRecord;
00015 using DybDaq::FileTraits;
00016
00017 CalibrationParametersRecord::CalibrationParametersRecord(const unsigned int detector,
00018 const unsigned int adNumber,
00019 const unsigned int sourceA,
00020 const unsigned int zPositionA,
00021 const unsigned int sourceB,
00022 const unsigned int zPositionB,
00023 const unsigned int sourceC,
00024 const unsigned int zPositionC,
00025 const unsigned int led1,
00026 const unsigned int led2,
00027 const unsigned int led1Voltage,
00028 const unsigned int led2Voltage,
00029 const unsigned int duration,
00030 const unsigned int ledFrequency,
00031 const unsigned int ledPulseSeparation,
00032 const unsigned int ltbMode,
00033 const unsigned int motorPower,
00034 const unsigned int cameraPower,
00035 const unsigned int ledFlashing,
00036 const FileTraits& traits) :
00037 FileBuffer(new char[traits.recordSize(FileTraits::kCalibrationParametersRecord) * kBytesInInt],
00038 traits,
00039 FileTraits::kCalibrationParametersRecord) {
00040 setDetector(detector) ;
00041 setAdNumber(adNumber) ;
00042 setSourceA(sourceA) ;
00043 setZPositionA(zPositionA) ;
00044 setSourceB(sourceB) ;
00045 setZPositionB(zPositionB) ;
00046 setSourceC(sourceC) ;
00047 setZPositionC(zPositionC) ;
00048 setLed1(led1) ;
00049 setLed2(led2) ;
00050 setLed1Voltage(led1Voltage) ;
00051 setLed2Voltage(led2Voltage) ;
00052 setDuration(duration) ;
00053 setLedFrequency(ledFrequency) ;
00054 setLedPulseSeparation(ledPulseSeparation) ;
00055 setLtbMode(ltbMode) ;
00056 setMotorPower(motorPower) ;
00057 setCameraPower(cameraPower) ;
00058 setLedFlashing(ledFlashing) ;
00059 }
00060
00061 CalibrationParametersRecord::CalibrationParametersRecord(const ByteBuffer& byteBuffer,
00062 const FileTraits& traits) :
00063 FileBuffer(byteBuffer,
00064 traits) {
00065 }
00066
00067 CalibrationParametersRecord::~CalibrationParametersRecord() {
00068 }
00069
00070 bool CalibrationParametersRecord::isMarked(unsigned int marker) const {
00071 return FileTraits::kCalibrationParametersRecord == marker;
00072 }
00073
00074 unsigned int CalibrationParametersRecord::detector() const {
00075 return readUnsignedInt(FileTraits::kCalibrationDetectorId);
00076 }
00077
00078 unsigned int CalibrationParametersRecord::axis() const {
00079 return readUnsignedInt(FileTraits::kCalibrationAxis);
00080 }
00081
00082 unsigned int CalibrationParametersRecord::source() const {
00083 return readUnsignedInt(FileTraits::kCalibrationSourceId);
00084 }
00085
00086 unsigned int CalibrationParametersRecord::zPosition() const {
00087 return readUnsignedInt(FileTraits::kCalibrationZPosition);
00088 }
00089
00090 unsigned int CalibrationParametersRecord::duration() const {
00091 return readUnsignedInt(FileTraits::kCalibrationDuration);
00092 }
00093
00094 unsigned int CalibrationParametersRecord::ledFrequency() const {
00095 return readUnsignedInt(FileTraits::kCalibrationLedFrequency);
00096 }
00097
00098 unsigned int CalibrationParametersRecord::ltbMode() const {
00099 return readUnsignedInt(FileTraits::kCalibrationLtbMode);
00100 }
00101
00102 unsigned int CalibrationParametersRecord::formatComponent() const {
00103 return FileTraits::kCalibrationParametersRecord;
00104 }
00105
00106
00107
00108 unsigned int CalibrationParametersRecord::adNumber() const {
00109 return readUnsignedInt(FileTraits::kCalibrationAdNumber);
00110 }
00111
00112 unsigned int CalibrationParametersRecord::led1() const {
00113 return readUnsignedInt(FileTraits::kCalibrationLedNumber1);
00114 }
00115
00116 unsigned int CalibrationParametersRecord::led2() const {
00117 return readUnsignedInt(FileTraits::kCalibrationLedNumber2);
00118 }
00119
00120 unsigned int CalibrationParametersRecord::led1Voltage() const {
00121 return readUnsignedInt(FileTraits::kCalibrationLedVoltage1);
00122 }
00123
00124 unsigned int CalibrationParametersRecord::led2Voltage() const {
00125 return readUnsignedInt(FileTraits::kCalibrationLedVoltage2);
00126 }
00127
00128 unsigned int CalibrationParametersRecord::ledPulseSeparation() const {
00129 return readUnsignedInt(FileTraits::kCalibrationLedPulseSeparation);
00130 }
00131
00132
00133
00134 unsigned int CalibrationParametersRecord::sourceA() const {
00135 return readUnsignedInt(FileTraits::kCalibrationSourceIdA);
00136 }
00137
00138 unsigned int CalibrationParametersRecord::zPositionA() const {
00139 return readUnsignedInt(FileTraits::kCalibrationZPositionA);
00140 }
00141
00142 unsigned int CalibrationParametersRecord::sourceB() const {
00143 return readUnsignedInt(FileTraits::kCalibrationSourceIdB);
00144 }
00145
00146 unsigned int CalibrationParametersRecord::zPositionB() const {
00147 return readUnsignedInt(FileTraits::kCalibrationZPositionB);
00148 }
00149
00150 unsigned int CalibrationParametersRecord::sourceC() const {
00151 return readUnsignedInt(FileTraits::kCalibrationSourceIdC);
00152 }
00153
00154 unsigned int CalibrationParametersRecord::zPositionC() const {
00155 return readUnsignedInt(FileTraits::kCalibrationZPositionC);
00156 }
00157
00158 unsigned int CalibrationParametersRecord::motorPower() const {
00159 return readUnsignedInt(FileTraits::kCalibrationMotorPower);
00160 }
00161
00162 unsigned int CalibrationParametersRecord::cameraPower() const {
00163 return readUnsignedInt(FileTraits::kCalibrationCameraPower);
00164 }
00165
00166 unsigned int CalibrationParametersRecord::ledFlashing() const {
00167 return readUnsignedInt(FileTraits::kCalibrationLedFlashing);
00168 }
00169
00170
00171 void CalibrationParametersRecord::setDetector(const unsigned int detector) {
00172 writeField(detector,
00173 FileTraits::kCalibrationDetectorId);
00174 }
00175
00176 void CalibrationParametersRecord::setAxis(const unsigned int axis) {
00177 writeField(axis,
00178 FileTraits::kCalibrationAxis);
00179 }
00180
00181 void CalibrationParametersRecord::setSource(const unsigned int source) {
00182 writeField(source,
00183 FileTraits::kCalibrationSourceId);
00184 }
00185
00186 void CalibrationParametersRecord::setZPosition(const unsigned int zPosition) {
00187 writeField(zPosition,
00188 FileTraits::kCalibrationZPosition);
00189 }
00190
00191 void CalibrationParametersRecord::setDuration(const unsigned int duration) {
00192 writeField(duration,
00193 FileTraits::kCalibrationDuration);
00194 }
00195
00196 void CalibrationParametersRecord::setLedFrequency(const unsigned int ledFrequency) {
00197 writeField(ledFrequency,
00198 FileTraits::kCalibrationLedFrequency);
00199 }
00200
00201 void CalibrationParametersRecord::setLtbMode(const unsigned int ltbMode) {
00202 writeField(ltbMode,
00203 FileTraits::kCalibrationLtbMode);
00204 }
00205
00206
00207
00208 void CalibrationParametersRecord::setAdNumber(const unsigned int adNumber) {
00209 writeField(adNumber,
00210 FileTraits::kCalibrationAdNumber);
00211 }
00212
00213 void CalibrationParametersRecord::setLed1(const unsigned int led1) {
00214 writeField(led1,
00215 FileTraits::kCalibrationLedNumber1);
00216 }
00217
00218 void CalibrationParametersRecord::setLed2(const unsigned int led2) {
00219 writeField(led2,
00220 FileTraits::kCalibrationLedNumber2);
00221 }
00222
00223 void CalibrationParametersRecord::setLed1Voltage(const unsigned int led1Voltage) {
00224 writeField(led1Voltage,
00225 FileTraits::kCalibrationLedVoltage1);
00226 }
00227
00228 void CalibrationParametersRecord::setLed2Voltage(const unsigned int led2Voltage) {
00229 writeField(led2Voltage,
00230 FileTraits::kCalibrationLedVoltage2);
00231 }
00232
00233 void CalibrationParametersRecord::setLedPulseSeparation(const unsigned int ledPulseSeparation) {
00234 writeField(ledPulseSeparation,
00235 FileTraits::kCalibrationLedPulseSeparation);
00236 }
00237
00238
00239
00240 void CalibrationParametersRecord::setSourceA(const unsigned int sourceA) {
00241 writeField(sourceA,
00242 FileTraits::kCalibrationSourceIdA);
00243 }
00244
00245 void CalibrationParametersRecord::setZPositionA(const unsigned int zPositionA) {
00246 writeField(zPositionA,
00247 FileTraits::kCalibrationZPositionA);
00248 }
00249
00250 void CalibrationParametersRecord::setSourceB(const unsigned int sourceB) {
00251 writeField(sourceB,
00252 FileTraits::kCalibrationSourceIdB);
00253 }
00254
00255 void CalibrationParametersRecord::setZPositionB(const unsigned int zPositionB) {
00256 writeField(zPositionB,
00257 FileTraits::kCalibrationZPositionB);
00258 }
00259
00260 void CalibrationParametersRecord::setSourceC(const unsigned int sourceC) {
00261 writeField(sourceC,
00262 FileTraits::kCalibrationSourceIdC);
00263 }
00264
00265 void CalibrationParametersRecord::setZPositionC(const unsigned int zPositionC) {
00266 writeField(zPositionC,
00267 FileTraits::kCalibrationZPositionC);
00268 }
00269
00270 void CalibrationParametersRecord::setMotorPower(const unsigned int motorPower) {
00271 writeField(motorPower,
00272 FileTraits::kCalibrationMotorPower);
00273 }
00274
00275 void CalibrationParametersRecord::setCameraPower(const unsigned int cameraPower) {
00276 writeField(cameraPower,
00277 FileTraits::kCalibrationCameraPower);
00278 }
00279
00280 void CalibrationParametersRecord::setLedFlashing(const unsigned int ledFlashing) {
00281 writeField(ledFlashing,
00282 FileTraits::kCalibrationLedFlashing);
00283 }
00284
00285