]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/hfe/AliAnalysisTaskElecHadronCorrel.h
Updated treatment of D0/D0bar mass assumption (Carlos)
[u/mrichter/AliRoot.git] / PWGHF / hfe / AliAnalysisTaskElecHadronCorrel.h
CommitLineData
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
15class THnSparse;
16class TH2F;
17class TLorentzVector;
18
19class AliEMCALTrack;
20class AliMagF;
21class AliESDEvent;
22class AliAODEvent;
23class AliEMCALGeometry;
24class AliEMCALRecoUtils;
25class AliAnalysisFilter;
26class AliESDtrackCuts;
27class AliESDtrack;
28class AliHFEcontainer;
29class AliHFEcuts;
30class AliHFEpid;
31class AliHFEpidQAmanager;
32class AliCFManager;
33
34#include "AliAnalysisTaskSE.h"
35
36class AliAnalysisTaskElecHadronCorrel : public AliAnalysisTaskSE {
37 public:
38 AliAnalysisTaskElecHadronCorrel();
39 AliAnalysisTaskElecHadronCorrel(const char *name);
40 virtual ~AliAnalysisTaskElecHadronCorrel();
41
42 virtual void UserCreateOutputObjects();
43 virtual void UserExec(Option_t *option);
44 virtual void Terminate(Option_t *);
45
46 void SetHFECuts(AliHFEcuts * const cuts) { fCuts = cuts; };
47 void SetOpeningAngleCut (Double_t openingAngle) {fOpeningAngleCut = openingAngle;};
48 void SetInvariantMassCut (Double_t invmass) {fInvmassCut = invmass;};
49 AliHFEpid *GetPID() const { return fPID; }
50 void SetRejectKinkMother(Bool_t rejectKinkMother = kFALSE) { fRejectKinkMother = rejectKinkMother; };
51 void SelectPhotonicElectron(Int_t itrack, AliESDtrack *track, Bool_t &fFlagPhotonicElec);
52 void ElectronHadCorrel(Int_t itrack, AliESDtrack *track, TH2F *DphiPt);
53 Bool_t IsLEDEvent() const;
54 private:
55
56 Bool_t ProcessCutStep(Int_t cutStep, AliVParticle *track);
57
58 AliESDEvent *fESD; //!ESD object
59 AliEMCALGeometry *fGeom; //! emcal geometry
60
61 TList *fOutputList; //! output list
62
63 AliESDtrackCuts *fTrackCuts1; //! ESD track cuts
64 AliESDtrackCuts *fTrackCuts2; //! ESD track cuts
65 AliHFEcuts *fCuts; //! Cut Collection
66 Bool_t fIdentifiedAsOutInz; //Out Of Range in z
67 Bool_t fPassTheEventCut; //Pass The Event Cut
68 Bool_t fRejectKinkMother; //Reject Kink Mother
69 Double_t fVz; //z position of the primary vertex
70 AliCFManager *fCFM; //! Correction Framework Manager
71 AliHFEpid *fPID; //! PID
72 AliHFEpidQAmanager *fPIDqa; //! PID QA manager
73 Double_t fOpeningAngleCut; //openingAngle cut value
74 Double_t fInvmassCut; //invariant mass cut value
75
76 TH1F *fNoEvents; //! no of events
77 TH1F *fTrkpt; //! track pt
78 TH2F *fTrkEovPBef; //! track E/p before HFE pid
79 TH2F *fTrkEovPAft; //! track E/p after HFE pid
80 TH2F *fdEdxBef; //! track dEdx vs p before HFE pid
81 TH2F *fdEdxAft; //! track dEdx vs p before HFE pid
82 TH1F *fInvmassLS; //! Inv mass of LS (e,e)
83 TH1F *fInvmassULS; //! Inv mass of ULS (e,e)
84 TH1F *fOpeningAngleLS; //! opening angle for LS pairs
85 TH1F *fOpeningAngleULS; //! opening angle for ULS pairs
86 TH2F *fSemiIncElecDphi; //! Semi Inclusive elec - had DPhi
87 TH2F *fPhotElecDphi; //! Photon elec - had DPhi
88 TH2F *fInclusiveElecDphi; //! Inclusive elec - had DPhi
89 TH2F *fDphiMassHigh; //! Dphi - LS+ULS, mass>0.01
90 TH2F *fDphiULSMassLow; //! Dphi - ULS, mass<0.01
91 TH2F *fDphiLSMassLow; //! Dphi - LS, mass<0.01
92 TH1F *fPhotoElecPt; //! photonic elec pt
93 TH1F *fSemiInclElecPt; //! Semi inclusive ele pt
94
95 TH1F *fTrackPtBefTrkCuts; //! Track pt before track cuts
96 TH1F *fTrackPtAftTrkCuts; //! Track pt after track cuts
97 TH2F *fTPCnsigma; //! TPC n sigma vs p
98
99 AliAnalysisTaskElecHadronCorrel(const AliAnalysisTaskElecHadronCorrel&); // not implemented
100 AliAnalysisTaskElecHadronCorrel& operator=(const AliAnalysisTaskElecHadronCorrel&); // not implemented
101
102 ClassDef(AliAnalysisTaskElecHadronCorrel, 1); //!example of analysis
103};
104
105#endif
106
107