1 #ifndef ALIANALYSISTASKEMCALJETTAGGER_H
2 #define ALIANALYSISTASKEMCALJETTAGGER_H
11 class AliAnalysisManager;
12 class AliJetContainer;
14 #include "AliAnalysisTaskEmcalJet.h"
16 class AliAnalysisTaskEmcalJetTagger : public AliAnalysisTaskEmcalJet {
18 enum JetTaggingMethod {
28 AliAnalysisTaskEmcalJetTagger();
29 AliAnalysisTaskEmcalJetTagger(const char *name);
30 virtual ~AliAnalysisTaskEmcalJetTagger();
32 void UserCreateOutputObjects();
33 void Terminate(Option_t *option);
36 void SetJetContainerBase(Int_t c) { fContainerBase = c;}
37 void SetJetContainerTag(Int_t c) { fContainerTag = c;}
39 void SetJetTaggingType(JetTaggingType t) { fJetTaggingType = t;}
40 void SetJetTaggingMethod(JetTaggingMethod m) { fJetTaggingMethod = m;}
42 void SetMinFractionShared(Double_t f) { fMinFractionShared = f; }
44 void SetUseSumw2(Bool_t b) { fUseSumw2 = b;}
47 Double_t GetFractionSharedPt(const AliEmcalJet *jet1, const AliEmcalJet *jet2) const;
50 Bool_t RetrieveEventObjects();
52 Bool_t FillHistograms();
55 Double_t GetDeltaPhi(const AliEmcalJet* jet1, const AliEmcalJet* jet2);
56 Double_t GetDeltaPhi(Double_t phi1,Double_t phi2);
57 Double_t GetDeltaR(const AliEmcalJet* jet1, const AliEmcalJet* jet2) const;
59 void MatchJetsGeo(Int_t c1 = -1, Int_t c2 = -1, Int_t iDebug = 0, Float_t maxDist = 0.3, Int_t type = 2, Bool_t bReset = kTRUE);
60 void ResetTagging(const Int_t c);
63 JetTaggingType fJetTaggingType; // jet matching type
64 JetTaggingMethod fJetTaggingMethod; // jet matching method
65 Int_t fContainerBase; // jets to be tagged
66 Int_t fContainerTag; // jets used for tagging
67 Double_t fMinFractionShared; // only fill histos for jets if shared fraction larger than X
68 Bool_t fUseSumw2; // activate sumw2 for output histograms
69 Bool_t fMatchingDone; // flag to indicate if matching is done or not
71 TH3F **fh3PtJet1VsDeltaEtaDeltaPhi; //!pt jet 1 vs deta vs dphi
72 TH2F **fh2PtJet1VsDeltaR; //!pt jet 1 vs dR
73 TH2F **fh2PtJet2VsFraction; //!pt jet 1 vs shared fraction
75 TH2F **fh2PtJet1VsLeadPtAllSel; //!all jets after std selection
76 TH2F **fh2PtJet1VsLeadPtTagged; //!tagged jets
77 TH2F **fh2PtJet1VsPtJet2; //!pT of base jet vs tagged jet
78 TH2F **fh2PtJet2VsRelPt; //!pT of tagged jet vs pt base jet / pt tagged jet
80 TH3F *fh3PtJetDEtaDPhiConst; //!pt jet vs delta eta vs delta phi of constituents
81 TH2F *fh2PtJetDRConst; //!pt jet vs delta R of constituents
82 TH3F *fh3PtJetAreaDRConst; //!pt jet vs Area vs delta R of constituents
84 AliAnalysisTaskEmcalJetTagger(const AliAnalysisTaskEmcalJetTagger&); // not implemented
85 AliAnalysisTaskEmcalJetTagger &operator=(const AliAnalysisTaskEmcalJetTagger&); // not implemented
87 ClassDef(AliAnalysisTaskEmcalJetTagger, 6)