#ifndef ALIANALYSISTASKJETHBOM_H
#define ALIANALYSISTASKJETHBOM_H
#include "AliAnalysisTaskSE.h"
#include "THnSparse.h" // cannot forward declare ThnSparseF
#ifndef __CINT__
#include "fastjet/ClusterSequenceArea.hh"
#include "fastjet/AreaDefinition.hh"
#include "fastjet/JetDefinition.hh"
#include "fastjet/PseudoJet.hh"
#else
namespace fastjet {
class PseudoJet;
class GhostedAreaSpec;
class AreaType;
class JetDefinition;
class JetAlgorithm;
class Strategy;
class RecombinationScheme;
}
#endif
#include "TH1F.h"
#include "TH2D.h"
class AliJetHeader;
class AliESDEvent;
class AliAODEvent;
class AliAODExtension;
class AliAODJet;
class AliGenPythiaEventHeader;
class AliCFManager;
class AliAODJetEventBackground;
class AliJetFinder;
class TList;
class TChain;
class TH3F;
class TProfile;
class TRandom3;
class TRefArray;
class TClonesArray;
class TF1;
class AliAnalysisTaskJetHBOM : public AliAnalysisTaskSE
{
public:
AliAnalysisTaskJetHBOM();
AliAnalysisTaskJetHBOM(const char* name);
virtual ~AliAnalysisTaskJetHBOM();
virtual void UserCreateOutputObjects();
virtual void Init();
virtual void LocalInit() { Init(); }
virtual void UserExec(Option_t *option);
virtual void Terminate(Option_t *option);
virtual Bool_t Notify();
virtual void SetAODTrackInput(Bool_t b){fUseAODTrackInput = b;}
virtual void SetAODMCInput(Bool_t b){fUseAODMCInput = b;}
virtual void SetEventSelection(Bool_t b){fEventSelection = b;}
virtual void SetTrackEtaWindow(Float_t f){fTrackEtaWindow = f;}
virtual void SetTrackTypeGen(Int_t i){fTrackTypeGen = i;}
virtual void SetTrackTypeRec(Int_t i){fTrackTypeRec = i;}
virtual void SetTrackPtCut(Float_t x){fTrackPtCut = x;}
virtual void SetCentralityCut(Float_t xLo,Float_t xUp){fCentCutLo = xLo; fCentCutUp = xUp;}
virtual void SetFilterMask(UInt_t i,Int_t iType = 0){fFilterMask = i;
fFilterType = iType;}
virtual void SetJetTypes(UInt_t i){fJetTypes = i;}
virtual void SetVtxCuts(Float_t z,Float_t r = 1){fVtxZCut = z; fVtxR2Cut = r *r;}
virtual void SetBackgroundBranch(const char* c){fBackgroundBranch = c;}
virtual const char* GetBackgroundBranch(){return fBackgroundBranch.Data();}
virtual void SetNSkipLeadingRan(Int_t x){fNSkipLeadingRan = x;}
virtual void SetNSkipLeadingCone(Int_t x){fNSkipLeadingCone = x;}
virtual void SetNRandomCones(Int_t x){fNRandomCones = x;}
virtual void SetRandConePos(Double_t eta, Double_t phi){randCone_pos=1;randCone_Eta=eta;randCone_Phi=phi;}
virtual void SetfNHBOM(Int_t x){fNHBOM = x;};
virtual void SetEfficiencyPt(TH1F *h){fh1efficiencyPt = (TH1F*)h->Clone("h1efficiencyPt");}
virtual void SetEfficiencyPhi(TH2D *h){fh2efficiencyPhi = (TH2D*)h->Clone("h2efficiencyPhi");}
virtual void SetJetOutputBranch(const char *c){fNonStdBranch = c;}
virtual const char* GetJetOutputBranch(){return fNonStdBranch.Data();}
virtual void SetJetOutputFile(const char *c){fNonStdFile = c;}
virtual const char* GetJetOutputFile(){return fNonStdFile.Data();}
virtual void SetMaxTrackPtInJet(Float_t x){fMaxTrackPtInJet = x;}
virtual void SetJetOutputMinPt(Float_t x){fJetOutputMinPt = x;}
virtual void SetSmearResolution(Bool_t b){fUseTrMomentumSmearing = b;}
virtual void SetDiceEfficiency(Bool_t b){fUseDiceEfficiency = b;}
virtual void SetMomentumResolutionHybrid(TProfile *p1, TProfile *p2, TProfile *p3);
virtual void SetEfficiencyHybrid(TH1 *h1, TH1 *h2, TH1 *h3);
Double_t GetMomentumSmearing(Int_t cat, Double_t pt);
void FitMomentumResolution();
fastjet::JetAlgorithm GetAlgorithm() const {return fAlgorithm;}
fastjet::Strategy GetStrategy() const {return fStrategy;}
fastjet::RecombinationScheme GetRecombScheme() const {return fRecombScheme;}
fastjet::AreaType GetAreaType() const {return fAreaType;}
void SetRparam(Double_t f) {fRparam = f;}
void SetAlgorithm(fastjet::JetAlgorithm f) {fAlgorithm = f;}
void SetStrategy(fastjet::Strategy f) {fStrategy = f;}
void SetRecombScheme(fastjet::RecombinationScheme f) {fRecombScheme = f;}
void SetAreaType(fastjet::AreaType f) {fAreaType = f;}
void SetGhostArea(Double_t f) {fGhostArea = f;}
void SetActiveAreaRepeats(Int_t f) {fActiveAreaRepeats = f;}
void SetGhostEtamax(Double_t f) {fGhostEtamax = f;}
enum {kTrackUndef = 0, kTrackAOD, kTrackKineAll,kTrackKineCharged, kTrackAODMCAll, kTrackAODMCCharged, kTrackAODMCChargedAcceptance, kTrackAODextra, kTrackAODextraonly};
enum {kMaxJets = 4};
enum {kMaxCorrelation = 3};
enum {kMaxRadius = 5};
enum {kMaxCent = 4};
enum {kJet = 1<<0,
kJetRan = 1<<1,
kRC = 1<<2,
kRCRan = 1<<3
};
private:
AliAnalysisTaskJetHBOM(const AliAnalysisTaskJetHBOM&);
AliAnalysisTaskJetHBOM& operator=(const AliAnalysisTaskJetHBOM&);
Int_t GetListOfTracks(TList *list,Int_t type);
AliAODEvent *fAOD;
AliAODExtension *fAODExtension;
TRefArray *fRef;
Bool_t fUseAODTrackInput;
Bool_t fUseAODMCInput;
Bool_t fEventSelection;
UInt_t fFilterMask;
UInt_t fFilterMaskBestPt;
UInt_t fFilterType;
UInt_t fJetTypes;
Int_t fTrackTypeRec;
Int_t fTrackTypeGen;
Int_t fNSkipLeadingRan;
Int_t fNSkipLeadingCone;
Int_t fNRandomCones;
Bool_t randCone_pos;
Double_t randCone_Eta;
Double_t randCone_Phi;
Int_t fNHBOM;
Float_t fTrackEtaWindow;
Float_t fTrackPtCut;
Float_t fJetOutputMinPt;
Float_t fMaxTrackPtInJet;
Float_t fVtxZCut;
Float_t fVtxR2Cut;
Float_t fCentCutUp;
Float_t fCentCutLo;
TString fNonStdBranch;
TString fBackgroundBranch;
TString fNonStdFile;
TProfile *fMomResH1;
TProfile *fMomResH2;
TProfile *fMomResH3;
TF1 *fMomResH1Fit;
TF1 *fMomResH2Fit;
TF1 *fMomResH3Fit;
TH1 *fhEffH1;
TH1 *fhEffH2;
TH1 *fhEffH3;
Bool_t fUseTrMomentumSmearing;
Bool_t fUseDiceEfficiency;
Double_t fRparam;
fastjet::JetAlgorithm fAlgorithm;
fastjet::Strategy fStrategy;
fastjet::RecombinationScheme fRecombScheme;
fastjet::AreaType fAreaType;
Double_t fGhostArea;
Int_t fActiveAreaRepeats;
Double_t fGhostEtamax;
Double_t background;
TClonesArray *fTCARandomConesOut;
TRandom3* fRandom;
TProfile* fh1Xsec;
TH1F* fh1Trials;
TH1F* fh1PtHard;
TH1F* fh1PtHardNoW;
TH1F* fh1PtHardTrials;
TH1F* fh1Nch;
TH1F* fh1CentralityPhySel;
TH1F* fh1Centrality;
TH1F* fh1DeltapT;
TH1F* fh1Rho;
TH1F* fh1RhoSigma;
TH1F* fh1PtRandCone;
TH1F* fh1efficiencyPt;
TH2D* fh2efficiencyPhi;
TH1F* fh1ZPhySel;
TH1F* fh1Z;
TList *fHistList;
ClassDef(AliAnalysisTaskJetHBOM, 1)
};
#endif
AliAnalysisTaskJetHBOM.h:1 AliAnalysisTaskJetHBOM.h:2 AliAnalysisTaskJetHBOM.h:3 AliAnalysisTaskJetHBOM.h:4 AliAnalysisTaskJetHBOM.h:5 AliAnalysisTaskJetHBOM.h:6 AliAnalysisTaskJetHBOM.h:7 AliAnalysisTaskJetHBOM.h:8 AliAnalysisTaskJetHBOM.h:9 AliAnalysisTaskJetHBOM.h:10 AliAnalysisTaskJetHBOM.h:11 AliAnalysisTaskJetHBOM.h:12 AliAnalysisTaskJetHBOM.h:13 AliAnalysisTaskJetHBOM.h:14 AliAnalysisTaskJetHBOM.h:15 AliAnalysisTaskJetHBOM.h:16 AliAnalysisTaskJetHBOM.h:17 AliAnalysisTaskJetHBOM.h:18 AliAnalysisTaskJetHBOM.h:19 AliAnalysisTaskJetHBOM.h:20 AliAnalysisTaskJetHBOM.h:21 AliAnalysisTaskJetHBOM.h:22 AliAnalysisTaskJetHBOM.h:23 AliAnalysisTaskJetHBOM.h:24 AliAnalysisTaskJetHBOM.h:25 AliAnalysisTaskJetHBOM.h:26 AliAnalysisTaskJetHBOM.h:27 AliAnalysisTaskJetHBOM.h:28 AliAnalysisTaskJetHBOM.h:29 AliAnalysisTaskJetHBOM.h:30 AliAnalysisTaskJetHBOM.h:31 AliAnalysisTaskJetHBOM.h:32 AliAnalysisTaskJetHBOM.h:33 AliAnalysisTaskJetHBOM.h:34 AliAnalysisTaskJetHBOM.h:35 AliAnalysisTaskJetHBOM.h:36 AliAnalysisTaskJetHBOM.h:37 AliAnalysisTaskJetHBOM.h:38 AliAnalysisTaskJetHBOM.h:39 AliAnalysisTaskJetHBOM.h:40 AliAnalysisTaskJetHBOM.h:41 AliAnalysisTaskJetHBOM.h:42 AliAnalysisTaskJetHBOM.h:43 AliAnalysisTaskJetHBOM.h:44 AliAnalysisTaskJetHBOM.h:45 AliAnalysisTaskJetHBOM.h:46 AliAnalysisTaskJetHBOM.h:47 AliAnalysisTaskJetHBOM.h:48 AliAnalysisTaskJetHBOM.h:49 AliAnalysisTaskJetHBOM.h:50 AliAnalysisTaskJetHBOM.h:51 AliAnalysisTaskJetHBOM.h:52 AliAnalysisTaskJetHBOM.h:53 AliAnalysisTaskJetHBOM.h:54 AliAnalysisTaskJetHBOM.h:55 AliAnalysisTaskJetHBOM.h:56 AliAnalysisTaskJetHBOM.h:57 AliAnalysisTaskJetHBOM.h:58 AliAnalysisTaskJetHBOM.h:59 AliAnalysisTaskJetHBOM.h:60 AliAnalysisTaskJetHBOM.h:61 AliAnalysisTaskJetHBOM.h:62 AliAnalysisTaskJetHBOM.h:63 AliAnalysisTaskJetHBOM.h:64 AliAnalysisTaskJetHBOM.h:65 AliAnalysisTaskJetHBOM.h:66 AliAnalysisTaskJetHBOM.h:67 AliAnalysisTaskJetHBOM.h:68 AliAnalysisTaskJetHBOM.h:69 AliAnalysisTaskJetHBOM.h:70 AliAnalysisTaskJetHBOM.h:71 AliAnalysisTaskJetHBOM.h:72 AliAnalysisTaskJetHBOM.h:73 AliAnalysisTaskJetHBOM.h:74 AliAnalysisTaskJetHBOM.h:75 AliAnalysisTaskJetHBOM.h:76 AliAnalysisTaskJetHBOM.h:77 AliAnalysisTaskJetHBOM.h:78 AliAnalysisTaskJetHBOM.h:79 AliAnalysisTaskJetHBOM.h:80 AliAnalysisTaskJetHBOM.h:81 AliAnalysisTaskJetHBOM.h:82 AliAnalysisTaskJetHBOM.h:83 AliAnalysisTaskJetHBOM.h:84 AliAnalysisTaskJetHBOM.h:85 AliAnalysisTaskJetHBOM.h:86 AliAnalysisTaskJetHBOM.h:87 AliAnalysisTaskJetHBOM.h:88 AliAnalysisTaskJetHBOM.h:89 AliAnalysisTaskJetHBOM.h:90 AliAnalysisTaskJetHBOM.h:91 AliAnalysisTaskJetHBOM.h:92 AliAnalysisTaskJetHBOM.h:93 AliAnalysisTaskJetHBOM.h:94 AliAnalysisTaskJetHBOM.h:95 AliAnalysisTaskJetHBOM.h:96 AliAnalysisTaskJetHBOM.h:97 AliAnalysisTaskJetHBOM.h:98 AliAnalysisTaskJetHBOM.h:99 AliAnalysisTaskJetHBOM.h:100 AliAnalysisTaskJetHBOM.h:101 AliAnalysisTaskJetHBOM.h:102 AliAnalysisTaskJetHBOM.h:103 AliAnalysisTaskJetHBOM.h:104 AliAnalysisTaskJetHBOM.h:105 AliAnalysisTaskJetHBOM.h:106 AliAnalysisTaskJetHBOM.h:107 AliAnalysisTaskJetHBOM.h:108 AliAnalysisTaskJetHBOM.h:109 AliAnalysisTaskJetHBOM.h:110 AliAnalysisTaskJetHBOM.h:111 AliAnalysisTaskJetHBOM.h:112 AliAnalysisTaskJetHBOM.h:113 AliAnalysisTaskJetHBOM.h:114 AliAnalysisTaskJetHBOM.h:115 AliAnalysisTaskJetHBOM.h:116 AliAnalysisTaskJetHBOM.h:117 AliAnalysisTaskJetHBOM.h:118 AliAnalysisTaskJetHBOM.h:119 AliAnalysisTaskJetHBOM.h:120 AliAnalysisTaskJetHBOM.h:121 AliAnalysisTaskJetHBOM.h:122 AliAnalysisTaskJetHBOM.h:123 AliAnalysisTaskJetHBOM.h:124 AliAnalysisTaskJetHBOM.h:125 AliAnalysisTaskJetHBOM.h:126 AliAnalysisTaskJetHBOM.h:127 AliAnalysisTaskJetHBOM.h:128 AliAnalysisTaskJetHBOM.h:129 AliAnalysisTaskJetHBOM.h:130 AliAnalysisTaskJetHBOM.h:131 AliAnalysisTaskJetHBOM.h:132 AliAnalysisTaskJetHBOM.h:133 AliAnalysisTaskJetHBOM.h:134 AliAnalysisTaskJetHBOM.h:135 AliAnalysisTaskJetHBOM.h:136 AliAnalysisTaskJetHBOM.h:137 AliAnalysisTaskJetHBOM.h:138 AliAnalysisTaskJetHBOM.h:139 AliAnalysisTaskJetHBOM.h:140 AliAnalysisTaskJetHBOM.h:141 AliAnalysisTaskJetHBOM.h:142 AliAnalysisTaskJetHBOM.h:143 AliAnalysisTaskJetHBOM.h:144 AliAnalysisTaskJetHBOM.h:145 AliAnalysisTaskJetHBOM.h:146 AliAnalysisTaskJetHBOM.h:147 AliAnalysisTaskJetHBOM.h:148 AliAnalysisTaskJetHBOM.h:149 AliAnalysisTaskJetHBOM.h:150 AliAnalysisTaskJetHBOM.h:151 AliAnalysisTaskJetHBOM.h:152 AliAnalysisTaskJetHBOM.h:153 AliAnalysisTaskJetHBOM.h:154 AliAnalysisTaskJetHBOM.h:155 AliAnalysisTaskJetHBOM.h:156 AliAnalysisTaskJetHBOM.h:157 AliAnalysisTaskJetHBOM.h:158 AliAnalysisTaskJetHBOM.h:159 AliAnalysisTaskJetHBOM.h:160 AliAnalysisTaskJetHBOM.h:161 AliAnalysisTaskJetHBOM.h:162 AliAnalysisTaskJetHBOM.h:163 AliAnalysisTaskJetHBOM.h:164 AliAnalysisTaskJetHBOM.h:165 AliAnalysisTaskJetHBOM.h:166 AliAnalysisTaskJetHBOM.h:167 AliAnalysisTaskJetHBOM.h:168 AliAnalysisTaskJetHBOM.h:169 AliAnalysisTaskJetHBOM.h:170 AliAnalysisTaskJetHBOM.h:171 AliAnalysisTaskJetHBOM.h:172 AliAnalysisTaskJetHBOM.h:173 AliAnalysisTaskJetHBOM.h:174 AliAnalysisTaskJetHBOM.h:175 AliAnalysisTaskJetHBOM.h:176 AliAnalysisTaskJetHBOM.h:177 AliAnalysisTaskJetHBOM.h:178 AliAnalysisTaskJetHBOM.h:179 AliAnalysisTaskJetHBOM.h:180 AliAnalysisTaskJetHBOM.h:181 AliAnalysisTaskJetHBOM.h:182 AliAnalysisTaskJetHBOM.h:183 AliAnalysisTaskJetHBOM.h:184 AliAnalysisTaskJetHBOM.h:185 AliAnalysisTaskJetHBOM.h:186 AliAnalysisTaskJetHBOM.h:187 AliAnalysisTaskJetHBOM.h:188 AliAnalysisTaskJetHBOM.h:189 AliAnalysisTaskJetHBOM.h:190 AliAnalysisTaskJetHBOM.h:191 AliAnalysisTaskJetHBOM.h:192 AliAnalysisTaskJetHBOM.h:193 AliAnalysisTaskJetHBOM.h:194 AliAnalysisTaskJetHBOM.h:195 AliAnalysisTaskJetHBOM.h:196 AliAnalysisTaskJetHBOM.h:197 AliAnalysisTaskJetHBOM.h:198 AliAnalysisTaskJetHBOM.h:199 AliAnalysisTaskJetHBOM.h:200 AliAnalysisTaskJetHBOM.h:201 AliAnalysisTaskJetHBOM.h:202 AliAnalysisTaskJetHBOM.h:203 AliAnalysisTaskJetHBOM.h:204 AliAnalysisTaskJetHBOM.h:205 AliAnalysisTaskJetHBOM.h:206 AliAnalysisTaskJetHBOM.h:207 AliAnalysisTaskJetHBOM.h:208 AliAnalysisTaskJetHBOM.h:209 AliAnalysisTaskJetHBOM.h:210 AliAnalysisTaskJetHBOM.h:211 AliAnalysisTaskJetHBOM.h:212 AliAnalysisTaskJetHBOM.h:213 AliAnalysisTaskJetHBOM.h:214 AliAnalysisTaskJetHBOM.h:215 AliAnalysisTaskJetHBOM.h:216 AliAnalysisTaskJetHBOM.h:217 AliAnalysisTaskJetHBOM.h:218 AliAnalysisTaskJetHBOM.h:219 AliAnalysisTaskJetHBOM.h:220 AliAnalysisTaskJetHBOM.h:221 AliAnalysisTaskJetHBOM.h:222 AliAnalysisTaskJetHBOM.h:223 AliAnalysisTaskJetHBOM.h:224 AliAnalysisTaskJetHBOM.h:225 AliAnalysisTaskJetHBOM.h:226 AliAnalysisTaskJetHBOM.h:227 AliAnalysisTaskJetHBOM.h:228 AliAnalysisTaskJetHBOM.h:229 AliAnalysisTaskJetHBOM.h:230 AliAnalysisTaskJetHBOM.h:231 AliAnalysisTaskJetHBOM.h:232 AliAnalysisTaskJetHBOM.h:233 AliAnalysisTaskJetHBOM.h:234 AliAnalysisTaskJetHBOM.h:235 AliAnalysisTaskJetHBOM.h:236 AliAnalysisTaskJetHBOM.h:237 AliAnalysisTaskJetHBOM.h:238 AliAnalysisTaskJetHBOM.h:239 AliAnalysisTaskJetHBOM.h:240 AliAnalysisTaskJetHBOM.h:241