]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/totEt/AliAnalysisEt.h
Clean up
[u/mrichter/AliRoot.git] / PWG4 / totEt / AliAnalysisEt.h
CommitLineData
2fbf38ac 1#ifndef ALIANALYSISET_H
2#define ALIANALYSISET_H
cf6522d1 3//_________________________________________________________________________
4// Utility Class for transverse energy studies
5// Base class for ESD & MC analysis
6// - reconstruction and MonteCarlo output
7//
8//*-- Authors: Oystein Djuvsland (Bergen), David Silvermyr (ORNL)
9//_________________________________________________________________________
2fbf38ac 10
11#include "TString.h"
7d2d1773 12#include "AliAnalysisEtCommon.h"
2fbf38ac 13
ce546038 14class TTree;
2fbf38ac 15class TH2F;
16class TH1F;
17class AliVEvent;
18class TList;
b5821c13 19class AliESDtrackCuts;
cf6522d1 20class Rtypes;
4998becf 21class AliAnalysisEtCuts;
2fbf38ac 22
7d2d1773 23class AliAnalysisEt : public AliAnalysisEtCommon
2fbf38ac 24{
25public:
26
27 AliAnalysisEt();
28 virtual ~AliAnalysisEt();
2fbf38ac 29
30public:
31
32 /** Analyse the event! */
641e1e0c 33 virtual Int_t AnalyseEvent(AliVEvent *event);
2fbf38ac 34
35 /** Fill the objects you want to output, classes which add new histograms should overload this. */
36 virtual void FillOutputList(TList* list);
37
38 /** Initialise the analysis, must be overloaded. */
641e1e0c 39 virtual void Init();
2fbf38ac 40
41 /**
42 * Creates the histograms, must be overloaded if you want to add your own.
43 * Uses the fHistogramNameSuffix to create proper histogram names
44 */
45 virtual void CreateHistograms();
8ea99ab0 46 virtual void CreateTrees();
2fbf38ac 47
48 /** Fills the histograms, must be overloaded if you want to add your own */
49 virtual void FillHistograms();
50
51 /** Reset event specific values (Et etc.) */
52 virtual void ResetEventValues();
99a6613d 53
2fbf38ac 54
4998becf 55
2fbf38ac 56 /** Total Et in the event (without acceptance cuts) */
cf6522d1 57 Double_t GetTotEt() const { return fTotEt; }
2fbf38ac 58
59 /** Total Et in the event within the acceptance cuts */
cf6522d1 60 Double_t GetTotEtAcc() const { return fTotEtAcc; }
2fbf38ac 61
62 /** Total neutral Et in the event (without acceptance cuts) */
cf6522d1 63 Double_t GetTotNeutralEt() const { return fTotNeutralEt; }
2fbf38ac 64
65 /** Total neutral Et in the event within the acceptance cuts */
cf6522d1 66 Double_t GetTotNeutralEtAcc() const { return fTotNeutralEtAcc; }
2fbf38ac 67
68 /** Total charged Et in the event (without acceptance cuts) */
cf6522d1 69 Double_t GetTotChargedEt() const { return fTotChargedEt; }
2fbf38ac 70
71 /** Total charged Et in the event within the acceptance cuts */
cf6522d1 72 Double_t GetTotChargedEtAcc() const { return fTotChargedEtAcc; }
2fbf38ac 73
b5821c13 74 void SetTPCOnlyTrackCuts(const AliESDtrackCuts *cuts){ fEsdtrackCutsTPC = (AliESDtrackCuts *) cuts;}
2fbf38ac 75
76protected:
2fbf38ac 77
7d2d1773 78 //AliAnalysisEtCuts *fCuts; // keeper of basic cuts
79
cf6522d1 80
cf6522d1 81 Double_t fTotEt;/** Total Et in the event (without acceptance cuts) */
82 Double_t fTotEtAcc;/** Total Et in the event within the acceptance cuts */
2fbf38ac 83
cf6522d1 84 Double_t fTotNeutralEt;/** Total neutral Et in the event */
85 Double_t fTotNeutralEtAcc;/** Total neutral Et in the event within the acceptance cuts */
86 Double_t fTotChargedEt;/** Total charged Et in the event */
87 Double_t fTotChargedEtAcc;/** Total charged Et in the event within the acceptance cuts */
88
89 Int_t fMultiplicity;/** Multiplicity of particles in the event */
90 Int_t fChargedMultiplicity;/** Multiplicity of charged particles in the event */
91 Int_t fNeutralMultiplicity; /** Multiplicity of neutral particles in the event */
87efb15c 92
7b873813 93 Double_t fBaryonEt; /** Et of identified baryons; calo based (Rec only for now) */
94 Double_t fAntiBaryonEt; /** Et of identified anti-baryons; calo based (Rec only for now) */
95 Double_t fMesonEt; /** Et of identified mesons; calo based (Rec only for now) */
87efb15c 96
ce546038 97 Double_t fProtonEt; /** Et of identified protons */
43056f1b 98 Double_t fPionEt; /** Et of identified pions */
ce546038 99 Double_t fChargedKaonEt; /** Et of identified charged kaons */
100 Double_t fMuonEt; /** Et of identified muons */
101 Double_t fElectronEt; /** Et of identified electrons */
43056f1b 102 Double_t fNeutronEt; /** Et of neutrons (MC only for now) */
103 Double_t fAntiNeutronEt; /** Et of anti-neutrons (MC only for now) */
104 Double_t fGammaEt; /** Et of identified electrons (MC only for now) */
105
ce546038 106 Double_t fProtonEtAcc; /** Et of identified protons in calorimeter acceptance */
43056f1b 107 Double_t fPionEtAcc; /** Et of identified pions in calorimeter acceptance */
ce546038 108 Double_t fChargedKaonEtAcc; /** Et of identified charged kaons in calorimeter acceptance */
109 Double_t fMuonEtAcc; /** Et of identified muons in calorimeter acceptance */
110 Double_t fElectronEtAcc; /** Et of identified electrons in calorimeter acceptance */
8ea99ab0 111
112 Float_t fEnergyDeposited; /** Energy deposited in calorimeter */
113 Float_t fEnergyTPC; /** Energy measured in TPC */
114 Short_t fCharge; /** Charge of the particle */
115 Short_t fParticlePid; /** Particle PID */
116 Float_t fPidProb; /** Probability of PID */
117 Bool_t fTrackPassedCut; /** The track is accepted by ESDTrackCuts */
118
ce546038 119
120 Double_t fEtaCut;/** Cut in eta (standard |eta| < 0.5 )*/
4998becf 121
43056f1b 122 /** Eta cut for our acceptance */
123 Double_t fEtaCutAcc; // Eta cut for our acceptance
124
125 /** Min phi cut for our acceptance in radians */
126 Double_t fPhiCutAccMin; // Min phi cut for our acceptance in radians
127
128 /** Max phi cut for our acceptance in radians */
129 Double_t fPhiCutAccMax; // Max phi cut for our acceptance in radians
cf6522d1 130
43056f1b 131 /** Detector radius */
132 Double_t fDetectorRadius; // Detector radius
133
134 /** Cut on the cluster energy */
135 Double_t fClusterEnergyCut; // Cut on the cluster energy
136
137 /** Minimum energy to cut on single cell cluster */
138 Double_t fSingleCellEnergyCut; // Minimum energy to cut on single cell cluster
4998becf 139
2fbf38ac 140 // Declare the histograms
141
142 /** The full Et spectrum measured */
143 TH1F *fHistEt; //Et spectrum
144
145 /** The full charged Et spectrum measured */
8ea99ab0 146 TH1F *fHistChargedEt; //Charged Et spectrum
2fbf38ac 147
148 /** The full neutral Et spectrum measured */
149 TH1F *fHistNeutralEt; //Neutral Et spectrum
150
151 /** The Et spectrum within the calorimeter acceptance */
152 TH1F *fHistEtAcc; //Et in acceptance
153
154 /** The charged Et spectrum within the calorimeter acceptance */
155 TH1F *fHistChargedEtAcc; //Charged Et in acceptance
156
157 /** The neutral Et spectrum within the calorimeter acceptance */
158 TH1F *fHistNeutralEtAcc; //Et in acceptance
159
160 /** Multiplicity of particles in the events */
161 TH1F *fHistMult; //Multiplicity
162
163 /** Charged multiplicity of particles in the events */
164 TH1F *fHistChargedMult; //Charged multiplicity
165
166 /** Neutral multiplicity of particles in the events */
167 TH1F *fHistNeutralMult; //Neutral multiplicity
168
169 /* Acceptance plots */
170 TH2F *fHistPhivsPtPos; //phi vs pT plot for positive tracks
171 TH2F *fHistPhivsPtNeg; //phi vs pT plot for negative tracks
172
87efb15c 173 /* PID plots */
ce546038 174 TH1F *fHistBaryonEt; /** Et of identified baryons */
175 TH1F *fHistAntiBaryonEt; /** Et of identified anti-baryons */
176 TH1F *fHistMesonEt; /** Et of identified mesons */
177
ce546038 178 TH1F *fHistProtonEt; /** Et of identified protons */
43056f1b 179 TH1F *fHistPionEt; /** Et of identified protons */
ce546038 180 TH1F *fHistChargedKaonEt; /** Et of identified charged kaons */
181 TH1F *fHistMuonEt; /** Et of identified muons */
182 TH1F *fHistElectronEt; /** Et of identified electrons */
43056f1b 183 TH1F *fHistNeutronEt; /** Et of neutrons (MC only for now) */
184 TH1F *fHistAntiNeutronEt; /** Et of anti-neutrons (MC only for now) */
185 TH1F *fHistGammaEt; /** Et of gammas (MC only for now) */
87efb15c 186
ce546038 187 TH1F *fHistProtonEtAcc; /** Et of identified protons in calorimeter acceptance */
43056f1b 188 TH1F *fHistPionEtAcc; /** Et of identified protons in calorimeter acceptance */
ce546038 189 TH1F *fHistChargedKaonEtAcc; /** Et of identified charged kaons in calorimeter acceptance */
190 TH1F *fHistMuonEtAcc; /** Et of identified muons in calorimeter acceptance */
191 TH1F *fHistElectronEtAcc; /** Et of identified electrons in calorimeter acceptance */
87efb15c 192
193 /* Correction plots */
7b873813 194 TH1F *fHistTMDeltaR; /* Track matching plots; Rec only for now */
2fbf38ac 195
ce546038 196 TTree *fTree; // optional TTree
8ea99ab0 197 TTree *fTreeDeposit; // optional TTree for energy deposit measurements
b5821c13 198
b5821c13 199
4998becf 200private:
201 //Declare private to avoid compilation warning
202 AliAnalysisEt & operator = (const AliAnalysisEt & g) ;//cpy assignment
203 AliAnalysisEt(const AliAnalysisEt & g) ; // cpy ctor
204
e573e46d 205 ClassDef(AliAnalysisEt, 1);
2fbf38ac 206};
207
208#endif // ALIANALYSISET_H