1 #ifndef ALIANALYSISTASKEMCALJETTRIGGERQA_H
2 #define ALIANALYSISTASKEMCALJETTRIGGERQA_H
10 class AliAnalysisUtils;
15 #include "AliAnalysisTaskEmcalJetDev.h"
17 class AliAnalysisTaskEmcalJetTriggerQA : public AliAnalysisTaskEmcalJetDev {
20 AliAnalysisTaskEmcalJetTriggerQA();
21 AliAnalysisTaskEmcalJetTriggerQA(const char *name);
22 virtual ~AliAnalysisTaskEmcalJetTriggerQA();
24 void UserCreateOutputObjects();
25 void Terminate(Option_t *option);
28 void LoadExtraBranches();
30 Bool_t SelectEvent(); //decides if event is used for analysis
31 void FindTriggerPatch();
34 void SetDebug(Int_t d) { fDebug = d;}
35 void SetTriggerClass(const char *n) { fTriggerClass = n; }
36 void SetNFastorPatch(Int_t i) { fNFastOR = i;}
38 void SetContainerFull(Int_t c) { fContainerFull = c;}
39 void SetContainerCharged(Int_t c) { fContainerCharged = c;}
42 Double_t GetZ(const AliVParticle *trk, const AliEmcalJet *jet) const;
43 Double_t GetZ(const Double_t trkPx, const Double_t trkPy, const Double_t trkPz, const Double_t jetPx, const Double_t jetPy, const Double_t jetPz) const;
46 Bool_t FillHistograms() ;
49 Bool_t TestFilterBit(Int_t trigBit, UInt_t bitJetTrig) const {return (Bool_t) ((trigBit & bitJetTrig) != 0);}
54 Bool_t fDebug; // debug level
55 Bool_t fUseAnaUtils; // used for LHC13* data
56 AliAnalysisUtils *fAnalysisUtils; //! vertex selection
57 TString fTriggerClass; // trigger class to analyze EJ1 or EJ2
58 UInt_t fBitJ1; // trigger bit of EJE1
59 UInt_t fBitJ2; // trigger bit of EJE2
60 Int_t fContainerFull; // number of container with full jets DET
61 Int_t fContainerCharged; // number of container with charged jets DET
62 Double_t fMaxPatchEnergy; // energy of patch with largest energy
63 Int_t fTriggerType; // trigger type
64 Int_t fNFastOR; // size of trigger patch fNFastORxfNFastOR
66 TH1F *fhNEvents; //! Histo number of events
67 TH3F *fh3PtEtaPhiJetFull; //! pt,eta,phi of full jets
68 TH3F *fh3PtEtaPhiJetCharged; //! pt,eta,phi of charged jets
69 TH2F *fh2NJetsPtFull; //! NJets per event vs pT,jet
70 TH2F *fh2NJetsPtCharged; //! NJets per event vs pT,jet
71 TH3F *fh3PtEtaAreaJetFull; //! pt,eta,area of full jet
72 TH3F *fh3PtEtaAreaJetCharged; //! pt,eta,area of charged jets
73 TH2F *fh2PtNConstituentsCharged; //! pt, # charged jet constituents
74 TH2F *fh2PtNConstituents; //! pt, # jet constituents
75 TH2F *fh2PtMeanPtConstituentsCharged; //! pt, <pt> charged constituents
76 TH2F *fh2PtMeanPtConstituentsNeutral; //! pt, <pt> neutral constituents
77 TH2F *fh2PtNEF; //! pt, NEF (neutral energy fraction)
78 TH2F *fh2Ptz; //! pt, z=pT,h,proj/p,jet
79 TH2F *fh2PtLeadJet1VsLeadJet2; //! correlation between leading jet of the two branches
80 TH3F *fh3EEtaPhiCluster; //! cluster E, eta, phi
81 TH3F *fh3PtLeadJet1VsPatchEnergy; //! leading jet energy vs leading patch energy vs jet trigger (J1/J2)
82 TH3F *fh3PtLeadJet2VsPatchEnergy; //! leading jet energy vs leading patch energy vs jet trigger (J1/J2)
83 TH3F *fh3PatchEnergyEtaPhiCenter; //! patch energy vs eta, phi at center of patch
84 TH2F *fh2CellEnergyVsTime; //! emcal cell energy vs time
87 AliAnalysisTaskEmcalJetTriggerQA(const AliAnalysisTaskEmcalJetTriggerQA&); // not implemented
88 AliAnalysisTaskEmcalJetTriggerQA &operator=(const AliAnalysisTaskEmcalJetTriggerQA&); // not implemented
90 ClassDef(AliAnalysisTaskEmcalJetTriggerQA, 2)