]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/totEt/AliAnalysisEt.h
totEt updates from Christine
[u/mrichter/AliRoot.git] / PWG4 / totEt / AliAnalysisEt.h
CommitLineData
2fbf38ac 1#ifndef ALIANALYSISET_H
2#define ALIANALYSISET_H
3
4#include "TString.h"
5#include "TDatabasePDG.h"
6#include "Rtypes.h"
7
8class TH2F;
9class TH1F;
10class AliVEvent;
11class TList;
12
13class AliAnalysisEt
14{
15public:
16
17 AliAnalysisEt();
18 virtual ~AliAnalysisEt();
19
20private:
21 //Declare it private to avoid compilation warning
22 AliAnalysisEt & operator = (const AliAnalysisEt & g) ;//cpy assignment
23 AliAnalysisEt(const AliAnalysisEt & g) ; // cpy ctor
24
25public:
26
27 /** Analyse the event! */
641e1e0c 28 virtual Int_t AnalyseEvent(AliVEvent *event);
2fbf38ac 29
30 /** Fill the objects you want to output, classes which add new histograms should overload this. */
31 virtual void FillOutputList(TList* list);
32
33 /** Initialise the analysis, must be overloaded. */
641e1e0c 34 virtual void Init();
2fbf38ac 35
36 /**
37 * Creates the histograms, must be overloaded if you want to add your own.
38 * Uses the fHistogramNameSuffix to create proper histogram names
39 */
40 virtual void CreateHistograms();
41
42 /** Fills the histograms, must be overloaded if you want to add your own */
43 virtual void FillHistograms();
44
45 /** Reset event specific values (Et etc.) */
46 virtual void ResetEventValues();
47
48 /** Sum of the total Et for all events */
49 Double_t GetSumEt() { return fSumEt; }
50
51 /** Sum of the total Et within our acceptance for all events */
52 Double_t GetSumEtAcc() { return fSumEtAcc; }
53
54 /** Total Et in the event (without acceptance cuts) */
55 Double_t GetTotEt() { return fTotEt; }
56
57 /** Total Et in the event within the acceptance cuts */
58 Double_t GetTotEtAcc() { return fTotEtAcc; }
59
60 /** Total neutral Et in the event (without acceptance cuts) */
61 Double_t GetTotNeutralEt() { return fTotNeutralEt; }
62
63 /** Total neutral Et in the event within the acceptance cuts */
64 Double_t GetTotNeutralEtAcc() { return fTotNeutralEtAcc; }
65
66 /** Total charged Et in the event (without acceptance cuts) */
67 Double_t GetTotChargedEt() { return fTotChargedEt; }
68
69 /** Total charged Et in the event within the acceptance cuts */
70 Double_t GetTotChargedEtAcc() { return fTotChargedEtAcc; }
71
72
73protected:
74
75 /** The suffix for the histogram names */
76 TString fHistogramNameSuffix;
77
78 /** PDG Database */
79 TDatabasePDG *fPdgDB;
80
641e1e0c 81 Int_t PiPlusCode;
82 Int_t PiMinusCode;
83 Int_t KPlusCode;
84 Int_t KMinusCode;
85 Int_t ProtonCode;
86 Int_t AntiProtonCode;
87 Int_t LambdaCode;
88 Int_t AntiLambdaCode;
89 Int_t K0SCode;
90 Int_t OmegaCode;
91 Int_t AntiOmegaCode;
92 Int_t Xi0Code;
93 Int_t AntiXi0Code;
94 Int_t XiCode;
95 Int_t AntiXiCode;
96 Int_t SigmaCode;
97 Int_t AntiSigmaCode;
98 Int_t K0LCode;
99 Int_t NeutronCode;
100 Int_t AntiNeutronCode;
101 Int_t EPlusCode;
102 Int_t EMinusCode;
103 Float_t PionMass;
104
2fbf38ac 105 /** Sum of the total Et for all events */
106 Double_t fSumEt;
107
108 /** Sum of the total Et within our acceptance for all events */
109 Double_t fSumEtAcc;
110
111 /** Total Et in the event (without acceptance cuts) */
112 Double_t fTotEt;
113
114 /** Total Et in the event within the acceptance cuts */
115 Double_t fTotEtAcc;
116
117 /** Total neutral Et in the event */
118 Double_t fTotNeutralEt;
119
120 /** Total neutral Et in the event within the acceptance cuts */
121 Double_t fTotNeutralEtAcc;
122
123 /** Total charged Et in the event */
124 Double_t fTotChargedEt;
125
126 /** Total charged Et in the event within the acceptance cuts */
127 Double_t fTotChargedEtAcc;
128
129 /** Multiplicity of particles in the event */
130 Int_t fMultiplicity;
131
132 /** Multiplicity of charged particles in the event */
133 Int_t fChargedMultiplicity;
134
135 /** Multiplicity of neutral particles in the event */
136 Int_t fNeutralMultiplicity;
137
138 /** Cut in eta ( normally |eta| < 0.5 */
139 Double_t fEtaCut;
140
141 /** Eta cut for our acceptance */
142 Double_t fEtaCutAcc;
143
144 /** Min phi cut for our acceptance in radians */
145 Double_t fPhiCutAccMin;
146
147 /** Max phi cut for our acceptance in radians */
148 Double_t fPhiCutAccMax;
149
150 /** Detector radius */
151 Double_t fDetectorRadius;
152
153 /** Vertex cuts */
154 Double_t fVertexXCut;
155 Double_t fVertexYCut;
156 Double_t fVertexZCut;
157
158 /** Impact parameter cuts */
159 Double_t fIPxyCut;
160 Double_t fIPzCut;
161
162 /** Cut on the cluster energy */
163 Double_t fClusterEnergyCut;
164
165 /** Cut on track pt */
166 Double_t fTrackPtCut;
167
168 /** Minimum energy to cut on single cell cluster */
169 Double_t fSingleCellEnergyCut;
170
171 // Declare the histograms
172
173 /** The full Et spectrum measured */
174 TH1F *fHistEt; //Et spectrum
175
176 /** The full charged Et spectrum measured */
177 TH1F *fHistChargedEt; //Charged Et spectrum
178
179 /** The full neutral Et spectrum measured */
180 TH1F *fHistNeutralEt; //Neutral Et spectrum
181
182 /** The Et spectrum within the calorimeter acceptance */
183 TH1F *fHistEtAcc; //Et in acceptance
184
185 /** The charged Et spectrum within the calorimeter acceptance */
186 TH1F *fHistChargedEtAcc; //Charged Et in acceptance
187
188 /** The neutral Et spectrum within the calorimeter acceptance */
189 TH1F *fHistNeutralEtAcc; //Et in acceptance
190
191 /** Multiplicity of particles in the events */
192 TH1F *fHistMult; //Multiplicity
193
194 /** Charged multiplicity of particles in the events */
195 TH1F *fHistChargedMult; //Charged multiplicity
196
197 /** Neutral multiplicity of particles in the events */
198 TH1F *fHistNeutralMult; //Neutral multiplicity
199
200 /* Acceptance plots */
201 TH2F *fHistPhivsPtPos; //phi vs pT plot for positive tracks
202 TH2F *fHistPhivsPtNeg; //phi vs pT plot for negative tracks
203
204 /* PID plots */
205 TH1F *fHistBaryonEt;
206 TH1F *fHistAntiBaryonEt;
207 TH1F *fHistMesonEt;
208
209 TH1F *fHistBaryonEtAcc;
210 TH1F *fHistAntiBaryonEtAcc;
211 TH1F *fHistMesonEtAcc;
212
213 /* Correction plots */
214 TH2F *fHistEtRecvsEtMC; //Reconstructed Et versus MC Et
215
216 /* Track matching plots */
217 TH1F *fHistTMDeltaR;
218
219 ClassDef(AliAnalysisEt, 0);
220};
221
222#endif // ALIANALYSISET_H