#ifndef AliAnalysisTaskPPJetSpectra_cxx
#define AliAnalysisTaskPPJetSpectra_cxx
class THnSparse;
class TNtuple;
class TH2F;
class AliAODEvent;
class AliESDEvent;
class AliAODExtension;
class AliAODJet;
#include "AliAnalysisTaskSE.h"
class AliAnalysisTaskPPJetSpectra : public AliAnalysisTaskSE
{
public:
AliAnalysisTaskPPJetSpectra();
AliAnalysisTaskPPJetSpectra(const char* name);
virtual ~AliAnalysisTaskPPJetSpectra() {}
virtual void Init();
virtual Bool_t Notify();
virtual void UserCreateOutputObjects();
virtual void UserExec(Option_t *option);
virtual void Terminate(Option_t *);
void SetVertexCuts(Int_t, Double_t, Double_t);
void SetTrackFilter(UInt_t i) {nTrackFilter = i;}
void SetEventSelectionMask(UInt_t i) {fEvtSelectionMask = i;}
void SetEventClass(Float_t i) {fEventClass = i;}
void SetTrackCuts(Double_t,Double_t,Double_t);
void SetJetCuts(Double_t, Double_t, Double_t);
void SetRecJetBranch(TString);
void SetGenJetBranch(TString);
void SetRecBckgBranch(TString);
void SetGenBckgBranch(TString);
void SetTrackType(Int_t i) {fTrackType = i;}
void SetParticleType(Int_t i) {fParticleType = i;}
void SetNonStdFile(TString s) {fNonStdFile = s;}
void SetDoUEanalysis(Bool_t i) {kDoUEanalysis = i;}
void UseMC(Bool_t i) {fUseMC = i;}
enum {kNone = 0, kAOD, kAODMC, kAODMC2};
private:
Bool_t EventSelection(Double_t*);
Int_t GetListOfTracks(Int_t, TList*);
Int_t GetListOfJets(TClonesArray*, TList*, Bool_t);
void FillJetContainer(TList*, THnSparseF*);
Double_t GetUE(TList*, TList*, Double_t,THnSparseF*);
Double_t GetBckgUE(TList*, Double_t,Bool_t, THnSparseF*);
Int_t CorrectForUE(TList*,Double_t,TList*,THnSparseF*);
void MatchJets(Bool_t,TList*,TList*,Float_t, THnSparseF*);
Int_t CheckPtBin(Double_t);
void DoUEAnalysis(TList*, Double_t, Double_t);
TList* fOutputList;
AliESDEvent* fESD;
AliAODEvent* fAOD;
AliAODEvent* fAODIn;
AliAODEvent* fAODOut;
AliAODExtension* fAODExt;
TString fNonStdFile;
Int_t fDebug;
Bool_t fUseMC;
UInt_t fEvtSelectionMask;
Float_t fEventClass;
Int_t nVtxContCut;
Double_t fVtxZcut;
Double_t fVtxRcut;
UInt_t nTrackFilter;
Double_t trackPtMin;
Double_t trackPtMax;
Double_t trackEtaAbsMax;
Double_t jetPtMin;
Double_t jetEtaCut;
Double_t jetZmax;
THnSparseF* fhnEvent;
THnSparseF* fhnTracks;
THnSparseF* fhnMC;
THnSparseF* fhnMC2;
THnSparseF* fhnRecJetsNoCut;
THnSparseF* fhnGenJetsNoCut;
THnSparseF* fhnRecJetsCut;
THnSparseF* fhnGenJetsCut;
THnSparseF* fhnRecBckg;
THnSparseF* fhnGenBckg;
THnSparseF* fhnRecJetsTrackUEcor;
THnSparseF* fhnGenJetsTrackUEcor;
THnSparseF* fhnRecJetsBckgUEcor;
THnSparseF* fhnGenJetsBckgUEcor;
THnSparseF* fhnTrackUE;
THnSparseF* fhnParticleUE;
THnSparseF* fhnBckgRecUE;
THnSparseF* fhnBckgGenUE;
TString fRecJetBranch;
TString fGenJetBranch;
TString fRecBckgBranch;
TString fGenBckgBranch;
Double_t fRecJetR;
Double_t fGenJetR;
Double_t fRecBckgR;
Double_t fGenBckgR;
Int_t fTrackType;
Int_t fParticleType;
THnSparseF* fhnMatching;
THnSparseF* fhnTrackCorrMatching;
THnSparseF* fhnBckgCorrMatching;
THnSparseF* fhnTrackUEanal;
Bool_t kDoUEanalysis;
Int_t fRejectPileUp;
ClassDef(AliAnalysisTaskPPJetSpectra, 2);
};
#endif
AliAnalysisTaskPPJetSpectra.h:1 AliAnalysisTaskPPJetSpectra.h:2 AliAnalysisTaskPPJetSpectra.h:3 AliAnalysisTaskPPJetSpectra.h:4 AliAnalysisTaskPPJetSpectra.h:5 AliAnalysisTaskPPJetSpectra.h:6 AliAnalysisTaskPPJetSpectra.h:7 AliAnalysisTaskPPJetSpectra.h:8 AliAnalysisTaskPPJetSpectra.h:9 AliAnalysisTaskPPJetSpectra.h:10 AliAnalysisTaskPPJetSpectra.h:11 AliAnalysisTaskPPJetSpectra.h:12 AliAnalysisTaskPPJetSpectra.h:13 AliAnalysisTaskPPJetSpectra.h:14 AliAnalysisTaskPPJetSpectra.h:15 AliAnalysisTaskPPJetSpectra.h:16 AliAnalysisTaskPPJetSpectra.h:17 AliAnalysisTaskPPJetSpectra.h:18 AliAnalysisTaskPPJetSpectra.h:19 AliAnalysisTaskPPJetSpectra.h:20 AliAnalysisTaskPPJetSpectra.h:21 AliAnalysisTaskPPJetSpectra.h:22 AliAnalysisTaskPPJetSpectra.h:23 AliAnalysisTaskPPJetSpectra.h:24 AliAnalysisTaskPPJetSpectra.h:25 AliAnalysisTaskPPJetSpectra.h:26 AliAnalysisTaskPPJetSpectra.h:27 AliAnalysisTaskPPJetSpectra.h:28 AliAnalysisTaskPPJetSpectra.h:29 AliAnalysisTaskPPJetSpectra.h:30 AliAnalysisTaskPPJetSpectra.h:31 AliAnalysisTaskPPJetSpectra.h:32 AliAnalysisTaskPPJetSpectra.h:33 AliAnalysisTaskPPJetSpectra.h:34 AliAnalysisTaskPPJetSpectra.h:35 AliAnalysisTaskPPJetSpectra.h:36 AliAnalysisTaskPPJetSpectra.h:37 AliAnalysisTaskPPJetSpectra.h:38 AliAnalysisTaskPPJetSpectra.h:39 AliAnalysisTaskPPJetSpectra.h:40 AliAnalysisTaskPPJetSpectra.h:41 AliAnalysisTaskPPJetSpectra.h:42 AliAnalysisTaskPPJetSpectra.h:43 AliAnalysisTaskPPJetSpectra.h:44 AliAnalysisTaskPPJetSpectra.h:45 AliAnalysisTaskPPJetSpectra.h:46 AliAnalysisTaskPPJetSpectra.h:47 AliAnalysisTaskPPJetSpectra.h:48 AliAnalysisTaskPPJetSpectra.h:49 AliAnalysisTaskPPJetSpectra.h:50 AliAnalysisTaskPPJetSpectra.h:51 AliAnalysisTaskPPJetSpectra.h:52 AliAnalysisTaskPPJetSpectra.h:53 AliAnalysisTaskPPJetSpectra.h:54 AliAnalysisTaskPPJetSpectra.h:55 AliAnalysisTaskPPJetSpectra.h:56 AliAnalysisTaskPPJetSpectra.h:57 AliAnalysisTaskPPJetSpectra.h:58 AliAnalysisTaskPPJetSpectra.h:59 AliAnalysisTaskPPJetSpectra.h:60 AliAnalysisTaskPPJetSpectra.h:61 AliAnalysisTaskPPJetSpectra.h:62 AliAnalysisTaskPPJetSpectra.h:63 AliAnalysisTaskPPJetSpectra.h:64 AliAnalysisTaskPPJetSpectra.h:65 AliAnalysisTaskPPJetSpectra.h:66 AliAnalysisTaskPPJetSpectra.h:67 AliAnalysisTaskPPJetSpectra.h:68 AliAnalysisTaskPPJetSpectra.h:69 AliAnalysisTaskPPJetSpectra.h:70 AliAnalysisTaskPPJetSpectra.h:71 AliAnalysisTaskPPJetSpectra.h:72 AliAnalysisTaskPPJetSpectra.h:73 AliAnalysisTaskPPJetSpectra.h:74 AliAnalysisTaskPPJetSpectra.h:75 AliAnalysisTaskPPJetSpectra.h:76 AliAnalysisTaskPPJetSpectra.h:77 AliAnalysisTaskPPJetSpectra.h:78 AliAnalysisTaskPPJetSpectra.h:79 AliAnalysisTaskPPJetSpectra.h:80 AliAnalysisTaskPPJetSpectra.h:81 AliAnalysisTaskPPJetSpectra.h:82 AliAnalysisTaskPPJetSpectra.h:83 AliAnalysisTaskPPJetSpectra.h:84 AliAnalysisTaskPPJetSpectra.h:85 AliAnalysisTaskPPJetSpectra.h:86 AliAnalysisTaskPPJetSpectra.h:87 AliAnalysisTaskPPJetSpectra.h:88 AliAnalysisTaskPPJetSpectra.h:89 AliAnalysisTaskPPJetSpectra.h:90 AliAnalysisTaskPPJetSpectra.h:91 AliAnalysisTaskPPJetSpectra.h:92 AliAnalysisTaskPPJetSpectra.h:93 AliAnalysisTaskPPJetSpectra.h:94 AliAnalysisTaskPPJetSpectra.h:95 AliAnalysisTaskPPJetSpectra.h:96 AliAnalysisTaskPPJetSpectra.h:97 AliAnalysisTaskPPJetSpectra.h:98 AliAnalysisTaskPPJetSpectra.h:99 AliAnalysisTaskPPJetSpectra.h:100 AliAnalysisTaskPPJetSpectra.h:101 AliAnalysisTaskPPJetSpectra.h:102 AliAnalysisTaskPPJetSpectra.h:103 AliAnalysisTaskPPJetSpectra.h:104 AliAnalysisTaskPPJetSpectra.h:105 AliAnalysisTaskPPJetSpectra.h:106 AliAnalysisTaskPPJetSpectra.h:107 AliAnalysisTaskPPJetSpectra.h:108 AliAnalysisTaskPPJetSpectra.h:109 AliAnalysisTaskPPJetSpectra.h:110 AliAnalysisTaskPPJetSpectra.h:111 AliAnalysisTaskPPJetSpectra.h:112 AliAnalysisTaskPPJetSpectra.h:113 AliAnalysisTaskPPJetSpectra.h:114 AliAnalysisTaskPPJetSpectra.h:115 AliAnalysisTaskPPJetSpectra.h:116 AliAnalysisTaskPPJetSpectra.h:117 AliAnalysisTaskPPJetSpectra.h:118 AliAnalysisTaskPPJetSpectra.h:119 AliAnalysisTaskPPJetSpectra.h:120 AliAnalysisTaskPPJetSpectra.h:121 AliAnalysisTaskPPJetSpectra.h:122 AliAnalysisTaskPPJetSpectra.h:123 AliAnalysisTaskPPJetSpectra.h:124 AliAnalysisTaskPPJetSpectra.h:125 AliAnalysisTaskPPJetSpectra.h:126 AliAnalysisTaskPPJetSpectra.h:127 AliAnalysisTaskPPJetSpectra.h:128 AliAnalysisTaskPPJetSpectra.h:129 AliAnalysisTaskPPJetSpectra.h:130 AliAnalysisTaskPPJetSpectra.h:131 AliAnalysisTaskPPJetSpectra.h:132 AliAnalysisTaskPPJetSpectra.h:133