#ifndef ALIANALYSISTASKJETRESPONSEV2_H
#define ALIANALYSISTASKJETRESPONSEV2_H
class TH1F;
class TH1I;
class TH2F;
class TH3F;
class THnSparse;
class AliESDEvent;
class AliAODEvent;
class AliAODJet;
class AliAODExtension;
#include "AliAnalysisTaskSE.h"
#include "AliVEvent.h"
class AliAnalysisTaskJetResponseV2 : public AliAnalysisTaskSE {
public:
AliAnalysisTaskJetResponseV2();
AliAnalysisTaskJetResponseV2(const char *name);
virtual ~AliAnalysisTaskJetResponseV2();
virtual void LocalInit() {Init();}
virtual void Init();
virtual void UserCreateOutputObjects();
virtual void UserExec(Option_t *option);
virtual void Terminate(const Option_t*);
virtual Int_t GetNInputTracks();
virtual THnSparse* NewTHnSparseF(const char* name, UInt_t entries, UInt_t opt);
virtual void GetDimParams(Int_t iEntry, Bool_t hr, TString &label, Int_t &nbins, Double_t &xmin, Double_t &xmax);
virtual Int_t GetPtHardBin(Double_t ptHard);
virtual Double_t GetPt(AliAODJet* j, Int_t mode);
virtual AliVEvent::EOfflineTriggerTypes GetOfflineTrgMask() const { return fOfflineTrgMask; }
virtual void GetBranchNames(TString &branch1, TString &branch2) const { branch1 = fJetBranchName[0]; branch2 = fJetBranchName[1]; }
virtual Bool_t GetIsPbPb() const { return fIsPbPb; }
virtual Int_t GetMinContribVtx() const { return fMinContribVtx; };
virtual Float_t GetVtxZMin() const { return fVtxZMin; }
virtual Float_t GetVtxZMax() const { return fVtxZMax; }
virtual Int_t GetEvtClassMin() const { return fEvtClassMin; }
virtual Int_t GetEvtClassMax() const { return fEvtClassMax; }
virtual Float_t GetCentMin() const { return fCentMin; }
virtual Float_t GetCentMax() const { return fCentMax; }
virtual Int_t GetNInputTracksMin() const { return fNInputTracksMin; }
virtual Int_t GetNInputTracksMax() const { return fNInputTracksMax; }
virtual Float_t GetJetEtaMin() const { return fJetEtaMin; }
virtual Float_t GetJetEtaMax() const { return fJetEtaMax; }
virtual Float_t GetJetPtMin() const { return fJetPtMin; }
virtual Float_t GetJetPtFractionMin() const { return fJetPtFractionMin; }
virtual Int_t GetNMatchJets() const { return fNMatchJets; }
virtual void SetBranchNames(const TString &branch1= "", const TString &branch2 = "", const TString &branch3 = "");
virtual void SetBackgroundBranch(TString &branch) { fBackgroundBranch = branch;}
virtual void SetNonStdFile(char* c){fNonStdFile = c;}
virtual void SetIsPbPb(Bool_t b=kTRUE) { fIsPbPb = b; }
virtual void SetOfflineTrgMask(AliVEvent::EOfflineTriggerTypes mask) { fOfflineTrgMask = mask; }
virtual void SetMinContribVtx(Int_t n) { fMinContribVtx = n; }
virtual void SetVtxZMin(Float_t z) { fVtxZMin = z; }
virtual void SetVtxZMax(Float_t z) { fVtxZMax = z; }
virtual void SetEvtClassMin(Int_t evtClass) { fEvtClassMin = evtClass; }
virtual void SetEvtClassMax(Int_t evtClass) { fEvtClassMax = evtClass; }
virtual void SetCentMin(Float_t cent) { fCentMin = cent; }
virtual void SetCentMax(Float_t cent) { fCentMax = cent; }
virtual void SetNInputTracksMin(Int_t nTr) { fNInputTracksMin = nTr; }
virtual void SetNInputTracksMax(Int_t nTr) { fNInputTracksMax = nTr; }
virtual void SetJetEtaMin(Float_t eta) { fJetEtaMin = eta; }
virtual void SetJetEtaMax(Float_t eta) { fJetEtaMax = eta; }
virtual void SetJetPtMin(Float_t pt) { fJetPtMin = pt; }
virtual void SetJetTriggerExclude(UChar_t i) { fJetTriggerExcludeMask = i; }
virtual void SetJetPtFractionMin(Float_t frac) { fJetPtFractionMin = frac; }
virtual void SetNMatchJets(Int_t n) { fNMatchJets = n; }
virtual void SetFillEvent(Bool_t b) { fbEvent = b; }
virtual void SetFillJetsMismatch1(Bool_t b) { fbJetsMismatch1 = b; }
virtual void SetFillJetsMismatch2(Bool_t b) { fbJetsMismatch2 = b; }
virtual void SetFillJetsRp(Bool_t b) { fbJetsRp = b; }
virtual void SetFillJetsDeltaPt(Bool_t b) { fbJetsDeltaPt = b; }
virtual void SetFillJetsEta(Bool_t b) { fbJetsEta = b; }
virtual void SetFillJetsPhi(Bool_t b) { fbJetsPhi = b; }
virtual void SetFillJetsArea(Bool_t b) { fbJetsArea = b; }
virtual void SetFillJets3Branches(Bool_t b) { fbJets3Branches = b; }
virtual void SetFillJetsBeforeCut1(Bool_t b) { fbJetsBeforeCut1 = b; }
virtual void SetFillJetsBeforeCut2(Bool_t b) { fbJetsBeforeCut2 = b; }
virtual void SetKeepJets(Bool_t b = kTRUE) { fKeepJets = b; }
virtual void SetMatchMaxDist(Double_t max) { fMatchMaxDist = max;}
private:
AliESDEvent *fESD;
AliAODEvent *fAOD;
AliAODEvent *fAODOut;
AliAODExtension *fAODExtension;
TString fJetBranchName[3];
TList *fListJets[3];
TString fNonStdFile;
TString fBackgroundBranch;
Bool_t fIsPbPb;
AliVEvent::EOfflineTriggerTypes fOfflineTrgMask;
Int_t fMinContribVtx;
Float_t fVtxZMin;
Float_t fVtxZMax;
Int_t fEvtClassMin;
Int_t fEvtClassMax;
Float_t fCentMin;
Float_t fCentMax;
Int_t fNInputTracksMin;
Int_t fNInputTracksMax;
Float_t fJetEtaMin;
Float_t fJetEtaMax;
Float_t fJetPtMin;
UChar_t fJetTriggerExcludeMask;
Float_t fJetPtFractionMin;
Int_t fNMatchJets;
Double_t fMatchMaxDist;
Bool_t fKeepJets;
Int_t fkNbranches;
const Int_t fkEvtClasses;
TList *fOutputList;
Bool_t fbEvent;
Bool_t fbJetsMismatch1;
Bool_t fbJetsMismatch2;
Bool_t fbJetsRp;
Bool_t fbJetsDeltaPt;
Bool_t fbJetsEta;
Bool_t fbJetsPhi;
Bool_t fbJetsArea;
Bool_t fbJets3Branches;
Bool_t fbJetsBeforeCut1;
Bool_t fbJetsBeforeCut2;
TH1I *fHistEvtSelection;
TH1I *fHistJetSelection;
TH2F *fh2JetSelection;
THnSparse *fhnEvent;
THnSparse *fhnJetsMismatch1;
THnSparse *fhnJetsMismatch2;
THnSparse *fhnJetsRp;
THnSparse *fhnJetsDeltaPt;
THnSparse *fhnJetsEta;
THnSparse *fhnJetsPhi;
THnSparse *fhnJetsArea;
THnSparse *fhnJets3Branches;
THnSparse *fhnJetsBeforeCut1;
THnSparse *fhnJetsBeforeCut2;
AliAnalysisTaskJetResponseV2(const AliAnalysisTaskJetResponseV2&);
AliAnalysisTaskJetResponseV2& operator=(const AliAnalysisTaskJetResponseV2&);
ClassDef(AliAnalysisTaskJetResponseV2, 6);
};
#endif
AliAnalysisTaskJetResponseV2.h:1 AliAnalysisTaskJetResponseV2.h:2 AliAnalysisTaskJetResponseV2.h:3 AliAnalysisTaskJetResponseV2.h:4 AliAnalysisTaskJetResponseV2.h:5 AliAnalysisTaskJetResponseV2.h:6 AliAnalysisTaskJetResponseV2.h:7 AliAnalysisTaskJetResponseV2.h:8 AliAnalysisTaskJetResponseV2.h:9 AliAnalysisTaskJetResponseV2.h:10 AliAnalysisTaskJetResponseV2.h:11 AliAnalysisTaskJetResponseV2.h:12 AliAnalysisTaskJetResponseV2.h:13 AliAnalysisTaskJetResponseV2.h:14 AliAnalysisTaskJetResponseV2.h:15 AliAnalysisTaskJetResponseV2.h:16 AliAnalysisTaskJetResponseV2.h:17 AliAnalysisTaskJetResponseV2.h:18 AliAnalysisTaskJetResponseV2.h:19 AliAnalysisTaskJetResponseV2.h:20 AliAnalysisTaskJetResponseV2.h:21 AliAnalysisTaskJetResponseV2.h:22 AliAnalysisTaskJetResponseV2.h:23 AliAnalysisTaskJetResponseV2.h:24 AliAnalysisTaskJetResponseV2.h:25 AliAnalysisTaskJetResponseV2.h:26 AliAnalysisTaskJetResponseV2.h:27 AliAnalysisTaskJetResponseV2.h:28 AliAnalysisTaskJetResponseV2.h:29 AliAnalysisTaskJetResponseV2.h:30 AliAnalysisTaskJetResponseV2.h:31 AliAnalysisTaskJetResponseV2.h:32 AliAnalysisTaskJetResponseV2.h:33 AliAnalysisTaskJetResponseV2.h:34 AliAnalysisTaskJetResponseV2.h:35 AliAnalysisTaskJetResponseV2.h:36 AliAnalysisTaskJetResponseV2.h:37 AliAnalysisTaskJetResponseV2.h:38 AliAnalysisTaskJetResponseV2.h:39 AliAnalysisTaskJetResponseV2.h:40 AliAnalysisTaskJetResponseV2.h:41 AliAnalysisTaskJetResponseV2.h:42 AliAnalysisTaskJetResponseV2.h:43 AliAnalysisTaskJetResponseV2.h:44 AliAnalysisTaskJetResponseV2.h:45 AliAnalysisTaskJetResponseV2.h:46 AliAnalysisTaskJetResponseV2.h:47 AliAnalysisTaskJetResponseV2.h:48 AliAnalysisTaskJetResponseV2.h:49 AliAnalysisTaskJetResponseV2.h:50 AliAnalysisTaskJetResponseV2.h:51 AliAnalysisTaskJetResponseV2.h:52 AliAnalysisTaskJetResponseV2.h:53 AliAnalysisTaskJetResponseV2.h:54 AliAnalysisTaskJetResponseV2.h:55 AliAnalysisTaskJetResponseV2.h:56 AliAnalysisTaskJetResponseV2.h:57 AliAnalysisTaskJetResponseV2.h:58 AliAnalysisTaskJetResponseV2.h:59 AliAnalysisTaskJetResponseV2.h:60 AliAnalysisTaskJetResponseV2.h:61 AliAnalysisTaskJetResponseV2.h:62 AliAnalysisTaskJetResponseV2.h:63 AliAnalysisTaskJetResponseV2.h:64 AliAnalysisTaskJetResponseV2.h:65 AliAnalysisTaskJetResponseV2.h:66 AliAnalysisTaskJetResponseV2.h:67 AliAnalysisTaskJetResponseV2.h:68 AliAnalysisTaskJetResponseV2.h:69 AliAnalysisTaskJetResponseV2.h:70 AliAnalysisTaskJetResponseV2.h:71 AliAnalysisTaskJetResponseV2.h:72 AliAnalysisTaskJetResponseV2.h:73 AliAnalysisTaskJetResponseV2.h:74 AliAnalysisTaskJetResponseV2.h:75 AliAnalysisTaskJetResponseV2.h:76 AliAnalysisTaskJetResponseV2.h:77 AliAnalysisTaskJetResponseV2.h:78 AliAnalysisTaskJetResponseV2.h:79 AliAnalysisTaskJetResponseV2.h:80 AliAnalysisTaskJetResponseV2.h:81 AliAnalysisTaskJetResponseV2.h:82 AliAnalysisTaskJetResponseV2.h:83 AliAnalysisTaskJetResponseV2.h:84 AliAnalysisTaskJetResponseV2.h:85 AliAnalysisTaskJetResponseV2.h:86 AliAnalysisTaskJetResponseV2.h:87 AliAnalysisTaskJetResponseV2.h:88 AliAnalysisTaskJetResponseV2.h:89 AliAnalysisTaskJetResponseV2.h:90 AliAnalysisTaskJetResponseV2.h:91 AliAnalysisTaskJetResponseV2.h:92 AliAnalysisTaskJetResponseV2.h:93 AliAnalysisTaskJetResponseV2.h:94 AliAnalysisTaskJetResponseV2.h:95 AliAnalysisTaskJetResponseV2.h:96 AliAnalysisTaskJetResponseV2.h:97 AliAnalysisTaskJetResponseV2.h:98 AliAnalysisTaskJetResponseV2.h:99 AliAnalysisTaskJetResponseV2.h:100 AliAnalysisTaskJetResponseV2.h:101 AliAnalysisTaskJetResponseV2.h:102 AliAnalysisTaskJetResponseV2.h:103 AliAnalysisTaskJetResponseV2.h:104 AliAnalysisTaskJetResponseV2.h:105 AliAnalysisTaskJetResponseV2.h:106 AliAnalysisTaskJetResponseV2.h:107 AliAnalysisTaskJetResponseV2.h:108 AliAnalysisTaskJetResponseV2.h:109 AliAnalysisTaskJetResponseV2.h:110 AliAnalysisTaskJetResponseV2.h:111 AliAnalysisTaskJetResponseV2.h:112 AliAnalysisTaskJetResponseV2.h:113 AliAnalysisTaskJetResponseV2.h:114 AliAnalysisTaskJetResponseV2.h:115 AliAnalysisTaskJetResponseV2.h:116 AliAnalysisTaskJetResponseV2.h:117 AliAnalysisTaskJetResponseV2.h:118 AliAnalysisTaskJetResponseV2.h:119 AliAnalysisTaskJetResponseV2.h:120 AliAnalysisTaskJetResponseV2.h:121 AliAnalysisTaskJetResponseV2.h:122 AliAnalysisTaskJetResponseV2.h:123 AliAnalysisTaskJetResponseV2.h:124 AliAnalysisTaskJetResponseV2.h:125 AliAnalysisTaskJetResponseV2.h:126 AliAnalysisTaskJetResponseV2.h:127 AliAnalysisTaskJetResponseV2.h:128 AliAnalysisTaskJetResponseV2.h:129 AliAnalysisTaskJetResponseV2.h:130 AliAnalysisTaskJetResponseV2.h:131 AliAnalysisTaskJetResponseV2.h:132 AliAnalysisTaskJetResponseV2.h:133 AliAnalysisTaskJetResponseV2.h:134 AliAnalysisTaskJetResponseV2.h:135 AliAnalysisTaskJetResponseV2.h:136 AliAnalysisTaskJetResponseV2.h:137 AliAnalysisTaskJetResponseV2.h:138 AliAnalysisTaskJetResponseV2.h:139 AliAnalysisTaskJetResponseV2.h:140 AliAnalysisTaskJetResponseV2.h:141 AliAnalysisTaskJetResponseV2.h:142 AliAnalysisTaskJetResponseV2.h:143 AliAnalysisTaskJetResponseV2.h:144 AliAnalysisTaskJetResponseV2.h:145 AliAnalysisTaskJetResponseV2.h:146 AliAnalysisTaskJetResponseV2.h:147 AliAnalysisTaskJetResponseV2.h:148 AliAnalysisTaskJetResponseV2.h:149 AliAnalysisTaskJetResponseV2.h:150 AliAnalysisTaskJetResponseV2.h:151 AliAnalysisTaskJetResponseV2.h:152 AliAnalysisTaskJetResponseV2.h:153 AliAnalysisTaskJetResponseV2.h:154 AliAnalysisTaskJetResponseV2.h:155 AliAnalysisTaskJetResponseV2.h:156 AliAnalysisTaskJetResponseV2.h:157 AliAnalysisTaskJetResponseV2.h:158 AliAnalysisTaskJetResponseV2.h:159 AliAnalysisTaskJetResponseV2.h:160 AliAnalysisTaskJetResponseV2.h:161 AliAnalysisTaskJetResponseV2.h:162 AliAnalysisTaskJetResponseV2.h:163 AliAnalysisTaskJetResponseV2.h:164 AliAnalysisTaskJetResponseV2.h:165 AliAnalysisTaskJetResponseV2.h:166 AliAnalysisTaskJetResponseV2.h:167 AliAnalysisTaskJetResponseV2.h:168