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