]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGLF/totEt/AliAnalysisEtTrackMatchCorrections.h
Changing default EMCal cluster energy cut
[u/mrichter/AliRoot.git] / PWGLF / totEt / AliAnalysisEtTrackMatchCorrections.h
1 #ifndef ALIANALYSISETTRACKMATCHCORRECTIONS_H
2 #define ALIANALYSISETTRACKMATCHCORRECTIONS_H
3
4
5 #include "TNamed.h"
6 #include "TF1.h"
7
8 class AliAnalysisEtTrackMatchCorrections : public TNamed
9 {
10
11 public:
12
13 //! Default constructor
14     AliAnalysisEtTrackMatchCorrections();
15
16 //! Constructor
17     AliAnalysisEtTrackMatchCorrections(const TString name, const TF1 &chargedContr, const TF1 &neutralContr, const TF1 &gammaContr, const TF1 &secondaryContr, Double_t meanCharged, Double_t meanNeutral, Double_t meanGammas, Double_t meanSecondary);
18
19 //! Copy constructor
20     AliAnalysisEtTrackMatchCorrections(const AliAnalysisEtTrackMatchCorrections &obj);
21
22 //! Destructor
23     virtual ~AliAnalysisEtTrackMatchCorrections();
24
25 //! Assignment operator
26     AliAnalysisEtTrackMatchCorrections& operator=(const AliAnalysisEtTrackMatchCorrections& other);
27
28 // Getters
29
30     TF1 ChargedContr() const {
31         return *fChargedContr;
32     }
33
34     TF1 NeutralContr() const {
35         return *fNeutralContr;
36     }
37
38     TF1 GammaContr() const {
39         return *fGammaContr;
40     }
41
42     TF1 SecondaryContr() const {
43         return *fSecondaryContr;
44     }
45     
46     Double_t ChargedContr(int mult) const {
47         return fChargedContr->Eval(mult)*fMeanCharged;
48     }
49
50     Double_t NeutralContr(int mult) const {
51         return fNeutralContr->Eval(mult)*fMeanNeutral;
52     }
53
54     Double_t GammaContr(int mult) const {
55         return -fGammaContr->Eval(mult)*fMeanGamma;
56     }
57
58     Double_t SecondaryContr(int mult) const {
59         return fSecondaryContr->Eval(mult)*fMeanSecondary;
60     }
61
62
63 // Setters
64
65     void SetChargedcontr(const TF1 &chargedContr) {
66         *fChargedContr = chargedContr;
67     }
68
69     void SetNeutralcontr(const TF1 &neutralContr) {
70         *fNeutralContr = neutralContr;
71     }
72
73     void SetGammacontr(const TF1 &gammaContr) {
74         *fGammaContr = gammaContr;
75     }
76
77     void SetSecondarycontr(const TF1 &secondaryContr) {
78         *fSecondaryContr = secondaryContr;
79     }
80
81
82 private:
83
84     // ChargedContr
85     TF1 *fChargedContr;
86     // NeutralContr
87     TF1 *fNeutralContr;
88     // GammaContr
89     TF1 *fGammaContr;   
90     // SecondaryContr
91     TF1 *fSecondaryContr;
92     
93     // Mean deposited energy from charged particles
94     Double_t fMeanCharged;
95     // Mean deposited energy from neutral particles
96     Double_t fMeanNeutral;
97     // Mean deposited energy from gammas 
98     Double_t fMeanGamma;
99     // Mean deposited energy from secondaries 
100     Double_t fMeanSecondary;
101
102     // Prohibited
103 //! Equality operator
104     bool operator==(const AliAnalysisEtTrackMatchCorrections &other) const;
105     ClassDef(AliAnalysisEtTrackMatchCorrections, 2);
106 };
107
108 #endif //ALIANALYSISETTRACKMATCHCORRECTIONS_H
109