Adding rho's depenence on trigger track (M. Verweij)
[u/mrichter/AliRoot.git] / JETAN / AliJetAODFillUnitArrayEMCalDigits.h
1 #ifndef ALIJETAODFILLUNITARRAYEMCALDIGITS_H
2 #define ALIJETAODFILLUNITARRAYEMCALDIGITS_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 // Jet Fill Unit Array 
9 // Called by ESD Reader for jet analysis
10 // Author: Magali Estienne (magali.estienne@subatech.in2p3.fr)
11 //---------------------------------------------------------------------
12
13 #include "AliJetFillUnitArray.h"
14
15 class AliESDCaloCluster;
16 class AliJetReader;
17 class AliJetAODReader;
18
19 class AliJetAODFillUnitArrayEMCalDigits : public AliJetFillUnitArray
20 {
21  public: 
22   AliJetAODFillUnitArrayEMCalDigits();
23   AliJetAODFillUnitArrayEMCalDigits(AliAODEvent *fAOD);
24   virtual ~AliJetAODFillUnitArrayEMCalDigits();
25   
26   // Setter
27   void SetApplyElectronCorrection(Int_t flag = 1)     {fApplyElectronCorrection = flag;}
28   void SetApplyFractionHadronicCorrection(Bool_t val) {fApplyFractionHadronicCorrection = val;}
29   void SetFractionHadronicCorrection(Double_t val)    {fFractionHadronicCorrection = val;}
30   void SetAOD(AliAODEvent* const aod)                 {fAOD = aod;}
31   void SetInitMult(Int_t mult)                        {fNDigitEmcal = mult;}
32   void SetInitMultCut(Int_t multcut)                  {fNDigitEmcalCut = multcut;}
33
34   // Getter
35   Int_t         GetMult()      const {return fNDigitEmcal;}
36   Int_t         GetMultCut()   const {return fNDigitEmcalCut;}
37
38   // For calibration 
39   //  virtual Float_t Calibrate(Int_t amp, Int_t cellId) ;  // Tranforms Amp to energy
40
41   // Other
42   void Exec(Option_t* const option);
43
44  protected:
45   AliAODEvent  *fAOD;                 // ESD
46   Int_t        fNIn;                  // Number of Array filled in UnitArray
47   Int_t        fCluster;              // Use all cells or cells in clusters for jet finding 
48   Int_t        fNCEMCAL;              // Number of clusters in EMCAL
49   Int_t        fNCPHOS;               // Number of clusters in PHOS
50   Int_t        fNCCalo;               // Number of cluster in EMCAL + PHOS calorimeters
51
52   Bool_t       fApplyElectronCorrection;          // Electron correction flag
53   Bool_t       fApplyFractionHadronicCorrection;  // Fraction hadronic correction flag
54   Double_t     fFractionHadronicCorrection;       // Fraction hadronic correction 
55
56   //Track-matching (mth)
57 // Temporarily commented - will be updated removing the AliAODpid dependence
58 //  void GetTracksPointingToCell(TArrayS *arr, Double_t eta, Double_t phi, Double_t res);
59
60   // geometry info
61   AliAODCaloCluster *fClus;           //! 
62   Int_t fNDigitEmcal;                 //!
63   Int_t fNDigitEmcalCut;              //!
64   //Calibration parameters... to be replaced by database
65 //  AliEMCALCalibData *fCalibData;     //! Calibration database if aval
66 //  Float_t            fADCchannelECA; // width of one ADC channel for EC section (GeV)
67 //  Float_t            fADCpedestalECA;// pedestal of ADC for EC section (GeV)
68
69
70  private:
71   AliJetAODFillUnitArrayEMCalDigits(const AliJetAODFillUnitArrayEMCalDigits &det);
72   AliJetAODFillUnitArrayEMCalDigits &operator=(const AliJetAODFillUnitArrayEMCalDigits &det);
73
74 //  void    GetCalibrationParameters(void) ;
75   
76   ClassDef(AliJetAODFillUnitArrayEMCalDigits,1) // Fill Unit Array with tpc and/or emcal information
77 };
78
79 #endif