Line data Source code
1 : #ifndef ALIEMCALCALIBTIME_H
2 : #define ALIEMCALCALIBTIME_H
3 :
4 : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 : * See cxx source for full Copyright notice */
6 :
7 : //_________________________________________________________________________
8 : /// \class AliEMCALCalibTime
9 : /// \brief Cell time shifts container class
10 : ///
11 : /// Cell time shifts container class. Each channel is assigned by 4 parameters,
12 : /// each corresponding to a BC%4.
13 : /// An extra decalibration parameter shift foreseen.
14 : /// Shifts are provided in ns!!
15 : ///
16 : /// \author Gustavo Conesa Balbastre <Gustavo.Conesa.Balbastre@cern.ch>, LPSC-IN2P3-CNRS
17 : ///_________________________________________________________________________
18 :
19 : #include "TNamed.h"
20 : #include "AliEMCALGeoParams.h"
21 :
22 : class AliEMCALCalibTime: public TNamed {
23 :
24 : public:
25 :
26 : AliEMCALCalibTime();
27 :
28 : AliEMCALCalibTime(const char* name);
29 :
30 : AliEMCALCalibTime(const AliEMCALCalibTime &calibti);
31 :
32 : AliEMCALCalibTime& operator= (const AliEMCALCalibTime &calibti);
33 :
34 0 : virtual ~AliEMCALCalibTime() { ; }
35 :
36 : void Reset();
37 :
38 : void Print(Option_t *option = "") const;
39 :
40 : // Setters and getters,
41 : // all indexes start from 0!
42 :
43 : Float_t GetTimeChannel(Int_t supermodule, Int_t column, Int_t row, Int_t bc) const
44 141312 : { return fTimeChannel[supermodule][column][row][bc] ; }
45 :
46 : Float_t GetTimeChannelDecal(Int_t supermodule, Int_t column, Int_t row) const
47 141312 : { return fTimeChannelDecal[supermodule][column][row] ; }
48 :
49 : void SetTimeChannel(Int_t supermodule, Int_t column, Int_t row, Int_t bc, Float_t value)
50 608256 : { fTimeChannel[supermodule][column][row][bc] = value ; }
51 :
52 : void SetTimeChannelDecal(Int_t supermodule, Int_t column, Int_t row, Float_t value)
53 152064 : { fTimeChannelDecal[supermodule][column][row] = value ; }
54 :
55 : /// Total number of EMCAL super-modules,
56 : /// 12(EMCal) + 8 (DCal)+ 2 (DCal extension possibility in future),
57 : /// define it here because for Run1 releases where we had only 12 EMCal.
58 : static const int fgkECALDCALModules = 22;
59 :
60 : protected:
61 :
62 : /// time shift (ns) of one ADC channel ([mod][col][row])
63 : Float_t fTimeChannelDecal [fgkECALDCALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows] ;
64 :
65 : /// time shift (ns) of one ADC channel ([mod][col][row][bunch crossing number])
66 : Float_t fTimeChannel [fgkECALDCALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows][4] ;
67 :
68 : /// \cond CLASSIMP
69 66 : ClassDef(AliEMCALCalibTime,1) ;
70 : /// \endcond
71 :
72 : };
73 :
74 : #endif // ALIEMCALCALIBTIME_H
|