]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGGA/GammaConv/AliAnalysisTaskGammaConvCalo.h
TENDER becomes Tender, removing .so
[u/mrichter/AliRoot.git] / PWGGA / GammaConv / AliAnalysisTaskGammaConvCalo.h
CommitLineData
8bdca7f1 1#ifndef ALIANLYSISTASKGAMMACONVCALO_cxx
2#define ALIANLYSISTASKGAMMACONVCALO_cxx
3
4#include "AliAnalysisTaskSE.h"
5#include "AliESDtrack.h"
6#include "AliV0ReaderV1.h"
7#include "AliKFConversionPhoton.h"
8#include "AliGammaConversionAODBGHandler.h"
9#include "AliConversionAODBGHandlerRP.h"
10#include "AliCaloPhotonCuts.h"
344100c4 11#include "AliConvEventCuts.h"
12#include "AliConversionPhotonCuts.h"
8bdca7f1 13#include "AliConversionMesonCuts.h"
14#include "AliAnalysisManager.h"
15#include "TProfile2D.h"
16#include "TH3.h"
17#include "TH3F.h"
18
19class AliAnalysisTaskGammaConvCalo : public AliAnalysisTaskSE {
20 public:
21
22 AliAnalysisTaskGammaConvCalo();
23 AliAnalysisTaskGammaConvCalo(const char *name);
24 virtual ~AliAnalysisTaskGammaConvCalo();
25
26 virtual void UserCreateOutputObjects();
27 virtual Bool_t Notify();
28 virtual void UserExec(Option_t *);
29 virtual void Terminate(const Option_t*);
30 void InitBack();
31
32 void SetIsHeavyIon(Int_t flag){
33 fIsHeavyIon = flag;
34 }
35
36 // base functions for selecting photon and meson candidates in reconstructed data
37 void ProcessClusters();
38 void ProcessPhotonCandidates();
8bdca7f1 39 void CalculatePi0Candidates();
40
41 // MC functions
42 void SetIsMC(Bool_t isMC){fIsMC=isMC;}
43 void ProcessMCParticles();
44 void ProcessAODMCParticles();
45 void RelabelAODPhotonCandidates(Bool_t mode);
46 void ProcessTruePhotonCandidates( AliAODConversionPhoton* TruePhotonCandidate);
47 void ProcessTrueClusterCandidates( AliAODConversionPhoton* TruePhotonCandidate);
fd94f234 48 void ProcessTrueClusterCandidatesAOD( AliAODConversionPhoton* TruePhotonCandidate);
8bdca7f1 49 void ProcessTruePhotonCandidatesAOD( AliAODConversionPhoton* TruePhotonCandidate);
d53bf4ac 50 void ProcessTrueMesonCandidates( AliAODConversionMother *Pi0Candidate, AliAODConversionPhoton *TrueGammaCandidate0, AliAODConversionPhoton *TrueGammaCandidate1, Bool_t matched);
51 void ProcessTrueMesonCandidatesAOD(AliAODConversionMother *Pi0Candidate, AliAODConversionPhoton *TrueGammaCandidate0, AliAODConversionPhoton *TrueGammaCandidate1, Bool_t matched);
e764f3ba 52 void ProcessConversionPhotonsForMissingTags();
53 void ProcessConversionPhotonsForMissingTagsAOD();
8bdca7f1 54
55 // switches for additional analysis streams or outputs
56 void SetDoMesonAnalysis(Bool_t flag){fDoMesonAnalysis = flag;}
57 void SetDoMesonQA(Int_t flag){fDoMesonQA = flag;}
58 void SetDoPhotonQA(Int_t flag){fDoPhotonQA = flag;}
fd94f234 59 void SetDoClusterQA(Int_t flag){fDoClusterQA = flag;}
8bdca7f1 60
61 // Setting the cut lists for the conversion photons
344100c4 62 void SetEventCutList(Int_t nCuts, TList *CutArray){
63 fnCuts = nCuts;
64 fEventCutArray = CutArray;
65 }
66
67 // Setting the cut lists for the conversion photons
8bdca7f1 68 void SetConversionCutList(Int_t nCuts, TList *CutArray){
69 fnCuts = nCuts;
70 fCutArray = CutArray;
71 }
72
73 // Setting the cut lists for the calo photons
74 void SetCaloCutList(Int_t nCuts, TList *CutArray){
75 fnCuts = nCuts;
76 fClusterCutArray = CutArray;
77 }
78
79 // Setting the cut lists for the meson
80 void SetMesonCutList(Int_t nCuts, TList *CutArray){
81 fnCuts = nCuts;
82 fMesonCutArray = CutArray;
83 }
84
8bdca7f1 85 // BG HandlerSettings
86 void CalculateBackground();
87 void CalculateBackgroundRP();
88 void RotateParticle(AliAODConversionPhoton *gamma);
89 void RotateParticleAccordingToEP(AliAODConversionPhoton *gamma, Double_t previousEventEP, Double_t thisEventEP);
90 void SetMoveParticleAccordingToVertex(Bool_t flag){fMoveParticleAccordingToVertex = flag;}
91 void FillPhotonCombinatorialBackgroundHist(AliAODConversionPhoton *TruePhotonCandidate, Int_t pdgCode[]);
92 void MoveParticleAccordingToVertex(AliAODConversionPhoton* particle,const AliGammaConversionAODBGHandler::GammaConversionVertex *vertex);
93 void UpdateEventByEventData();
94
95 // Additional functions for convenience
96 void SetLogBinningXTH2(TH2* histoRebin);
97 Int_t GetSourceClassification(Int_t daughter, Int_t pdgCode);
e764f3ba 98 Bool_t CheckIfContainedInString(TString input, Int_t tobechecked);
99 Bool_t CheckIfContainedInStringAndAppend(TString &input, Int_t tobechecked);
8bdca7f1 100
101 protected:
102 AliV0ReaderV1 *fV0Reader; // basic photon Selection Task
103 AliGammaConversionAODBGHandler **fBGHandler; // BG handler for Conversion
104 AliConversionAODBGHandlerRP **fBGHandlerRP; // BG handler for Conversion (possibility to mix with respect to RP)
105 AliGammaConversionAODBGHandler **fBGClusHandler; // BG handler for Cluster
106 AliConversionAODBGHandlerRP **fBGClusHandlerRP; // BG handler for Cluster (possibility to mix with respect to RP)
107 AliVEvent *fInputEvent; // current event
108 AliMCEvent *fMCEvent; // corresponding MC event
109 AliStack *fMCStack; // stack belonging to MC event
110// AliESDEvent *fEsdEv; //!pointer to input esd event
111// AliAODEvent *fAodEv; //!pointer to input aod event
112// TObjArray *fEsdClusters; //!pointer to esd clusters
113// AliESDCaloCells *fEsdCells; //!pointer to esd cells
114// TObjArray *fAodClusters; //!pointer to aod clusters
115// AliAODCaloCells *fAodCells; //!pointer to aod cells
116 TList **fCutFolder; // Array of lists for containers belonging to cut
117 TList **fESDList; // Array of lists with histograms with reconstructed properties
118 TList **fBackList; // Array of lists with BG THnSparseF
119 TList **fMotherList; // Array of lists with Signal THnSparseF
120 TList **fPhotonDCAList; // Array of lists with photon dca trees
8bdca7f1 121 TList **fTrueList; // Array of lists with histograms with MC validated reconstructed properties
122 TList **fMCList; // Array of lists with histograms with pure MC information
123 TList **fHeaderNameList; // Array of lists with header names for MC header selection
ea1bc51e 124 TList **fClusterOutputList; //!Array of lists of output histograms for cluster photons
8bdca7f1 125 TList *fOutputContainer; // Output container
126 TClonesArray *fReaderGammas; // Array with conversion photons selected by V0Reader Cut
127 TList *fGammaCandidates; // current list of photon candidates
128 TList *fClusterCandidates; //! current list of cluster candidates
344100c4 129 TList *fEventCutArray; // List with Event Cuts
130 AliConvEventCuts *fEventCuts; // EventCutObject
8bdca7f1 131 TList *fCutArray; // List with Conversion Cuts
344100c4 132 AliConversionPhotonCuts *fConversionCuts; // ConversionCutObject
8bdca7f1 133 TList *fClusterCutArray; // List with Cluster Cuts
134 AliCaloPhotonCuts *fCaloPhotonCuts; // CaloPhotonCutObject
135 TList *fMesonCutArray; // List with Meson Cuts
136 AliConversionMesonCuts *fMesonCuts; // MesonCutObject
137
138 //histograms for Conversions reconstructed quantities
139 TH1F **fHistoConvGammaPt; //! histogram conversion photon pT
140 TH1F **fHistoConvGammaR; //! histogram conversion photon R
141 TH1F **fHistoConvGammaEta; //! histogram conversion photon Eta
142 TTree **fTreeConvGammaPtDcazCat; //! tree with dca for conversions
143 Float_t fPtGamma; //! pt of conversion for tree
144 Float_t fDCAzPhoton; //! dcaz of conversion for tree
145 Float_t fRConvPhoton; //! R of conversion for tree
146 Float_t fEtaPhoton; //! eta of conversion for tree
147 UChar_t fCharCatPhoton; //! category of conversion for tree
148 UChar_t fCharPhotonMCInfo; //! MC info of conversion for tree
149 // 0: garbage,
150 // 1: background
151 // 2: secondary photon not from eta or k0s,
152 // 3: secondary photon from eta,
153 // 4: secondary photon from k0s,
154 // 5: dalitz
155 // 6: primary gamma
156 //histograms for mesons reconstructed quantities
157 TH2F **fHistoMotherInvMassPt; //! array of histogram with signal + BG for same event photon pairs, inv Mass, pt
d53bf4ac 158 TH2F **fHistoMotherMatchedInvMassPt; //! array of histogram with signal + BG for same event photon pairs, inv Mass, pt
8bdca7f1 159 THnSparseF **fSparseMotherInvMassPtZM; //! array of THnSparseF with signal + BG for same event photon pairs, inv Mass, pt
160 TH2F **fHistoMotherBackInvMassPt; //! array of histogram with BG for mixed event photon pairs, inv Mass, pt
161 THnSparseF **fSparseMotherBackInvMassPtZM; //! array of THnSparseF with BG for same event photon pairs, inv Mass, pt
162 TH2F **fHistoMotherInvMassEalpha; //! array of histograms with alpha cut of 0.1 for inv mass vs pt
163 TH2F **fHistoMotherPi0PtY; //! array of histograms with invariant mass cut of 0.05 && pi0cand->M() < 0.17, pt, Y
164 TH2F **fHistoMotherEtaPtY; //! array of histograms with invariant mass cut of 0.45 && pi0cand->M() < 0.65, pt, Y
165 TH2F **fHistoMotherPi0PtAlpha; //! array of histograms with invariant mass cut of 0.05 && pi0cand->M() < 0.17, pt, alpha
166 TH2F **fHistoMotherEtaPtAlpha; //! array of histograms with invariant mass cut of 0.45 && pi0cand->M() < 0.65, pt, alpha
167 TH2F **fHistoMotherPi0PtOpenAngle; //! array of histograms with invariant mass cut of 0.05 && pi0cand->M() < 0.17, pt, openAngle
168 TH2F **fHistoMotherEtaPtOpenAngle; //! array of histograms with invariant mass cut of 0.45 && pi0cand->M() < 0.65, pt, openAngle
4e8dcc76 169 TH2F **fHistoMotherPi0ConvPhotonEtaPhi; //! array of histograms with invariant mass cut of 0.05 && pi0cand->M() < 0.17 ,eta/phi of conversion photon
170 TH2F **fHistoMotherEtaConvPhotonEtaPhi; //! array of histograms with invariant mass cut of 0.45 && pi0cand->M() < 0.65 ,eta/phi of conversion photon
20af4b69 171 TH2F **fHistoMotherInvMassECalib; //! array of histogram with signal + BG for same event photon pairs, inv Mass, energy of cluster
172 TH2F **fHistoMotherInvMassECalibalpha; //! array of histogram with signal + BG for same event photon pairs, inv Mass, energy of cluster, alpha cut 0.1
8bdca7f1 173
174 // histograms for rec photons tagged by Calo
ea1bc51e 175 TH2F **fHistoPhotonPairPtconv; //! array of histo for pairs vs. pt of converted photon
176 TH2F **fHistoPhotonPairMixedEventPtconv; //! array of histo for pairs vs. pt of converted photon
8bdca7f1 177 // histograms for rec photon clusters
178 TH1F ** fHistoClusGammaPt; //! array of histos with cluster, pt
ecd3e131 179 TH1F ** fHistoClusOverlapHeadersGammaPt; //! array of histos with cluster, pt overlapping with other headers
8bdca7f1 180
181 //histograms for pure MC quantities
182 TH1I **fHistoMCHeaders; //! array of histos for header names
183 TH1F **fHistoMCAllGammaPt; //! array of histos with all gamma, pT
20af4b69 184 TH1F **fHistoMCAllGammaEMCALAccPt; //! array of histos with all gamma in EMCAL acceptance, pT
8bdca7f1 185 TH1F **fHistoMCDecayGammaPi0Pt; //! array of histos with decay gamma from pi0, pT
186 TH1F **fHistoMCDecayGammaRhoPt; //! array of histos with decay gamma from rho, pT
187 TH1F **fHistoMCDecayGammaEtaPt; //! array of histos with decay gamma from eta, pT
188 TH1F **fHistoMCDecayGammaOmegaPt; //! array of histos with decay gamma from omega, pT
189 TH1F **fHistoMCDecayGammaEtapPt; //! array of histos with decay gamma from eta', pT
190 TH1F **fHistoMCDecayGammaPhiPt; //! array of histos with decay gamma from phi, pT
191 TH1F **fHistoMCDecayGammaSigmaPt; //! array of histos with decay gamma from Sigma0, pT
192 TH1F **fHistoMCConvGammaPt; //! array of histos with converted gamma, pT
193 TH1F **fHistoMCConvGammaR; //! array of histos with converted gamma, R
194 TH1F **fHistoMCConvGammaEta; //! array of histos with converted gamma, Eta
195 TH1F **fHistoMCPi0Pt; //! array of histos with weighted pi0, pT
196 TH1F **fHistoMCPi0WOWeightPt; //! array of histos with unweighted pi0, pT
197 TH1F **fHistoMCEtaPt; //! array of histos with weighted eta, pT
198 TH1F **fHistoMCEtaWOWeightPt; //! array of histos with unweighted eta, pT
199 TH1F **fHistoMCPi0InAccPt; //! array of histos with weighted pi0 in acceptance, pT
200 TH1F **fHistoMCEtaInAccPt; //! array of histos with weighted eta in acceptance, pT
201 TH2F **fHistoMCPi0PtY; //! array of histos with weighted pi0, pT, Y
202 TH2F **fHistoMCEtaPtY; //! array of histos with weighted eta, pT, Y
de752898 203 TH2F **fHistoMCPi0PtAlpha; //! array of histos with weighted pi0, pT, alpha
204 TH2F **fHistoMCEtaPtAlpha; //! array of histos with weighted eta, pT, alpha
8bdca7f1 205 TH1F **fHistoMCK0sPt; //! array of histos with weighted K0s, pT
206 TH1F **fHistoMCK0sWOWeightPt; //! array of histos with unweighted K0s, pT
207 TH2F **fHistoMCK0sPtY; //! array of histos with weighted K0s, pT, Y
208 TH2F **fHistoMCSecPi0PtvsSource; //! array of histos with secondary pi0, pT, source
209 TH1F **fHistoMCSecPi0Source; //! array of histos with secondary pi0, source
210 TH1F **fHistoMCSecEtaPt; //! array of histos with secondary eta, pT
211 TH1F **fHistoMCSecEtaSource; //! array of histos with secondary eta, source
212 // MC validated reconstructed quantities mesons
ee4b3d66 213 TH2F **fHistoTruePi0InvMassPt; //! array of histos with validated pi0, invMass, pt
214 TH2F **fHistoTrueEtaInvMassPt; //! array of histos with validated eta, invMass, pt
215 TH2F **fHistoTruePi0CaloPhotonInvMassPt; //! array of histos with validated pi0, photon leading, invMass, pt
216 TH2F **fHistoTrueEtaCaloPhotonInvMassPt; //! array of histos with validated eta, photon leading, invMass, pt
20af4b69 217 TH2F **fHistoTruePi0CaloConvertedPhotonInvMassPt; //! array of histos with validated pi0, converted photon leading, invMass, pt
218 TH2F **fHistoTruePi0CaloConvertedPhotonMatchedInvMassPt; //! array of histos with validated pi0 matched with conv photon, converted photon leading, invMass, pt
219 TH2F **fHistoTrueEtaCaloConvertedPhotonInvMassPt; //! array of histos with validated eta, converted photon leading, invMass, pt
220 TH2F **fHistoTrueEtaCaloConvertedPhotonMatchedInvMassPt; //! array of histos with validated eta matched with conv photon, converted photon leading, invMass, pt
ee4b3d66 221 TH2F **fHistoTruePi0CaloElectronInvMassPt; //! array of histos with validated mothers, electron leading, invMass, pt
222 TH2F **fHistoTrueEtaCaloElectronInvMassPt; //! array of histos with validated mothers, electron leading, invMass, pt
223 TH2F **fHistoTruePi0CaloMergedClusterInvMassPt; //! array of histos with validated mothers, merged cluster invMass, pt
224 TH2F **fHistoTrueEtaCaloMergedClusterInvMassPt; //! array of histos with validated mothers, merged cluster invMass, pt
fd94f234 225 TH2F **fHistoTrueMotherCaloEMNonLeadingInvMassPt; //! array of histos with validated mothers, EM non leading, invMass, pt
ed8bc1ca 226 TH2F **fHistoTruePi0CaloMergedClusterPartConvInvMassPt; //! array of histos with validated mothers, merged cluster part conv, invMass, pt
227 TH2F **fHistoTrueEtaCaloMergedClusterPartConvInvMassPt; //! array of histos with validated mothers, merged cluster part conv, invMass, pt
228 TH2F **fHistoTruePrimaryPi0InvMassPt; //! array of histos with validated weighted primary mothers, invMass, pt
229 TH2F **fHistoTruePrimaryEtaInvMassPt; //! array of histos with validated weighted primary mothers, invMass, pt
ee4b3d66 230 TH2F **fHistoTruePrimaryPi0W0WeightingInvMassPt; //! array of histos with validated unweighted primary mothers, invMass, pt
231 TH2F **fHistoTruePrimaryEtaW0WeightingInvMassPt; //! array of histos with validated unweighted primary mothers, invMass, pt
232 TProfile2D **fProfileTruePrimaryPi0WeightsInvMassPt; //! array of profiles with weights for validated primary mothers, invMass, pt
233 TProfile2D **fProfileTruePrimaryEtaWeightsInvMassPt; //! array of profiles with weights for validated primary mothers, invMass, pt
8bdca7f1 234 TH2F **fHistoTruePrimaryPi0MCPtResolPt; //! array of histos with validated weighted primary pi0, MCpt, resol pt
235 TH2F **fHistoTruePrimaryEtaMCPtResolPt; //! array of histos with validated weighted primary eta, MCpt, resol pt
ee4b3d66 236 TH2F **fHistoTrueMotherPi0ConvPhotonEtaPhi; //! array of histograms with invariant mass cut of 0.05 && pi0cand->M() < 0.17 ,eta/phi of conversion photon
237 TH2F **fHistoTrueMotherEtaConvPhotonEtaPhi; //! array of histograms with invariant mass cut of 0.45 && pi0cand->M() < 0.65 ,eta/phi of conversion photon
238 TH2F **fHistoTrueSecondaryPi0InvMassPt; //! array of histos with validated secondary mothers, invMass, pt
ee4b3d66 239 TH2F **fHistoTrueSecondaryPi0FromK0sInvMassPt; //! array of histos with validated secondary mothers from K0s, invMass, pt
8bdca7f1 240 TH1F **fHistoTrueK0sWithPi0DaughterMCPt; //! array of histos with K0s with reconstructed pi0 as daughter, pt
ee4b3d66 241 TH2F **fHistoTrueSecondaryPi0FromEtaInvMassPt; //! array of histos with validated secondary mothers from eta, invMass, pt
8bdca7f1 242 TH1F **fHistoTrueEtaWithPi0DaughterMCPt; //! array of histos with eta with reconstructed pi0 as daughter, pt
ed8bc1ca 243 TH2F **fHistoTrueSecondaryPi0FromLambdaInvMassPt; //! array of histos with validated secondary mothers from Lambda, invMass, pt
8bdca7f1 244 TH1F **fHistoTrueLambdaWithPi0DaughterMCPt; //! array of histos with lambda with reconstructed pi0 as daughter, pt
245 TH2F **fHistoTrueBckGGInvMassPt; //! array of histos with pure gamma gamma combinatorial BG, invMass, pt
fd94f234 246 TH2F **fHistoTrueBckContInvMassPt; //! array of histos with contamination BG, invMass, pt
247 TH2F **fHistoTruePi0PtY; //! array of histos with validated pi0, pt, Y
8bdca7f1 248 TH2F **fHistoTrueEtaPtY; //! array of histos with validated eta, pt, Y
249 TH2F **fHistoTruePi0PtAlpha; //! array of histos with validated pi0, pt, alpha
250 TH2F **fHistoTrueEtaPtAlpha; //! array of histos with validated eta, pt, alpha
251 TH2F **fHistoTruePi0PtOpenAngle; //! array of histos with validated pi0, pt, openAngle
252 TH2F **fHistoTrueEtaPtOpenAngle; //! array of histos with validated eta, pt, openAngle
8bdca7f1 253 // MC validated reconstructed quantities photons
254 TH1F **fHistoTrueConvGammaPt; //! array of histos with validated conversion photon, pt
255 TH1F **fHistoTrueConvPi0GammaPt; //! array of histos with validated conversion photon from pi0, pt
256 TH1F **fHistoTrueConvGammaEta; //! array of histos with validated conversion photon, eta
257 TH2F **fHistoCombinatorialPt; //! array of histos with combinatorial BG, pt, source
258 TH1F **fHistoTruePrimaryConvGammaPt; //! array of histos with validated primary conversion photon, pt
259 TH2F **fHistoTruePrimaryConvGammaESDPtMCPt; //! array of histos with validated primary conversion photon, rec pt, mc pt
260 TH1F **fHistoTrueSecondaryConvGammaPt; //! array of histos with validated secondary conversion photon, pt
261 TH1F **fHistoTrueSecondaryConvGammaFromXFromK0sPt; //! array of histos with validated secondary conversion photon from K0s, pt
262 TH1F **fHistoTrueSecondaryConvGammaFromXFromLambdaPt;//! array of histos with validated secondary conversion photon from Lambda, pt
fd94f234 263 TH1F **fHistoTrueClusGammaPt; //! array of histos with validated cluster (electron or photon), pt
264 TH1F **fHistoTrueClusUnConvGammaPt; //! array of histos with validated unconverted photon, pt
20af4b69 265 TH1F **fHistoTrueClusUnConvGammaMCPt; //! array of histos with validated unconverted photon, pt
fd94f234 266 TH1F **fHistoTrueClusElectronPt; //! array of histos with validated electron, pt
267 TH1F **fHistoTrueClusConvGammaPt; //! array of histos with validated converted photon, pt
20af4b69 268 TH1F **fHistoTrueClusConvGammaMCPt; //! array of histos with validated converted photon, pt
fd94f234 269 TH1F **fHistoTrueClusConvGammaFullyPt; //! array of histos with validated converted photon, fully contained, pt
270 TH1F **fHistoTrueClusMergedGammaPt; //! array of histos with validated merged photons, electrons, dalitz, pt
271 TH1F **fHistoTrueClusMergedPartConvGammaPt; //! array of histos with validated merged partially converted photons, pt
272 TH1F **fHistoTrueClusDalitzPt; //! array of histos with validated Dalitz decay, pt
273 TH1F **fHistoTrueClusDalitzMergedPt; //! array of histos with validated Dalitz decay, more than one decay product in cluster, pt
274 TH1F **fHistoTrueClusPhotonFromElecMotherPt; //! array of histos with validated photon from electron, pt
275 TH1F **fHistoTrueClusShowerPt; //! array of histos with validated shower, pt
cc579963 276 TH1F **fHistoTrueClusSubLeadingPt; //! array of histos with pi0/eta/eta_prime in subleading contribution
277 TH1I **fHistoTrueClusNParticles; //! array of histos with number of different particles (pi0/eta/eta_prime) contributing to cluster
fd94f234 278 TH1F **fHistoTrueClusEMNonLeadingPt; //! array of histos with cluster with largest energy by hadron
279 TH1F **fHistoTrueNLabelsInClus; //! array of histos with number of labels in cluster
280 TH1F **fHistoTruePrimaryClusGammaPt; //! array of histos with validated primary cluster, pt
281 TH2F **fHistoTruePrimaryClusGammaESDPtMCPt; //! array of histos with validated primary cluster, rec Pt, MC pt
ea1bc51e 282 TH2F **fHistoTruePrimaryPi0PhotonPairPtconv; //! array of histos with validated primary pi0's vs conversion photon pT
e764f3ba 283 TH1F **fHistoTruePrimaryPi0DCPtconv; //! array of histos with validated primary pi0's vs conversion photon pT, double counting
284 TH1F **fHistoTruePrimaryPi0MissingPtconv; //! array of histos with validated primary pi0's vs conversion photon pT, missing
ea1bc51e 285 TH2F **fHistoTruePrimaryEtaPhotonPairPtconv; //! array of histos with validated primary eta's vs conversion photon pT
e764f3ba 286 TH1F **fHistoTruePrimaryEtaDCPtconv; //! array of histos with validated primary eta's vs conversion photon pT, double counting
287 TH1F **fHistoTruePrimaryEtaMissingPtconv; //! array of histos with validated primary eta's vs conversion photon pT, missing
ea1bc51e 288 TH2F **fHistoTrueSecondaryPi0PhotonPairPtconv; //! array of histos with validated secondary pi0's vs conversion photon pT
e764f3ba 289 TH1F **fHistoTrueSecondaryPi0DCPtconv; //! array of histos with validated secondary pi0's vs conversion photon pT, double counting
290 TH1F **fHistoTrueSecondaryPi0MissingPtconv; //! array of histos with validated secondary pi0's vs conversion photon pT, missing
291 TString *fStringRecTruePi0s; //! array of strings containing the stack position of the reconstructed validated pi0
292 TString *fStringRecTrueEtas; //! array of strings containing the stack position of the reconstructed validated eta
8bdca7f1 293 // event histograms
294 TH1I **fHistoNEvents; //! array of histos with event information
295 TH1I **fHistoNGoodESDTracks; //! array of histos with number of good tracks (2010 Standard track cuts)
296 TH1I **fHistoNGammaCandidates; //! array of histos with number of gamma candidates per event
297 TH2F **fHistoNGoodESDTracksVsNGammaCanditates; //! array of histos with number of good tracks vs gamma candidates
298 TH1I **fHistoNV0Tracks; //! array of histos with V0 counts
299 TProfile **fProfileEtaShift; //! array of profiles with eta shift
300
301 // additional variables
302 Double_t fEventPlaneAngle; // EventPlaneAngle
303 TRandom3 fRandom; // random
304 Int_t fNGammaCandidates; // number of gamma candidates in event
305 Double_t *fUnsmearedPx; //[fNGammaCandidates]
306 Double_t *fUnsmearedPy; //[fNGammaCandidates]
307 Double_t *fUnsmearedPz; //[fNGammaCandidates]
308 Double_t *fUnsmearedE; //[fNGammaCandidates]
309 Int_t *fMCStackPos; //[fNGammaCandidates]
310 Int_t *fMCStackNeg; //[fNGammaCandidates]
311 Int_t *fESDArrayPos; //[fNGammaCandidates]
312 Int_t *fESDArrayNeg; //[fNGammaCandidates]
313 Int_t fnCuts; // number of cuts to be analysed in parallel
314 Int_t fiCut; // current cut
315 Bool_t fMoveParticleAccordingToVertex; // boolean for BG calculation
316 Int_t fIsHeavyIon; // switch for pp = 0, PbPb = 1, pPb = 2
317 Bool_t fDoMesonAnalysis; // flag for meson analysis
318 Int_t fDoMesonQA; // flag for meson QA
319 Int_t fDoPhotonQA; // flag for photon QA
fd94f234 320 Int_t fDoClusterQA; // flag for cluster QA
8bdca7f1 321 Bool_t fIsFromMBHeader; // flag for MC headers
ecd3e131 322 Bool_t fIsOverlappingWithOtherHeader; // flag for particles in MC overlapping between headers
8bdca7f1 323 Bool_t fIsMC; // flag for MC information
324
ea1bc51e 325
8bdca7f1 326 private:
327 AliAnalysisTaskGammaConvCalo(const AliAnalysisTaskGammaConvCalo&); // Prevent copy-construction
328 AliAnalysisTaskGammaConvCalo &operator=(const AliAnalysisTaskGammaConvCalo&); // Prevent assignment
329
e764f3ba 330 ClassDef(AliAnalysisTaskGammaConvCalo, 5);
8bdca7f1 331};
332
333#endif