]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGLF/totEt/AliAnalysisEtRecEffCorrection.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGLF / totEt / AliAnalysisEtRecEffCorrection.h
1 //_________________________________________________________________________
2 //  Utility Class for transverse energy studies
3 //
4 //*-- Authors: Oystein Djuvsland (Bergen)
5 //_________________________________________________________________________
6
7
8 #ifndef ALIANALYSISETRECEFFCORRECTION_H
9 #define ALIANALYSISETRECEFFCORRECTION_H
10
11 #include "Rtypes.h"
12 #include "TArrayD.h"
13 #include "TNamed.h"
14 #include "TF1.h"
15 #include "TH2F.h"
16
17 class AliAnalysisEtRecEffCorrection : public TNamed
18 {
19
20 public:
21
22 //! Default constructor
23     AliAnalysisEtRecEffCorrection();
24
25 //! Constructor
26     AliAnalysisEtRecEffCorrection(TString name, const TF1& correction, const TH2F &recoEff, Double_t maxEnergy);
27
28 //! Copy constructor
29     AliAnalysisEtRecEffCorrection(const AliAnalysisEtRecEffCorrection &obj);
30
31 //! Destructor
32     virtual ~AliAnalysisEtRecEffCorrection();
33
34 //! Assignment operator
35     AliAnalysisEtRecEffCorrection& operator=(const AliAnalysisEtRecEffCorrection& other);
36
37 //! Equality operator
38     bool operator==(const AliAnalysisEtRecEffCorrection &other) const;
39
40 // Getters
41
42     TF1 EnergyCorrection() const {
43         return *fEnergyCorrection;
44     }
45
46
47     TH2F *ReconstructionEfficiency() const {
48       return fRecoEff;
49     }
50     Double_t ReconstructionEfficiency(float energy, int cent) const;
51
52     Double_t MaxEnergy() const {
53         return fMaxEnergy;
54     }
55
56 // Setters
57
58     void SetCorrections(const TF1 &corrections) {
59         *fEnergyCorrection = corrections;
60     }
61
62     void SetMaxenergy(Double_t maxEnergy) {
63         fMaxEnergy = maxEnergy;
64     }
65
66     void SetReconstructionEfficiency(const TH2F &recoEff) {
67         *fRecoEff = recoEff;
68     }
69
70
71     Double_t CorrectedEnergy(Double_t energy); // Calculate corrected cluster E_T 
72     Double_t CorrectedEnergy(Double_t energy, int cent); // Calculate corrected cluster E_T 
73     
74 private:
75
76     // Energy correction function
77     TF1 *fEnergyCorrection;//
78     TH2F *fRecoEff;//Reconstruction efficiency, x axis = pT, y axis = multiplicity, z = efficiency
79     
80     
81     
82 // MaxEnergy
83     Double_t fMaxEnergy; // MaxEnergy
84     
85     ClassDef(AliAnalysisEtRecEffCorrection, 1);
86 };
87
88 #endif //ALIANALYSISETRECEFFCORRECTION_H
89