1 #ifndef AliAnalysisTaskEmcalJetFlavourTagExample_h
2 #define AliAnalysisTaskEmcalJetFlavourTagExample_h
19 class AliEMCALGeometry;
20 class AliEMCALRecoUtils;
22 class AliESDtrackCuts;
23 class AliAnalysisEtCuts;
25 class AliESDCaloCluster;
27 class AliJetContainer;
28 class AliParticleContainer;
29 class AliClusterContainer;
32 // this whole section of includes added
33 #include <AliEmcalJet.h>
34 #include <AliVEvent.h>
35 #include <AliVTrack.h>
36 #include <AliVCluster.h>
37 #include <TClonesArray.h>
41 #include "AliAnalysisTaskEmcalJet.h"
42 #include "AliEMCALPIDResponse.h"
43 #include <AliESDCaloCluster.h>
44 #include <AliESDtrackCuts.h>
45 #include "AliAODTrack.h"
46 #include "AliESDtrack.h"
48 #include "AliTPCdEdxInfo.h"
51 #include "AliPIDResponse.h"
52 #include "AliTPCPIDResponse.h"
53 #include "AliESDpid.h"
54 #include "AliAnalysisFilter.h"
56 class AliAnalysisTaskEmcalJetFlavourTagExample : public AliAnalysisTaskEmcalJet {
58 AliAnalysisTaskEmcalJetFlavourTagExample();
59 AliAnalysisTaskEmcalJetFlavourTagExample(const char *name);
60 virtual ~AliAnalysisTaskEmcalJetFlavourTagExample();
62 virtual void UserCreateOutputObjects();
65 AliAnalysisEtCuts * GetCuts() const { return fCuts; }
66 virtual void SetCuts(const AliAnalysisEtCuts *cuts)
67 { fCuts = (AliAnalysisEtCuts *) cuts; }
70 void SetJetPt(Double_t jpt) { fJetHIpt = jpt; } // jet threshold pt cut
71 void SetTrackPtCut(Double_t trpt) { fTrackPtCut = trpt; } // track pt threshold to do PID on
72 virtual void SetTrackEta(Double_t e) { fTrackEta = e; } //eta range of the associated tracks
73 void SetTrackCuts(AliESDtrackCuts *cuts) { fesdTrackCuts = cuts; }
75 // eta and phi limits of jets - setters
76 virtual void SetJetEta(Double_t emin, Double_t emax) { fEtamin = emin; fEtamax = emax; }
77 virtual void SetJetPhi(Double_t pmin, Double_t pmax) { fPhimin = pmin; fPhimax = pmax; }
80 Int_t event; // event number (processed)
84 virtual void Terminate(Option_t *);
85 virtual Int_t AcceptMyJet(AliEmcalJet *jet); // applies basic jet tests/cuts before accepting
91 AliAnalysisEtCuts *fCuts; // keeper of basic cuts
98 Double_t fAreacut; //area cut
99 Double_t fJetHIpt; // high jet pt
100 Double_t fTrackPtCut; // track pt cut to do PID on
102 AliESDtrackCuts *fesdTrackCuts; //esd track cuts!!
105 AliPIDResponse *fPIDResponse; // PID response object
106 AliTPCPIDResponse *fTPCResponse; // TPC pid response object
108 AliJetContainer *fJetsCont; //!Jets
109 AliParticleContainer *fTracksCont; //!Tracks
110 AliClusterContainer *fCaloClustersCont; //!Clusters
111 AliParticleContainer *fTracksJetCont; //! JetTracks
112 AliClusterContainer *fCaloClustersJetCont; //!JetClusters
116 AliESDEvent *fESD;//! // ESD object
117 AliAODEvent *fAOD;//! // AOD Object
120 TH1F *fHistJetPhi;//! // Njets vs Phi
121 TH1F *fHistCorJetPt;//! // (Njets) vs Corrected Jet Pt (local rho)
122 TH1F *fHistJetPt;//! // raw jet pt (uncorrected)
123 TH1F *fHistHighJetPt;//!
125 TH2F *fHistnSigElecPt;//! check
126 TH2F *fHistdEdXvsPt;//! check
127 TH2F *fHistnJetTrackvnJetClusters;//! check
129 AliAnalysisTaskEmcalJetFlavourTagExample(const AliAnalysisTaskEmcalJetFlavourTagExample & g) ; // cpy ctor
130 AliAnalysisTaskEmcalJetFlavourTagExample& operator=(const AliAnalysisTaskEmcalJetFlavourTagExample&); // not implemented
134 ClassDef(AliAnalysisTaskEmcalJetFlavourTagExample, 4); // Emcal jet Heavy Flavor