#ifndef ALIANALYSISTASKEMCALJET_H
#define ALIANALYSISTASKEMCALJET_H
class TClonesArray;
class TList;
class TString;
class AliEmcalJet;
class AliRhoParameter;
class AliLocalRhoParameter;
class AliVCluster;
class AliVParticle;
class AliJetContainer;
#include "AliAnalysisTaskEmcal.h"
class AliAnalysisTaskEmcalJet : public AliAnalysisTaskEmcal {
public:
AliAnalysisTaskEmcalJet();
AliAnalysisTaskEmcalJet(const char *name, Bool_t histo=kFALSE);
virtual ~AliAnalysisTaskEmcalJet();
void SetAnaType(UInt_t t, Int_t c = 0) { SetJetAcceptanceType(t,c); }
void SetJetAcceptanceType(UInt_t t, Int_t c = 0);
void SetJetAcceptanceType(TString cutType, Int_t c = 0);
void SetJetEtaLimits(Float_t min, Float_t max, Int_t c = 0);
void SetJetPhiLimits(Float_t min, Float_t max, Int_t c = 0);
void SetJetAreaCut(Float_t cut, Int_t c = 0);
void SetPercAreaCut(Float_t p, Int_t c = 0);
void SetZLeadingCut(Float_t zemc, Float_t zch, Int_t c = 0);
void SetNEFCut(Float_t min, Float_t max, Int_t c = 0);
void SetAreaEmcCut(Double_t a = 0.99, Int_t c = 0);
void SetJetPtCut(Float_t cut, Int_t c = 0);
void SetJetRadius(Float_t r, Int_t c = 0);
void SetMaxClusterPt(Float_t b, Int_t c = 0);
void SetMaxTrackPt(Float_t b, Int_t c = 0);
void SetPtBiasJetClus(Float_t b, Int_t c = 0);
void SetPtBiasJetTrack(Float_t b, Int_t c = 0);
void SetLeadingHadronType(Int_t t, Int_t c = 0);
void SetNLeadingJets(Int_t t, Int_t c = 0);
void SetJetBitMap(UInt_t m, Int_t c = 0);
void SetJetTrigger(UInt_t t, Int_t c = 0);
void SetIsParticleLevel(Bool_t b, Int_t c = 0);
void SetJetsName(const char *n) { AddJetContainer(n); }
virtual void SetRhoName(const char *n, Int_t c = 0);
virtual void SetLocalRhoName(const char *n) { fLocalRhoName = n; }
const TString& GetRhoName(Int_t c = 0) const;
AliJetContainer *AddJetContainer(const char *n, TString defaultCutType = "", Float_t jetRadius = 0.4);
void RemoveJetContainer(Int_t i) { fJetCollArray.RemoveAt(i);}
AliJetContainer *GetJetContainer(Int_t i=0) const;
AliJetContainer *GetJetContainer(const char* name) const;
protected:
virtual Bool_t AcceptJet(AliEmcalJet* jet, Int_t c =0);
Bool_t AcceptBiasJet(AliEmcalJet* jet, Int_t c =0);
Double_t GetLeadingHadronPt(AliEmcalJet* jet, Int_t c =0);
void ExecOnce() ;
AliRhoParameter *GetRhoFromEvent(const char *name) ;
AliLocalRhoParameter *GetLocalRhoFromEvent(const char *name) ;
Bool_t IsJetTrack(AliEmcalJet* jet, Int_t itrack, Bool_t sorted = kFALSE) const;
Bool_t IsJetCluster(AliEmcalJet* jet, Int_t iclus, Bool_t sorted = kFALSE) const;
Bool_t RetrieveEventObjects() ;
Double_t GetJetRadius(Int_t i=0) const;
TClonesArray *GetJetArray(Int_t i=0) const;
AliEmcalJet *GetJetFromArray(Int_t j, Int_t c=0) const;
AliEmcalJet *GetAcceptJetFromArray(Int_t j, Int_t c=0) const;
Int_t GetNJets(Int_t i=0) const;
Double_t GetRhoVal(Int_t i=0) const;
TString fRhoName;
TString fLocalRhoName;
TObjArray fJetCollArray;
TClonesArray *fJets;
AliRhoParameter *fRho;
AliLocalRhoParameter *fLocalRho;
Double_t fRhoVal;
private:
AliAnalysisTaskEmcalJet(const AliAnalysisTaskEmcalJet&);
AliAnalysisTaskEmcalJet &operator=(const AliAnalysisTaskEmcalJet&);
ClassDef(AliAnalysisTaskEmcalJet, 3)
};
#endif
AliAnalysisTaskEmcalJet.h:1 AliAnalysisTaskEmcalJet.h:2 AliAnalysisTaskEmcalJet.h:3 AliAnalysisTaskEmcalJet.h:4 AliAnalysisTaskEmcalJet.h:5 AliAnalysisTaskEmcalJet.h:6 AliAnalysisTaskEmcalJet.h:7 AliAnalysisTaskEmcalJet.h:8 AliAnalysisTaskEmcalJet.h:9 AliAnalysisTaskEmcalJet.h:10 AliAnalysisTaskEmcalJet.h:11 AliAnalysisTaskEmcalJet.h:12 AliAnalysisTaskEmcalJet.h:13 AliAnalysisTaskEmcalJet.h:14 AliAnalysisTaskEmcalJet.h:15 AliAnalysisTaskEmcalJet.h:16 AliAnalysisTaskEmcalJet.h:17 AliAnalysisTaskEmcalJet.h:18 AliAnalysisTaskEmcalJet.h:19 AliAnalysisTaskEmcalJet.h:20 AliAnalysisTaskEmcalJet.h:21 AliAnalysisTaskEmcalJet.h:22 AliAnalysisTaskEmcalJet.h:23 AliAnalysisTaskEmcalJet.h:24 AliAnalysisTaskEmcalJet.h:25 AliAnalysisTaskEmcalJet.h:26 AliAnalysisTaskEmcalJet.h:27 AliAnalysisTaskEmcalJet.h:28 AliAnalysisTaskEmcalJet.h:29 AliAnalysisTaskEmcalJet.h:30 AliAnalysisTaskEmcalJet.h:31 AliAnalysisTaskEmcalJet.h:32 AliAnalysisTaskEmcalJet.h:33 AliAnalysisTaskEmcalJet.h:34 AliAnalysisTaskEmcalJet.h:35 AliAnalysisTaskEmcalJet.h:36 AliAnalysisTaskEmcalJet.h:37 AliAnalysisTaskEmcalJet.h:38 AliAnalysisTaskEmcalJet.h:39 AliAnalysisTaskEmcalJet.h:40 AliAnalysisTaskEmcalJet.h:41 AliAnalysisTaskEmcalJet.h:42 AliAnalysisTaskEmcalJet.h:43 AliAnalysisTaskEmcalJet.h:44 AliAnalysisTaskEmcalJet.h:45 AliAnalysisTaskEmcalJet.h:46 AliAnalysisTaskEmcalJet.h:47 AliAnalysisTaskEmcalJet.h:48 AliAnalysisTaskEmcalJet.h:49 AliAnalysisTaskEmcalJet.h:50 AliAnalysisTaskEmcalJet.h:51 AliAnalysisTaskEmcalJet.h:52 AliAnalysisTaskEmcalJet.h:53 AliAnalysisTaskEmcalJet.h:54 AliAnalysisTaskEmcalJet.h:55 AliAnalysisTaskEmcalJet.h:56 AliAnalysisTaskEmcalJet.h:57 AliAnalysisTaskEmcalJet.h:58 AliAnalysisTaskEmcalJet.h:59 AliAnalysisTaskEmcalJet.h:60 AliAnalysisTaskEmcalJet.h:61 AliAnalysisTaskEmcalJet.h:62 AliAnalysisTaskEmcalJet.h:63 AliAnalysisTaskEmcalJet.h:64 AliAnalysisTaskEmcalJet.h:65 AliAnalysisTaskEmcalJet.h:66 AliAnalysisTaskEmcalJet.h:67 AliAnalysisTaskEmcalJet.h:68 AliAnalysisTaskEmcalJet.h:69 AliAnalysisTaskEmcalJet.h:70 AliAnalysisTaskEmcalJet.h:71 AliAnalysisTaskEmcalJet.h:72 AliAnalysisTaskEmcalJet.h:73 AliAnalysisTaskEmcalJet.h:74 AliAnalysisTaskEmcalJet.h:75 AliAnalysisTaskEmcalJet.h:76 AliAnalysisTaskEmcalJet.h:77 AliAnalysisTaskEmcalJet.h:78 AliAnalysisTaskEmcalJet.h:79 AliAnalysisTaskEmcalJet.h:80 AliAnalysisTaskEmcalJet.h:81 AliAnalysisTaskEmcalJet.h:82 AliAnalysisTaskEmcalJet.h:83 AliAnalysisTaskEmcalJet.h:84 AliAnalysisTaskEmcalJet.h:85 AliAnalysisTaskEmcalJet.h:86 AliAnalysisTaskEmcalJet.h:87 AliAnalysisTaskEmcalJet.h:88