]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/hfe/AliAnalysisTaskElecV2.h
Using a conservative 3% estimate for the K0s signal extraction systematics. Using...
[u/mrichter/AliRoot.git] / PWGHF / hfe / AliAnalysisTaskElecV2.h
CommitLineData
1d08b6e8 1/**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15
16#ifndef ALIANALYSISTASKELECV2_H
17#define ALIANALYSISTASKELECV2_H
18
19class THnSparse;
20class TH2F;
21class TLorentzVector;
22
23class AliEMCALTrack;
24class AliMagF;
25class AliESDEvent;
26class AliAODEvent;
27class AliEMCALGeometry;
28class AliEMCALRecoUtils;
29class AliAnalysisFilter;
30class AliESDtrackCuts;
31class AliESDtrack;
32class AliHFEcontainer;
33class AliHFEcuts;
34class AliHFEpid;
35class AliHFEpidQAmanager;
36class AliCFManager;
37
38#include "AliAnalysisTaskSE.h"
39
40class AliAnalysisTaskElecV2 : public AliAnalysisTaskSE {
41 public:
42 AliAnalysisTaskElecV2();
43 AliAnalysisTaskElecV2(const char *name);
44 virtual ~AliAnalysisTaskElecV2();
45
46 virtual void UserCreateOutputObjects();
47 virtual void UserExec(Option_t *option);
48 virtual void Terminate(Option_t *);
49
50 void SetHFECuts(AliHFEcuts * const cuts) { fCuts = cuts; };
51 void SetOpeningAngleCut (Double_t openingAngle) {fOpeningAngleCut = openingAngle;};
52 void SetInvariantMassCut (Double_t invmass) {fInvmassCut = invmass;};
53 AliHFEpid *GetPID() const { return fPID; }
54 void SetRejectKinkMother(Bool_t rejectKinkMother = kFALSE) { fRejectKinkMother = rejectKinkMother; };
06d74a7b 55 void SelectPhotonicElectron(Int_t iTracks,AliESDtrack *track,Bool_t &fFlagPhotonicElec, Bool_t &fFlagPhotonicElecBCG);
56
1d08b6e8 57 Double_t GetCos2DeltaPhi(Double_t phiA,Double_t phiB) const;
58 Double_t GetDeltaPhi(Double_t phiA,Double_t phiB) const;
b1a1875f 59 Double_t GetclusterE(Int_t iTrack, Double_t clsPhi, Double_t clsEta) const;
1d08b6e8 60 private:
61
62 Bool_t ProcessCutStep(Int_t cutStep, AliVParticle *track);
63
64 AliESDEvent *fESD; //!ESD object
3a94d6fe 65 AliMCEvent *fMC; //!MC object
1d08b6e8 66
67 TList *fOutputList; //! output list
68
69 AliESDtrackCuts *fTrackCuts; //! ESD track cuts
70 AliHFEcuts *fCuts; //! Cut Collection
71 Bool_t fIdentifiedAsOutInz; //Out Of Range in z
72 Bool_t fPassTheEventCut; //Pass The Event Cut
73 Bool_t fRejectKinkMother; //Reject Kink Mother
3a94d6fe 74 Bool_t fIsMC;
1d08b6e8 75 Double_t fVz; //z position of the primary vertex
76 AliCFManager *fCFM; //! Correction Framework Manager
77 AliHFEpid *fPID; //! PID
78 AliHFEpidQAmanager *fPIDqa; //! PID QA manager
79 Double_t fOpeningAngleCut; //openingAngle cut value
80 Double_t fInvmassCut; //invariant mass cut value
81
82 TH1F *fNoEvents; //! no of events
83 TH1F *fTrkpt; //! track pt
84 TH2F *fTrkEovPBef; //! track E/p before HFE pid
85 TH2F *fTrkEovPAft; //! track E/p after HFE pid
86 TH2F *fdEdxBef; //! track dEdx vs p before HFE pid
87 TH2F *fdEdxAft; //! track dEdx vs p after HFE pid
88 TH1F *fInvmassLS; //! Inv mass of LS (e,e)
89 TH1F *fInvmassULS; //! Inv mass of ULS (e,e)
90 TH1F *fOpeningAngleLS; //! opening angle for LS pairs
91 TH1F *fOpeningAngleULS; //! opening angle for ULS pairs
92 TH1F *fPhotoElecPt; //! photonic elec pt
93 TH1F *fSemiInclElecPt; //! Semi inclusive ele pt
3a94d6fe 94 THnSparse *fMCphotoElecPt; //! pt distribution (MC)
1d08b6e8 95
96 TH1F *fTrackPtBefTrkCuts; //! Track pt before track cuts
97 TH1F *fTrackPtAftTrkCuts; //! Track pt after track cuts
98 TH2F *fTPCnsigma; //! TPC n sigma vs p
99
100 TH1F *fCent; //! centrality
5945f829 101 TH2F *fevPlaneV0A; //! V0A event plane distribution
102 TH2F *fevPlaneV0C; //! V0C event plane distribution
103 TH2F *fevPlaneTPC; //! TPC event plane distribution
1d08b6e8 104 TH2F *fTPCsubEPres; //! TPC event plane resolution
105 THnSparse *fEPres; //! event plane resolution
106 THnSparse *fCorr; //! correlations
107 THnSparse *feTPCV2; //! inclusive eletron v2 (only TPC PID)
108 THnSparse *feV2; //! inclusive eletron v2 (TPC + EMCAL PID)
109 THnSparse *fphoteV2; //! photonic electron v2 (TPC + EMCAL PID)
110 THnSparse *fChargPartV2; //! charged particle v2
5945f829 111
1d08b6e8 112 AliAnalysisTaskElecV2(const AliAnalysisTaskElecV2&); // not implemented
113 AliAnalysisTaskElecV2& operator=(const AliAnalysisTaskElecV2&); // not implemented
114
115 ClassDef(AliAnalysisTaskElecV2, 1); //!example of analysis
116};
117
118#endif
119
120