#ifndef ALIANALYSISTASKEMCALJETTAGGER_H
#define ALIANALYSISTASKEMCALJETTAGGER_H
class TH1;
class TH2;
class TH3;
class TH3F;
class THnSparse;
class TClonesArray;
class TArrayI;
class AliAnalysisManager;
class AliJetContainer;
#include "AliAnalysisTaskEmcalJet.h"
class AliAnalysisTaskEmcalJetTagger : public AliAnalysisTaskEmcalJet {
public:
enum JetTaggingMethod {
kGeo = 0,
kFraction = 1
};
enum JetTaggingType {
kTag = 0,
kClosest = 1
};
AliAnalysisTaskEmcalJetTagger();
AliAnalysisTaskEmcalJetTagger(const char *name);
virtual ~AliAnalysisTaskEmcalJetTagger();
void UserCreateOutputObjects();
void Terminate(Option_t *option);
void SetJetContainerBase(Int_t c) { fContainerBase = c;}
void SetJetContainerTag(Int_t c) { fContainerTag = c;}
void SetJetTaggingType(JetTaggingType t) { fJetTaggingType = t;}
void SetJetTaggingMethod(JetTaggingMethod m) { fJetTaggingMethod = m;}
void SetMinFractionShared(Double_t f) { fMinFractionShared = f; }
void SetUseSumw2(Bool_t b) { fUseSumw2 = b;}
Double_t GetFractionSharedPt(const AliEmcalJet *jet1, const AliEmcalJet *jet2) const;
protected:
Bool_t RetrieveEventObjects();
Bool_t Run();
Bool_t FillHistograms();
Double_t GetDeltaPhi(const AliEmcalJet* jet1, const AliEmcalJet* jet2);
Double_t GetDeltaPhi(Double_t phi1,Double_t phi2);
Double_t GetDeltaR(const AliEmcalJet* jet1, const AliEmcalJet* jet2) const;
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);
void ResetTagging(const Int_t c);
private:
JetTaggingType fJetTaggingType;
JetTaggingMethod fJetTaggingMethod;
Int_t fContainerBase;
Int_t fContainerTag;
Double_t fMinFractionShared;
Bool_t fUseSumw2;
Bool_t fMatchingDone;
TH3F **fh3PtJet1VsDeltaEtaDeltaPhi;
TH2F **fh2PtJet1VsDeltaR;
TH2F **fh2PtJet2VsFraction;
TH2F **fh2PtJet1VsLeadPtAllSel;
TH2F **fh2PtJet1VsLeadPtTagged;
TH2F **fh2PtJet1VsPtJet2;
TH2F **fh2PtJet2VsRelPt;
TH3F *fh3PtJetDEtaDPhiConst;
TH2F *fh2PtJetDRConst;
TH3F *fh3PtJetAreaDRConst;
AliAnalysisTaskEmcalJetTagger(const AliAnalysisTaskEmcalJetTagger&);
AliAnalysisTaskEmcalJetTagger &operator=(const AliAnalysisTaskEmcalJetTagger&);
ClassDef(AliAnalysisTaskEmcalJetTagger, 6)
};
#endif
AliAnalysisTaskEmcalJetTagger.h:1 AliAnalysisTaskEmcalJetTagger.h:2 AliAnalysisTaskEmcalJetTagger.h:3 AliAnalysisTaskEmcalJetTagger.h:4 AliAnalysisTaskEmcalJetTagger.h:5 AliAnalysisTaskEmcalJetTagger.h:6 AliAnalysisTaskEmcalJetTagger.h:7 AliAnalysisTaskEmcalJetTagger.h:8 AliAnalysisTaskEmcalJetTagger.h:9 AliAnalysisTaskEmcalJetTagger.h:10 AliAnalysisTaskEmcalJetTagger.h:11 AliAnalysisTaskEmcalJetTagger.h:12 AliAnalysisTaskEmcalJetTagger.h:13 AliAnalysisTaskEmcalJetTagger.h:14 AliAnalysisTaskEmcalJetTagger.h:15 AliAnalysisTaskEmcalJetTagger.h:16 AliAnalysisTaskEmcalJetTagger.h:17 AliAnalysisTaskEmcalJetTagger.h:18 AliAnalysisTaskEmcalJetTagger.h:19 AliAnalysisTaskEmcalJetTagger.h:20 AliAnalysisTaskEmcalJetTagger.h:21 AliAnalysisTaskEmcalJetTagger.h:22 AliAnalysisTaskEmcalJetTagger.h:23 AliAnalysisTaskEmcalJetTagger.h:24 AliAnalysisTaskEmcalJetTagger.h:25 AliAnalysisTaskEmcalJetTagger.h:26 AliAnalysisTaskEmcalJetTagger.h:27 AliAnalysisTaskEmcalJetTagger.h:28 AliAnalysisTaskEmcalJetTagger.h:29 AliAnalysisTaskEmcalJetTagger.h:30 AliAnalysisTaskEmcalJetTagger.h:31 AliAnalysisTaskEmcalJetTagger.h:32 AliAnalysisTaskEmcalJetTagger.h:33 AliAnalysisTaskEmcalJetTagger.h:34 AliAnalysisTaskEmcalJetTagger.h:35 AliAnalysisTaskEmcalJetTagger.h:36 AliAnalysisTaskEmcalJetTagger.h:37 AliAnalysisTaskEmcalJetTagger.h:38 AliAnalysisTaskEmcalJetTagger.h:39 AliAnalysisTaskEmcalJetTagger.h:40 AliAnalysisTaskEmcalJetTagger.h:41 AliAnalysisTaskEmcalJetTagger.h:42 AliAnalysisTaskEmcalJetTagger.h:43 AliAnalysisTaskEmcalJetTagger.h:44 AliAnalysisTaskEmcalJetTagger.h:45 AliAnalysisTaskEmcalJetTagger.h:46 AliAnalysisTaskEmcalJetTagger.h:47 AliAnalysisTaskEmcalJetTagger.h:48 AliAnalysisTaskEmcalJetTagger.h:49 AliAnalysisTaskEmcalJetTagger.h:50 AliAnalysisTaskEmcalJetTagger.h:51 AliAnalysisTaskEmcalJetTagger.h:52 AliAnalysisTaskEmcalJetTagger.h:53 AliAnalysisTaskEmcalJetTagger.h:54 AliAnalysisTaskEmcalJetTagger.h:55 AliAnalysisTaskEmcalJetTagger.h:56 AliAnalysisTaskEmcalJetTagger.h:57 AliAnalysisTaskEmcalJetTagger.h:58 AliAnalysisTaskEmcalJetTagger.h:59 AliAnalysisTaskEmcalJetTagger.h:60 AliAnalysisTaskEmcalJetTagger.h:61 AliAnalysisTaskEmcalJetTagger.h:62 AliAnalysisTaskEmcalJetTagger.h:63 AliAnalysisTaskEmcalJetTagger.h:64 AliAnalysisTaskEmcalJetTagger.h:65 AliAnalysisTaskEmcalJetTagger.h:66 AliAnalysisTaskEmcalJetTagger.h:67 AliAnalysisTaskEmcalJetTagger.h:68 AliAnalysisTaskEmcalJetTagger.h:69 AliAnalysisTaskEmcalJetTagger.h:70 AliAnalysisTaskEmcalJetTagger.h:71 AliAnalysisTaskEmcalJetTagger.h:72 AliAnalysisTaskEmcalJetTagger.h:73 AliAnalysisTaskEmcalJetTagger.h:74 AliAnalysisTaskEmcalJetTagger.h:75 AliAnalysisTaskEmcalJetTagger.h:76 AliAnalysisTaskEmcalJetTagger.h:77 AliAnalysisTaskEmcalJetTagger.h:78 AliAnalysisTaskEmcalJetTagger.h:79 AliAnalysisTaskEmcalJetTagger.h:80 AliAnalysisTaskEmcalJetTagger.h:81 AliAnalysisTaskEmcalJetTagger.h:82 AliAnalysisTaskEmcalJetTagger.h:83 AliAnalysisTaskEmcalJetTagger.h:84 AliAnalysisTaskEmcalJetTagger.h:85 AliAnalysisTaskEmcalJetTagger.h:86 AliAnalysisTaskEmcalJetTagger.h:87 AliAnalysisTaskEmcalJetTagger.h:88 AliAnalysisTaskEmcalJetTagger.h:89 AliAnalysisTaskEmcalJetTagger.h:90