#ifndef CALIBTRK1_EVENT_H #define CALIBTRK1_EVENT_H #include "SubPacket.h" namespace pamela { /** * CalibTrk1 data Wrapper. * * The pamela::CalibTrk1 packet is the answer to a calibration session of half-sight of Tracker. * The pedestal for each ladder is calculated dividing the 1024 strips composing each ladder in * blocks of 128 strips each. The mean of the sum of the blocks divided by 4 give the ped_lX value * for each ladder. */ class CalibTrk1Event: public pamela::SubPacket { private: public: CalibTrk1Event(void); /** * The acquisition mode of the Tracker; each element concerns a different plane. */ int DAQmode[6]; /** * The DSP number of the Tracker; each element concerns a different plane. * If the element is 0 the DSP is not working. */ int DSPnumber[6]; /** * The Calibration number; each element concerns a different plane. */ int calibnumber[6]; /** * Counter of event?s number used for calibration; each element concerns a different plane. */ int ncalib_event[6]; /** * Pedestal values for Ladder1; each element concerns a different plane. */ int ped_l1[6]; /** * Pedestal values for Ladder2; each element concerns a different plane. */ int ped_l2[6]; /** * Pedestal values for Ladder3; each element concerns a different plane. */ int ped_l3[6]; /** * The Sigma values for the ped_l1 values; each element concerns a different plane. */ int sig_l1[6]; /** * The Sigma values for the ped_l2 values; each element concerns a different plane. */ int sig_l2[6]; /** * The Sigma values for the ped_l3 values; each element concerns a different plane. */ int sig_l3[6]; /** * The number of bad strips for the ped_l1 values; each element concerns a different plane. */ int nbad_l1[6]; /** * The number of bad strips for the ped_l2 values; each element concerns a different plane. */ int nbad_l2[6]; /** * The number of bad strips for the ped_l3 values; each element concerns a different plane. */ int nbad_l3[6]; /** * Calibration validity check; each element concerns a different plane. * Description:
* 1: The calibration is bad.
* 0: The calibration is ok.
*/ int cal_flag[6]; /** * The value of the pedestal for each strip (3072 strips in 6 planes). */ float DSPped_par[6][3072]; /** * The value of the Sigma for each strip (3072 strips in 6 planes). */ float DSPsig_par[6][3072]; /** * Identify which strip is bad (3072 strips in 6 planes). */ int DSPbad_par[6][3072]; UINT8 unpackError; ClassDef(CalibTrk1Event, 3) }; } #endif /* CALIBTRK1_EVENT_H */