]>
Commit | Line | Data |
---|---|---|
8c1c76e9 | 1 | /**************************************************************************\r |
2 | * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *\r | |
3 | * *\r | |
4 | * Author: The ALICE Off-line Project. *\r | |
5 | * Contributors are mentioned in the code where appropriate. *\r | |
6 | * *\r | |
7 | * Permission to use, copy, modify and distribute this software and its *\r | |
8 | * documentation strictly for non-commercial purposes is hereby granted *\r | |
9 | * without fee, provided that the above copyright notice appears in all *\r | |
10 | * copies and that both the copyright notice and this permission notice *\r | |
11 | * appear in the supporting documentation. The authors make no claims *\r | |
12 | * about the suitability of this software for any purpose. It is *\r | |
13 | * provided "as is" without express or implied warranty. *\r | |
14 | **************************************************************************/\r | |
15 | //\r | |
16 | // Flow task class for the ALICE HFE group\r | |
17 | //\r | |
18 | //\r | |
19 | #ifndef ALIANALYSISTASKHFEFLOW_H\r | |
20 | #define ALIANALYSISTASKHFEFLOW_H\r | |
21 | \r | |
22 | \r | |
23 | \r | |
24 | \r | |
25 | #include <AliAnalysisTaskSE.h>\r | |
26 | \r | |
27 | class TList;\r | |
0e30407a | 28 | class AliVTrack;\r |
29 | class AliVEvent;\r | |
30 | class AliESDtrack;\r | |
31 | class AliESDEvent;\r | |
32 | class AliMCEvent;\r | |
8c1c76e9 | 33 | class AliFlowTrackCuts;\r |
34 | class AliFlowCandidateTrack;\r | |
35 | class AliHFEcuts;\r | |
36 | class AliHFEpid;\r | |
37 | class TH1D;\r | |
38 | class TH2D;\r | |
6733d981 | 39 | class TF1;\r |
e17c1f86 | 40 | class TProfile;\r |
41 | class TProfile2D;\r | |
8c1c76e9 | 42 | class THnSparse;\r |
43 | class AliHFEpidQAmanager;\r | |
44 | class AliFlowEvent;\r | |
0e30407a | 45 | class AliESDtrackCuts;\r |
a8ef1999 | 46 | class AliHFEVZEROEventPlane;\r |
0e30407a | 47 | class TArrayI;\r |
2747660f | 48 | class AliAODMCHeader;\r |
49 | class TClonesArray;\r | |
50 | class AliHFENonPhotonicElectron;\r | |
959ea9d8 | 51 | class TTreeSRedirector;\r |
8c1c76e9 | 52 | \r |
53 | class AliAnalysisTaskHFEFlow: public AliAnalysisTaskSE {\r | |
8c1c76e9 | 54 | public:\r |
0e30407a | 55 | \r |
56 | typedef enum{\r | |
57 | kElectronfromconversion = 0,\r | |
58 | kElectronfromconversionboth = 1,\r | |
59 | kElectronfrompi0 = 2,\r | |
60 | kElectronfrompi0both = 3,\r | |
5cd679b7 | 61 | kElectronfrometa = 4,\r |
62 | kElectronfrometaboth = 5,\r | |
63 | kElectronfromC = 6,\r | |
64 | kElectronfromB = 7,\r | |
7b4c9210 | 65 | kElectronfromother = 8,\r |
66 | kNoElectron = 9\r | |
0e30407a | 67 | } FlowSource_t;\r |
68 | \r | |
69 | typedef enum{\r | |
70 | kS = 0,\r | |
71 | kOp = 1\r | |
72 | } FlowSign_t;\r | |
73 | \r | |
74 | \r | |
75 | \r | |
76 | \r | |
8c1c76e9 | 77 | AliAnalysisTaskHFEFlow();\r |
78 | AliAnalysisTaskHFEFlow(const char *name);\r | |
a8ef1999 | 79 | AliAnalysisTaskHFEFlow(const AliAnalysisTaskHFEFlow &ref);\r |
80 | AliAnalysisTaskHFEFlow& operator=(const AliAnalysisTaskHFEFlow &ref);\r | |
81 | virtual void Copy(TObject &o) const;\r | |
82 | virtual ~AliAnalysisTaskHFEFlow();\r | |
8c1c76e9 | 83 | \r |
84 | virtual void UserExec(Option_t */*option*/);\r | |
85 | virtual void UserCreateOutputObjects();\r | |
86 | \r | |
2747660f | 87 | void SetAODAnalysis(Bool_t aodAnalysis) { fAODAnalysis = aodAnalysis; };\r |
88 | void SetUseFilterAOD(Bool_t useFilterAOD) { fUseFilterAOD = useFilterAOD; }\r | |
89 | void SetApplyCut(Bool_t applyCut) { fApplyCut = applyCut; }\r | |
90 | void SetFilter(ULong_t filter) { fFilter = filter; }\r | |
4102d1cc | 91 | \r |
8c1c76e9 | 92 | AliHFEpid *GetPID() const { return fPID; }\r |
5cd679b7 | 93 | AliHFEpid *GetPIDTOFOnly() const { return fPIDTOFOnly; }\r |
a8ef1999 | 94 | AliHFEpidQAmanager *GetPIDQAManager() const { return fPIDqa; }\r |
0e30407a | 95 | AliHFEpid *GetPIDBackground() const { return fPIDBackground; }\r |
96 | AliHFEpidQAmanager *GetPIDBackgroundQAManager() const { return fPIDBackgroundqa; }\r | |
2747660f | 97 | AliHFENonPhotonicElectron *GetHFEBackgroundSubtraction() const { return fBackgroundSubtraction; }\r |
0e30407a | 98 | \r |
a8ef1999 | 99 | \r |
6733d981 | 100 | void SetContamination(TF1 * const function,Int_t k) { fContamination[k] = function; };\r |
6b2521a4 | 101 | void SetV2Contamination(TF1 * const function,Int_t k) { fv2contamination[k] = function; };\r |
8c1c76e9 | 102 | void SetHFECuts(AliHFEcuts * const cuts) { fHFECuts = cuts; };\r |
2747660f | 103 | void SetRejectKinkMother(Bool_t rejectKinkMother = kFALSE) { fRejectKinkMother = rejectKinkMother; };\r |
104 | void SetHFEBackgroundSubtraction(AliHFENonPhotonicElectron * const backgroundSubtraction) { fBackgroundSubtraction = backgroundSubtraction; };\r | |
0e30407a | 105 | void SetHFEBackgroundCuts(AliESDtrackCuts * const cuts) { fHFEBackgroundCuts = cuts; };\r |
8c1c76e9 | 106 | void SetSubEtaGapTPC(Bool_t subEtaGapTPC) { fSubEtaGapTPC = subEtaGapTPC; };\r |
107 | void SetEtaGap(Double_t etaGap) { fEtaGap = etaGap; };\r | |
e17c1f86 | 108 | void SetVZEROEventPlane(Bool_t vzeroEventPlane) { fVZEROEventPlane = vzeroEventPlane; };\r |
109 | void SetVZEROEventPlaneA(Bool_t vzeroEventPlaneA) { fVZEROEventPlaneA = vzeroEventPlaneA; };\r | |
110 | void SetVZEROEventPlaneC(Bool_t vzeroEventPlaneC) { fVZEROEventPlaneC = vzeroEventPlaneC; };\r | |
a8ef1999 | 111 | void SetHFEVZEROEventPlane(AliHFEVZEROEventPlane *hfeVZEROEventPlane) { fHFEVZEROEventPlane = hfeVZEROEventPlane; };\r |
8c1c76e9 | 112 | \r |
e17c1f86 | 113 | void SetNbBinsCentralityQCumulant(Int_t nbBinsCentralityQCumulant) { fNbBinsCentralityQCumulant = nbBinsCentralityQCumulant; };\r |
114 | void SetBinCentralityLess(Int_t k, Float_t value) { fBinCentralityLess[k] = value; };\r | |
8c1c76e9 | 115 | void SetNbBinsPtQCumulant(Int_t nbBinsPtQCumulant) { fNbBinsPtQCumulant = nbBinsPtQCumulant; };\r |
116 | void SetMinPtQCumulant(Double_t minPtQCumulant) { fMinPtQCumulant = minPtQCumulant; };\r | |
117 | void SetMaxPtQCumulant(Double_t maxPtQCumulant) { fMaxPtQCumulant = maxPtQCumulant; };\r | |
118 | \r | |
119 | void SetAfterBurnerOn(Bool_t afterBurnerOn) { fAfterBurnerOn = afterBurnerOn; };\r | |
120 | void SetNonFlowNumberOfTrackClones(Int_t nonFlowNumberOfTrackClones) { fNonFlowNumberOfTrackClones = nonFlowNumberOfTrackClones; };\r | |
121 | void SetV1V2V3V4V5(Double_t v1,Double_t v2,Double_t v3,Double_t v4,Double_t v5) {fV1 = v1; fV2 = v2; fV3 = v3; fV4 = v4; fV5 = v5; };\r | |
122 | void SetMaxNumberOfIterations(Int_t maxNumberOfIterations) { fMaxNumberOfIterations = maxNumberOfIterations; };\r | |
123 | void SetPrecisionPhi(Double_t precisionPhi) { fPrecisionPhi = precisionPhi;};\r | |
124 | void SetUseMCReactionPlane(Bool_t useMCReactionPlane) { fUseMCReactionPlane = useMCReactionPlane;};\r | |
959ea9d8 | 125 | void SetUseSP(Bool_t useSP) { fSP = useSP;}\r |
8c1c76e9 | 126 | void SetMCPID(Bool_t mcPID) { fMCPID = mcPID;};\r |
a8ef1999 | 127 | void SetNoPID(Bool_t noPID) { fNoPID = noPID;};\r |
8c1c76e9 | 128 | \r |
e17c1f86 | 129 | void SetDebugLevel(Int_t debugLevel) { fDebugLevel = debugLevel;};\r |
7b5936fc | 130 | void SetMonitorEventPlane(Bool_t monitorEventPlane) { fMonitorEventPlane = monitorEventPlane;};\r |
131 | void SetMonitorContamination(Bool_t monitorContamination) { fMonitorContamination = monitorContamination;};\r | |
132 | void SetMonitorPhotonic(Bool_t monitorPhotonic) { fMonitorPhotonic = monitorPhotonic;};\r | |
133 | void SetMonitorWithoutPID(Bool_t monitorWithoutPID) { fMonitorWithoutPID = monitorWithoutPID;};\r | |
134 | void SetMonitorTrackCuts(Bool_t monitorTrackCuts) { fMonitorTrackCuts = monitorTrackCuts;};\r | |
135 | void SetMonitorQCumulant(Bool_t monitorQCumulant) { fMonitorQCumulant = monitorQCumulant;};\r | |
e17c1f86 | 136 | \r |
137 | Int_t GetNbBinsCentralityQCumulant() const { return fNbBinsCentralityQCumulant; };\r | |
138 | Double_t GetBinCentralityLess(Int_t k) const { return fBinCentralityLess[k]; };\r | |
8c1c76e9 | 139 | \r |
140 | AliFlowCandidateTrack *MakeTrack( Double_t mass, Double_t pt, Double_t phi, Double_t eta) ;\r | |
141 | Double_t GetPhiAfterAddV2(Double_t phi,Double_t reactionPlaneAngle) const;\r | |
0e30407a | 142 | \r |
143 | void SetMaxInvmass(Double_t maxInvmass) { fMaxInvmass = maxInvmass; };\r | |
144 | void SetMaxopening3D(Double_t maxOpening3D) { fMaxopening3D = maxOpening3D; };\r | |
145 | void SetMaxopeningtheta(Double_t maxOpeningtheta) { fMaxopeningtheta = maxOpeningtheta; };\r | |
146 | void SetMaxopeningphi(Double_t maxOpeningphi) { fMaxopeningphi = maxOpeningphi; };\r | |
4317a065 | 147 | void SetAlgorithmMA(Bool_t algorithmMA) { fAlgorithmMA = algorithmMA; };\r |
7b4c9210 | 148 | void SetMassConstraint(Bool_t massConstraint) { fSetMassConstraint = massConstraint; };\r |
0e30407a | 149 | \r |
150 | Int_t LookAtNonHFE(Int_t iTrack1, AliVTrack *track1, AliVEvent *fESD, AliMCEvent *mcEvent,Int_t binct,Double_t deltaphi,Int_t source,Int_t indexmother);\r | |
8c1c76e9 | 151 | \r |
152 | private:\r | |
11ff28c5 | 153 | TList *fListHist; //! TH list\r |
154 | Bool_t fAODAnalysis; // AOD analysis\r | |
2747660f | 155 | Bool_t fUseFilterAOD; // Use the preselected AOD track\r |
4102d1cc | 156 | Bool_t fApplyCut; // Apply the analysis cut for AOD tracks\r |
2747660f | 157 | ULong_t fFilter; // reconstruction AOD status flags \r |
158 | AliAODMCHeader *fAODMCHeader; // ! MC info AOD\r | |
159 | TClonesArray *fAODArrayMCInfo; // ! MC info particle AOD\r | |
160 | AliHFENonPhotonicElectron *fBackgroundSubtraction; // Background subtraction\r | |
4102d1cc | 161 | \r |
a8ef1999 | 162 | Bool_t fVZEROEventPlane; // Use Event Planes from VZERO\r |
e17c1f86 | 163 | Bool_t fVZEROEventPlaneA; // Use Event Planes from VZERO A\r |
164 | Bool_t fVZEROEventPlaneC; // Use Event Planes from VZERO C\r | |
165 | \r | |
a8ef1999 | 166 | Bool_t fSubEtaGapTPC; // bool to fill with eta gap\r |
167 | Double_t fEtaGap; // Value of the eta gap\r | |
8c1c76e9 | 168 | \r |
e17c1f86 | 169 | Int_t fNbBinsCentralityQCumulant; // Number of Bins Q Cumulant\r |
a8ef1999 | 170 | Double_t fBinCentralityLess[10]; // Centrality Bin lower value\r |
171 | Int_t fNbBinsPtQCumulant; // Nbbinspt QCumulant method\r | |
172 | Double_t fMinPtQCumulant; // Min pt QCumulant method\r | |
173 | Double_t fMaxPtQCumulant; // Max pt QCumulant method\r | |
174 | Bool_t fAfterBurnerOn; // Add flow to all tracks\r | |
8c1c76e9 | 175 | Int_t fNonFlowNumberOfTrackClones; // number of times to clone the particles (nonflow) \r |
176 | Double_t fV1; // Add Flow. Must be in range [0,0.5].\r | |
177 | Double_t fV2; // Add Flow. Must be in range [0,0.5].\r | |
178 | Double_t fV3; // Add Flow. Must be in range [0,0.5].\r | |
179 | Double_t fV4; // Add Flow. Must be in range [0,0.5].\r | |
180 | Double_t fV5; // Add Flow. Must be in range [0,0.5].\r | |
181 | Int_t fMaxNumberOfIterations; // Max number of iteration for adding v2\r | |
182 | Double_t fPrecisionPhi; // precision phi for adding v2\r | |
183 | Bool_t fUseMCReactionPlane; // use MC reaction plane\r | |
959ea9d8 | 184 | Bool_t fSP; // calculate using scalar product method (instead of event plane method)\r |
8c1c76e9 | 185 | \r |
186 | Bool_t fMCPID; // MC PID for electrons\r | |
a8ef1999 | 187 | Bool_t fNoPID; // No PID for checks\r |
e17c1f86 | 188 | \r |
0e30407a | 189 | Double_t fChi2OverNDFCut; // Limit chi2\r |
190 | Double_t fMaxdca; // Limit dca\r | |
191 | Double_t fMaxopeningtheta; // Limit opening angle in theta\r | |
192 | Double_t fMaxopeningphi; // Limit opening angle in phi\r | |
193 | Double_t fMaxopening3D; // Limit opening 3D\r | |
194 | Double_t fMaxInvmass; // Limit invariant mass\r | |
7b4c9210 | 195 | Bool_t fSetMassConstraint; // Set mass constraint\r |
0e30407a | 196 | \r |
197 | \r | |
e17c1f86 | 198 | Int_t fDebugLevel; // Debug Level \r |
7b5936fc | 199 | Bool_t fMonitorEventPlane; // Monitor event plane\r |
200 | Bool_t fMonitorContamination; // Monitor contamination\r | |
201 | Bool_t fMonitorPhotonic;// Monitor photonic\r | |
202 | Bool_t fMonitorWithoutPID;// Monitor without PID\r | |
203 | Bool_t fMonitorTrackCuts;// Monitor track cuts\r | |
204 | Bool_t fMonitorQCumulant;// Monitor Q cumulant\r | |
205 | \r | |
8c1c76e9 | 206 | // Cuts for FLOW PWG2\r |
7c4ec6e7 | 207 | AliFlowTrackCuts* fcutsRP; //! Reference particle cut\r |
208 | AliFlowTrackCuts* fcutsPOI; //! Particle Of Interest cut\r | |
8c1c76e9 | 209 | \r |
210 | // Cuts for HFE\r | |
7f695a7b | 211 | AliHFEcuts *fHFECuts; // HFE cuts\r |
2747660f | 212 | Bool_t fRejectKinkMother; // Reject Kink Mother \r |
7f695a7b | 213 | AliHFEpid *fPID; // PID cuts \r |
214 | AliHFEpid *fPIDTOFOnly; // PID cuts TOF only\r | |
215 | AliHFEpidQAmanager *fPIDqa; // QA Manager\r | |
0e30407a | 216 | AliFlowEvent *fflowEvent; //! Flow event \r |
217 | \r | |
6733d981 | 218 | // Hadron Contamination\r |
219 | TF1 *fContamination[11]; // Parametrization of the contamination (0-5,5-10,10-20,20-30,30-40,40-50,50-60,60-70,70-80,80-90,90-100)\r | |
6b2521a4 | 220 | TF1 *fv2contamination[11]; // Parametrization of the v2 of charged pions (0-5,5-10,10-20,20-30,30-40,40-50,50-60,60-70,70-80,80-90,90-100)\r |
6733d981 | 221 | \r |
0e30407a | 222 | // Cuts for background study\r |
7f695a7b | 223 | AliESDtrackCuts *fHFEBackgroundCuts; // HFE background cuts\r |
224 | AliHFEpid *fPIDBackground; // PID background cuts \r | |
225 | AliHFEpidQAmanager *fPIDBackgroundqa; // QA Manager Background \r | |
0e30407a | 226 | Bool_t fAlgorithmMA; // algorithm MA\r |
227 | \r | |
228 | // List of tracks\r | |
7c4ec6e7 | 229 | TArrayI *fArraytrack; //! list of tracks\r |
0e30407a | 230 | Int_t fCounterPoolBackground; // number of tracks\r |
8c1c76e9 | 231 | \r |
a8ef1999 | 232 | // VZERO Event plane after calibration 2010\r |
7f695a7b | 233 | AliHFEVZEROEventPlane *fHFEVZEROEventPlane; // VZERO event plane calibrated\r |
a8ef1999 | 234 | \r |
8c1c76e9 | 235 | // Histos\r |
2747660f | 236 | TH2D *fHistEV; //! Number of events\r |
8c1c76e9 | 237 | \r |
e17c1f86 | 238 | // A Event plane as function of phiepa, phiepb, phiepc, phiepd centrality \r |
6733d981 | 239 | // a V0A, b V0C, c TPC,\r |
a8ef1999 | 240 | THnSparseF *fEventPlane; //! Event plane\r |
8c1c76e9 | 241 | \r |
242 | // B Event Plane after subtraction as function of phiep, centrality \r | |
a8ef1999 | 243 | THnSparseF *fEventPlaneaftersubtraction; //! Event plane\r |
8c1c76e9 | 244 | \r |
6733d981 | 245 | // Contamination\r |
6b2521a4 | 246 | THnSparseF *fFractionContamination; //! Fraction of contamination as function of pt\r |
247 | TProfile2D *fContaminationv2; //! v2 of contamination\r | |
6733d981 | 248 | \r |
e17c1f86 | 249 | // Monitoring Event plane: cos2phi, sin2phi, centrality\r |
a8ef1999 | 250 | THnSparseF *fCosSin2phiep; //! Cos(2phi), Sin(2phi)\r |
e17c1f86 | 251 | \r |
8c1c76e9 | 252 | // E Monitoring Event plane after subtraction of the track: cos, centrality, pt, eta\r |
a8ef1999 | 253 | THnSparseF *fCos2phie; //! Monitoring\r |
254 | THnSparseF *fSin2phie; //! Monitoring\r | |
255 | THnSparseF *fCos2phiep; //! Monitoring\r | |
256 | THnSparseF *fSin2phiep; //! Monitoring\r | |
257 | THnSparseF *fSin2phiephiep; //! Monitoring\r | |
e17c1f86 | 258 | \r |
259 | // Fbis Resolution as function of cosres, cosres, cosres, centrality for three subevents (V0)\r | |
260 | // a V0A, b V0C, c TPC\r | |
a8ef1999 | 261 | THnSparseF *fCosResabc; //! Res\r |
262 | THnSparseF *fSinResabc; //! Res\r | |
263 | TProfile *fProfileCosResab; //! Profile Res_a_b\r | |
264 | TProfile *fProfileCosResac; //! Profile Res_a_c\r | |
265 | TProfile *fProfileCosResbc; //! Profile Res_b_c\r | |
8c1c76e9 | 266 | \r |
e17c1f86 | 267 | // F Resolution as function of cosres, centrality for two subevents (TPC)\r |
a8ef1999 | 268 | THnSparseF *fCosRes; //! Res\r |
269 | THnSparseF *fSinRes; //! Res\r | |
270 | TProfile *fProfileCosRes; //! Profile Res\r | |
8c1c76e9 | 271 | \r |
0e30407a | 272 | // Debuging Cuts step by step all centrality together: pt, step (6)\r |
273 | THnSparseF *fTrackingCuts; //! Tracking Cuts\r | |
274 | \r | |
275 | // Before PID cut\r | |
276 | // G Maps delta phi as function of deltaphi, centrality, pt\r | |
277 | THnSparseF *fDeltaPhiMapsBeforePID; //! Delta phi\r | |
278 | // H Maps cos phi : cos, centrality, pt\r | |
279 | THnSparseF *fCosPhiMapsBeforePID; //! Cos\r | |
280 | \r | |
8c1c76e9 | 281 | // G Maps delta phi as function of deltaphi, centrality, pt\r |
a8ef1999 | 282 | THnSparseF *fDeltaPhiMaps; //! Delta phi\r |
5cd679b7 | 283 | THnSparseF *fDeltaPhiMapsContamination; //! Delta phi for contamination substraction\r |
8c1c76e9 | 284 | // H Maps cos phi : cos, centrality, pt\r |
a8ef1999 | 285 | THnSparseF *fCosPhiMaps; //! Cos\r |
286 | TProfile2D *fProfileCosPhiMaps; //! Profile Cos\r | |
0e30407a | 287 | \r |
288 | // Background study: not statistic but tagged \r | |
2747660f | 289 | THnSparseF *fDeltaPhiMapsTaggedPhotonic; //! Delta phi\r |
6733d981 | 290 | //THnSparseF *fCosPhiMapsTaggedPhotonic; //! Cos\r |
2747660f | 291 | THnSparseF *fDeltaPhiMapsTaggedNonPhotonic; //! Delta phi\r |
6733d981 | 292 | //THnSparseF *fCosPhiMapsTaggedNonPhotonic; //! Cos\r |
2747660f | 293 | THnSparseF *fDeltaPhiMapsTaggedPhotonicLS; //! Delta phi\r |
6733d981 | 294 | //THnSparseF *fCosPhiMapsTaggedPhotonicLS; //! Cos\r |
0e30407a | 295 | \r |
296 | // Background study: centrality, pt, source\r | |
297 | THnSparseF *fMCSourceDeltaPhiMaps; //! Source MC\r | |
298 | // Background study: deltaphi, centrality, pt, minv, source\r | |
299 | THnSparseF *fOppSignDeltaPhiMaps; //! Delta phi\r | |
300 | THnSparseF *fSameSignDeltaPhiMaps; //! Delta phi\r | |
301 | // Background study: angle, centrality, source\r | |
302 | THnSparseF *fOppSignAngle; // ! Opening Angles\r | |
303 | THnSparseF *fSameSignAngle; // ! Opening Angles\r | |
304 | \r | |
959ea9d8 | 305 | TTreeSRedirector *fDebugStreamer; //!Debug streamer\r |
306 | \r | |
307 | Int_t FindMother(Int_t tr, AliMCEvent *mcEvent, Int_t &indexmother);\r | |
7b4c9210 | 308 | Int_t CheckPdg(Int_t tr, AliMCEvent* mcEvent);\r |
0e30407a | 309 | Int_t IsMotherGamma(Int_t tr, AliMCEvent* mcEvent);\r |
310 | Int_t IsMotherPi0(Int_t tr, AliMCEvent* mcEvent);\r | |
311 | Int_t IsMotherC(Int_t tr, AliMCEvent* mcEvent);\r | |
312 | Int_t IsMotherB(Int_t tr, AliMCEvent* mcEvent);\r | |
313 | Int_t IsMotherEta(Int_t tr, AliMCEvent* mcEvent);\r | |
314 | \r | |
8c1c76e9 | 315 | \r |
316 | ClassDef(AliAnalysisTaskHFEFlow, 1); // analysisclass\r | |
317 | };\r | |
318 | \r | |
319 | #endif\r |