proper linking for libHLTrec.so
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALCalibData.h
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 ////////////////////////////////////////////////
10 //
11 //  class for EMCAL calibration               //
12 //
13 ////////////////////////////////////////////////
14
15 #include "TNamed.h"
16 #include "AliEMCALGeoParams.h"
17
18 class AliEMCALCalibData: public TNamed {
19
20  public:
21
22   AliEMCALCalibData();
23   AliEMCALCalibData(const char* name);
24   AliEMCALCalibData(const AliEMCALCalibData &calibda);
25   AliEMCALCalibData& operator= (const AliEMCALCalibData &calibda);
26   virtual ~AliEMCALCalibData() { ; }
27   
28   void    Reset();
29   void    Print(Option_t *option = "") const;
30   
31   // All indexes start from 0!
32   Float_t GetADCchannel      (Int_t module, Int_t column, Int_t row) const;
33   Float_t GetADCchannelDecal (Int_t module, Int_t column, Int_t row) const;
34   Float_t GetADCpedestal     (Int_t module, Int_t column, Int_t row) const;
35   Float_t GetTimeChannelDecal(Int_t module, Int_t column, Int_t row) const;
36   Float_t GetTimeChannel     (Int_t module, Int_t column, Int_t row, Int_t bc) const;
37         
38   Float_t GetADCchannelRef   () const { return fADCchannelRef ; }
39
40   void    SetADCchannel      (Int_t module, Int_t column, Int_t row, Float_t value);
41   void    SetADCchannelDecal (Int_t module, Int_t column, Int_t row, Float_t value);
42   void    SetADCpedestal     (Int_t module, Int_t column, Int_t row, Float_t value);
43   void    SetTimeChannelDecal(Int_t module, Int_t column, Int_t row, Float_t value);
44   void    SetTimeChannel     (Int_t module, Int_t column, Int_t row, Int_t bc, Float_t value);
45
46   void    SetADCchannelRef   (Float_t value) { fADCchannelRef = value ; }
47
48  protected:
49
50   Float_t  fADCchannelRef ;  // base value of the ADC channel set from cosmics calibration
51
52   Float_t  fADCchannel      [AliEMCALGeoParams::fgkEMCALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows] ; // width of one ADC channel in GeV ([mod][col][row])
53   Float_t  fADCchannelDecal [AliEMCALGeoParams::fgkEMCALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows] ; // decalibrate width of one ADC channel in GeV ([mod][col][row])
54   Float_t  fADCpedestal     [AliEMCALGeoParams::fgkEMCALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows] ; // value of the  ADC pedestal ([mod][col][row]), not used
55   Float_t  fTimeChannelDecal[AliEMCALGeoParams::fgkEMCALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows] ;    // time shift of one ADC channel ([mod][col][row])
56   Float_t  fTimeChannel     [AliEMCALGeoParams::fgkEMCALModules][AliEMCALGeoParams::fgkEMCALCols][AliEMCALGeoParams::fgkEMCALRows][4] ; // time shift of one ADC channel ([mod][col][row][bunch crossing number])
57
58   ClassDef(AliEMCALCalibData,4)    // EMCAL Calibration data
59 };
60
61 #endif