]>
Commit | Line | Data |
---|---|---|
f565d89d | 1 | #ifndef ALIEMCALCALIBDATA_H |
2 | #define ALIEMCALCALIBDATA_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | /* $Id$ */ | |
8 | ||
9 | //////////////////////////////////////////////// | |
df5cea6b | 10 | // |
11 | // class for EMCAL calibration // | |
12 | // | |
f565d89d | 13 | //////////////////////////////////////////////// |
14 | ||
15 | #include "TNamed.h" | |
0c5b726e | 16 | #include "AliEMCALGeoParams.h" |
f565d89d | 17 | |
18 | class AliEMCALCalibData: public TNamed { | |
19 | ||
20 | public: | |
aaa41982 | 21 | |
f565d89d | 22 | AliEMCALCalibData(); |
23 | AliEMCALCalibData(const char* name); | |
24 | AliEMCALCalibData(const AliEMCALCalibData &calibda); | |
25 | AliEMCALCalibData& operator= (const AliEMCALCalibData &calibda); | |
aaa41982 | 26 | virtual ~AliEMCALCalibData() { ; } |
27 | ||
28 | void Reset(); | |
29 | void Print(Option_t *option = "") const; | |
df5cea6b | 30 | |
63b315c5 | 31 | // All indexes start from 0! |
df5cea6b | 32 | Float_t GetADCchannel (Int_t module, Int_t column, Int_t row) const; |
3730689d | 33 | Float_t GetADCchannelOnline(Int_t module, Int_t column, Int_t row) const; |
df5cea6b | 34 | Float_t GetADCchannelDecal (Int_t module, Int_t column, Int_t row) const; |
35 | Float_t GetADCpedestal (Int_t module, Int_t column, Int_t row) const; | |
df5cea6b | 36 | Float_t GetTimeChannelDecal(Int_t module, Int_t column, Int_t row) const; |
aaa41982 | 37 | Float_t GetTimeChannel (Int_t module, Int_t column, Int_t row, Int_t bc) const; |
63c22917 | 38 | |
c7e54b0e | 39 | Float_t GetADCchannelRef () const { return fADCchannelRef ; } |
df5cea6b | 40 | |
aaa41982 | 41 | void SetADCchannel (Int_t module, Int_t column, Int_t row, Float_t value); |
3730689d | 42 | void SetADCchannelOnline(Int_t module, Int_t column, Int_t row, Float_t value); |
aaa41982 | 43 | void SetADCchannelDecal (Int_t module, Int_t column, Int_t row, Float_t value); |
44 | void SetADCpedestal (Int_t module, Int_t column, Int_t row, Float_t value); | |
45 | void SetTimeChannelDecal(Int_t module, Int_t column, Int_t row, Float_t value); | |
46 | void SetTimeChannel (Int_t module, Int_t column, Int_t row, Int_t bc, Float_t value); | |
63c22917 | 47 | |
aaa41982 | 48 | void SetADCchannelRef (Float_t value) { fADCchannelRef = value ; } |
f565d89d | 49 | |
56d10452 | 50 | static const int fgkECALModules = 12; // number of modules in EMCAL |
51 | static const int fgkDCALModules = 10; // number of modules in DCAL 8+2 in possible future | |
52 | ||
f565d89d | 53 | protected: |
aaa41982 | 54 | |
3730689d | 55 | Float_t fADCchannelRef ; // base value of the ADC channel set from cosmics calibration, not to be used, instead use fADCchannelOnline |
aaa41982 | 56 | |
56d10452 | 57 | Float_t fADCchannel [fgkECALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows] ; // width of one ADC channel in GeV ([mod][col][row]) |
58 | Float_t fADCchannelOnline [fgkECALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows] ; // width of one ADC channel in GeV obtained from the voltage settings online | |
59 | Float_t fADCchannelDecal [fgkECALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows] ; // decalibrate width of one ADC channel in GeV ([mod][col][row]) | |
60 | Float_t fADCpedestal [fgkECALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows] ; // value of the ADC pedestal ([mod][col][row]), not used | |
61 | Float_t fTimeChannelDecal [fgkECALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows] ; // time shift of one ADC channel ([mod][col][row]) | |
62 | Float_t fTimeChannel [fgkECALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows][4] ; // time shift of one ADC channel ([mod][col][row][bunch crossing number]) | |
63 | ||
64 | // Add specific arrays for DCal to avoid backward incompatibilities, | |
65 | // dimension of DCal SM is smaller than EMCAL but assume the same to avoid complications due to partial SM | |
66 | Float_t fADCchannelDCAL [fgkDCALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows] ; // width of one ADC channel in GeV ([mod][col][row]) | |
67 | Float_t fADCchannelOnlineDCAL[fgkDCALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows] ; // width of one ADC channel in GeV obtained from the voltage settings online | |
68 | Float_t fADCchannelDecalDCAL [fgkDCALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows] ; // decalibrate width of one ADC channel in GeV ([mod][col][row]) | |
69 | Float_t fADCpedestalDCAL [fgkDCALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows] ; // value of the ADC pedestal ([mod][col][row]), not used | |
70 | Float_t fTimeChannelDecalDCAL[fgkDCALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows] ; // time shift of one ADC channel ([mod][col][row]) | |
71 | Float_t fTimeChannelDCAL [fgkDCALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows][4] ; // time shift of one ADC channel ([mod][col][row][bunch crossing number]) | |
63c22917 | 72 | |
56d10452 | 73 | |
74 | ClassDef(AliEMCALCalibData,6) // EMCAL Calibration data | |
f565d89d | 75 | }; |
76 | ||
77 | #endif |