]>
Commit | Line | Data |
---|---|---|
57189f04 | 1 | #ifndef ALIANALYSISTASKELECHADRONCORREL_H |
2 | #define ALIANALYSISTASKELECHADRONCORREL_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | //////////////////////////////////////////////////////////////////////// | |
8 | // // | |
9 | // Task for Heavy Flavour Electron-Hadron DeltaPhi Correlation // | |
10 | // // | |
11 | // Author: Deepa Thomas (Utrecht University) // | |
12 | // // | |
13 | //////////////////////////////////////////////////////////////////////// | |
14 | ||
15 | class THnSparse; | |
16 | class TH2F; | |
17 | class TLorentzVector; | |
18 | ||
19 | class AliEMCALTrack; | |
20 | class AliMagF; | |
21 | class AliESDEvent; | |
22 | class AliAODEvent; | |
23 | class AliEMCALGeometry; | |
24 | class AliEMCALRecoUtils; | |
25 | class AliAnalysisFilter; | |
26 | class AliESDtrackCuts; | |
27 | class AliESDtrack; | |
28 | class AliHFEcontainer; | |
29 | class AliHFEcuts; | |
30 | class AliHFEpid; | |
31 | class AliHFEpidQAmanager; | |
32 | class AliCFManager; | |
4e01b68c | 33 | //class AliEventPoolManager; |
57189f04 | 34 | |
35 | #include "AliAnalysisTaskSE.h" | |
520a29a8 | 36 | #include "AliCentrality.h" |
57189f04 | 37 | |
38 | class AliAnalysisTaskElecHadronCorrel : public AliAnalysisTaskSE { | |
4e01b68c | 39 | public: |
40 | AliAnalysisTaskElecHadronCorrel(); | |
41 | AliAnalysisTaskElecHadronCorrel(const char *name); | |
42 | virtual ~AliAnalysisTaskElecHadronCorrel(); | |
43 | ||
44 | virtual void UserCreateOutputObjects(); | |
45 | virtual void UserExec(Option_t *option); | |
46 | virtual void Terminate(Option_t *); | |
47 | ||
48 | void SetHFECuts(AliHFEcuts * const cuts) { fCuts = cuts; }; | |
49 | void SetOpeningAngleCut (Double_t openingAngle) {fOpeningAngleCut = openingAngle;}; | |
50 | void SetInvariantMassCut (Double_t invmass) {fInvmassCut = invmass;}; | |
51 | AliHFEpid *GetPID() const { return fPID; } | |
52 | void SetRejectKinkMother(Bool_t rejectKinkMother = kFALSE) { fRejectKinkMother = rejectKinkMother; }; | |
53 | void SelectPhotonicElectron(Int_t itrack, AliESDtrack *track, Bool_t &fFlagPhotonicElec); | |
54 | void ElectronHadCorrel(Int_t itrack, AliESDtrack *track, TH2F *DphiPt); | |
55 | void ElectronHadCorrelNoPartner(Int_t itrack,Int_t jtrack, AliESDtrack *track, TH2F *DphiPtNew); | |
56 | // void MixedEvent(AliESDtrack *track, TH2F *DphiPt); | |
57 | // TObjArray* CloneAndReduceTrackList(); | |
58 | private: | |
59 | ||
60 | Bool_t ProcessCutStep(Int_t cutStep, AliVParticle *track); | |
61 | ||
62 | AliESDEvent *fESD; //ESD object | |
63 | AliEMCALGeometry *fGeom; // emcal geometry | |
64 | ||
65 | TList *fOutputList; //output list | |
66 | ||
67 | AliESDtrackCuts *fTrackCuts1; //ESD track cuts | |
68 | AliESDtrackCuts *fTrackCuts2; //ESD track cuts | |
69 | AliHFEcuts *fCuts; //Cut Collection | |
70 | Bool_t fIdentifiedAsOutInz; //Out Of Range in z | |
71 | Bool_t fPassTheEventCut; //Pass The Event Cut | |
72 | Bool_t fRejectKinkMother; //Reject Kink Mother | |
73 | Double_t fVz; //z position of the primary vertex | |
74 | AliCFManager *fCFM; //!Correction Framework Manager | |
75 | AliHFEpid *fPID; //PID | |
76 | AliHFEpidQAmanager *fPIDqa; //! PID QA manager | |
77 | Double_t fOpeningAngleCut; //openingAngle cut value | |
78 | Double_t fInvmassCut; //invariant mass cut value | |
79 | // AliEventPoolManager* fPoolMgr; //! event pool manager | |
80 | ||
81 | TH1F *fNoEvents; //no of events | |
82 | TH1F *fTrkpt; //track pt | |
83 | TH2F *fTrkEovPBef; //track E/p before HFE pid | |
84 | TH2F *fTrkEovPBefHad; //track E/p before HFE pid | |
85 | TH2F *fTrkEovPAft; //track E/p after HFE pid | |
86 | TH2F *fTrkEovPAftOwn; //track E/p after HFE pid | |
87 | TH2F *fdEdxBef; //track dEdx vs p before HFE pid | |
88 | TH2F *fdEdxAft; //track dEdx vs p before HFE pid | |
89 | TH2F *fdEdxAftOwn; //track dEdx vs p before HFE pid | |
90 | TH1F *fInvmassLS; //Inv mass of LS (e,e) | |
91 | TH1F *fInvmassULS; //Inv mass of ULS (e,e) | |
92 | TH1F *fOpeningAngleLS; //opening angle for LS pairs | |
93 | TH1F *fOpeningAngleULS; //opening angle for ULS pairs | |
94 | TH2F *fSemiIncElecDphi; //Semi Inclusive elec - had DPhi | |
95 | TH2F *fPhotElecDphi; //Photon elec - had DPhi | |
96 | TH2F *fInclusiveElecDphi; //Inclusive elec - had DPhi | |
97 | TH2F *fDphiULSMassLow; //Dphi - ULS, mass< mass cut | |
98 | TH2F *fDphiLSMassLow; //Dphi - LS, mass< mass cut | |
99 | TH2F *fDphiULSMassLowNoPartner; //Dphi - ULS, mass< mass cut no partner | |
100 | TH2F *fDphiLSMassLowNoPartner; //Dphi - LS, mass< mass cut | |
101 | TH1F *fPhotoElecPt; //photonic elec pt | |
102 | TH1F *fSemiInclElecPt; //Semi inclusive ele pt | |
103 | TH1F *fInclusiveElecPt; // Inclusive elec pt | |
104 | TH1F *fULSElecPt; //ULS elec Pt | |
105 | TH1F *fLSElecPt;// LS elec pt | |
106 | ||
107 | TH1F *fTrackPtBefTrkCuts; //Track pt before track cuts | |
108 | TH1F *fTrackPtAftTrkCuts; //Track pt after track cuts | |
109 | TH2F *fTPCnsigma; //TPC n sigma vs p | |
110 | TH2F *fTPCnsigmaAft; //TPC n sigma vs p | |
111 | TH2F *fTPCnsigmaAftOwn; //TPC n sigma vs p | |
112 | TH1F *fNCellv1; //No of cells in cluster, all EMCAL cluster | |
113 | TH1F *fClsEv1; //Cluster energy, all EMCAL cluster | |
114 | TH1F *fNClusv1; //No of clusters in event, all EMCAL cluster | |
115 | ||
116 | TH1F *fKFParticleP; //KFparticle rec P distr | |
117 | TH1F *fKFParticleE; //KFparticle rec E distr | |
118 | TH1F *fInvmassLS1; //LS Invmass for all rec par | |
119 | TH1F *fInvmassULS1;//ULS Invmass for all rec par | |
120 | TH1F *fcentrality;// | |
121 | TH1F *fElecPhi;// | |
122 | TH1F *fElecPhiTPC;// | |
123 | TH1F *fElecPhiTPCEovP;// | |
124 | TH1F *fHadronPhi;// | |
125 | TH1F *fTrackHFEcuts;// | |
126 | TH1F *fTrakPhiSPD1;// | |
127 | TH1F *fTrakPhiSPD2;// | |
128 | TH1F *fTrakPhiSPDOr;// | |
129 | TH1F *fTrakPhiSPDAnd;// | |
130 | TH1F *fTrackHFEcutsITS;// | |
131 | /* TH1F *fNoMixedEvents;// | |
132 | TH2F *fMixStat; //no of events in pool vs multplicity | |
133 | TH2F *fMixStat1; //no of events in pool vs zvtx | |
134 | TH2F *fMixedIncElecDphi; //Mixed event - inclusive elec DPhi | |
135 | TH2F *fMixedPhotElecDphi; // | |
136 | TH2F *fMixedSemiIncElecDphi; // | |
137 | TH2F *fMixedDphiULSMassLow;// | |
138 | TH2F *fMixedDphiLSMassLow;// | |
139 | */ | |
140 | ||
141 | // THnSparse *fSparseElectron;//!Electron info | |
142 | // Double_t *fvalueElectron;//!Electron info | |
143 | ||
144 | AliAnalysisTaskElecHadronCorrel(const AliAnalysisTaskElecHadronCorrel&); // not implemented | |
145 | AliAnalysisTaskElecHadronCorrel& operator=(const AliAnalysisTaskElecHadronCorrel&); // not implemented | |
146 | ||
147 | ClassDef(AliAnalysisTaskElecHadronCorrel, 2); //!example of analysis | |
57189f04 | 148 | }; |
149 | ||
150 | #endif | |
151 | ||
152 |