AliPhysics  efbe636 (efbe636)
AliAnalysisTaskEmcalJet.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKEMCALJET_H
2 #define ALIANALYSISTASKEMCALJET_H
3 /* Copyright(c) 1998-2016, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
6 class TClonesArray;
7 class TList;
8 class TString;
9 class AliEmcalJet;
10 class AliRhoParameter;
12 class AliVCluster;
13 class AliVParticle;
14 
15 #include "AliJetContainer.h"
16 #include "AliAnalysisTaskEmcal.h"
17 
31  public:
35 
37  AliAnalysisTaskEmcalJet(const char *name, Bool_t histo=kFALSE);
38  virtual ~AliAnalysisTaskEmcalJet();
39 
40  //these should all point to the jet container
42  void SetJetAcceptanceType(UInt_t t, Int_t c = 0);
43  void SetJetAcceptanceType(TString cutType, Int_t c = 0);
44  void SetJetType(EJetType_t type, Int_t c = 0);
45  void SetJetEtaLimits(Float_t min, Float_t max, Int_t c = 0);
46  void SetJetPhiLimits(Float_t min, Float_t max, Int_t c = 0);
47  void SetJetAreaCut(Float_t cut, Int_t c = 0);
48  void SetPercAreaCut(Float_t p, Int_t c = 0);
49  void SetZLeadingCut(Float_t zemc, Float_t zch, Int_t c = 0);
50  void SetNEFCut(Float_t min, Float_t max, Int_t c = 0);
51  void SetAreaEmcCut(Double_t a = 0.99, Int_t c = 0);
52  void SetJetPtCut(Float_t cut, Int_t c = 0);
53  void SetJetRadius(Float_t r, Int_t c = 0);
54  void SetMaxClusterPt(Float_t b, Int_t c = 0);
55  void SetMaxTrackPt(Float_t b, Int_t c = 0);
56  void SetPtBiasJetClus(Float_t b, Int_t c = 0);
57  void SetPtBiasJetTrack(Float_t b, Int_t c = 0);
58  void SetLeadingHadronType(Int_t t, Int_t c = 0);
59  void SetNLeadingJets(Int_t t, Int_t c = 0);
60  void SetJetBitMap(UInt_t m, Int_t c = 0);
61  void SetJetTrigger(UInt_t t, Int_t c = 0);
62  void SetIsParticleLevel(Bool_t b, Int_t c = 0);
63  virtual void SetRhoName(const char *n, Int_t c = 0);
64  virtual void SetLocalRhoName(const char *n) { fLocalRhoName = n; }
65  const TString& GetRhoName(Int_t c = 0) const;
66  AliJetContainer *AddJetContainer(const char *n, TString defaultCutType, Float_t jetRadius = 0.4);
67  AliJetContainer *AddJetContainer(const char *n, UInt_t accType = AliEmcalJet::kUser, Float_t jetRadius = 0.4);
68  AliJetContainer *AddJetContainer(EJetType_t jetType, EJetAlgo_t jetAlgo, ERecoScheme_t recoScheme, Double_t radius,
69  UInt_t accType, AliParticleContainer* partCont, AliClusterContainer* clusCont, TString tag = "Jet");
70  AliJetContainer *AddJetContainer(EJetType_t jetType, EJetAlgo_t jetAlgo, ERecoScheme_t recoScheme, Double_t radius,
71  UInt_t accType, TString tag = "Jet");
72  void AdoptJetContainer(AliJetContainer* cont) { fJetCollArray.Add(cont) ;}
73 
74  void RemoveJetContainer(Int_t i) { fJetCollArray.RemoveAt(i);}
76  AliJetContainer *GetJetContainer(const char* name) const;
77 
78  protected:
79  virtual Bool_t AcceptJet(AliEmcalJet* jet, Int_t c =0);
81  void ExecOnce() ;
82 
83  AliRhoParameter *GetRhoFromEvent(const char *name) ;
84  AliLocalRhoParameter *GetLocalRhoFromEvent(const char *name) ;
85  Bool_t IsJetTrack(AliEmcalJet* jet, Int_t itrack, Bool_t sorted = kFALSE) const;
86  Bool_t IsJetCluster(AliEmcalJet* jet, Int_t iclus, Bool_t sorted = kFALSE) const;
88  Double_t GetJetRadius(Int_t i=0) const;
89  TClonesArray *GetJetArray(Int_t i=0) const;
92  Int_t GetNJets(Int_t i=0) const;
93  Double_t GetRhoVal(Int_t i=0) const;
94 
98 
99  TClonesArray *fJets;
103 
104  private:
105  AliAnalysisTaskEmcalJet(const AliAnalysisTaskEmcalJet&); // not implemented
106  AliAnalysisTaskEmcalJet &operator=(const AliAnalysisTaskEmcalJet&); // not implemented
107 
109  ClassDef(AliAnalysisTaskEmcalJet, 3);
111 };
112 #endif
void SetPercAreaCut(Float_t p, Int_t c=0)
void SetMaxClusterPt(Float_t b, Int_t c=0)
AliEmcalJet * GetJetFromArray(Int_t j, Int_t c=0) const
double Double_t
Definition: External.C:58
AliJetContainer::ERecoScheme_t ERecoScheme_t
AliJetContainer * GetJetContainer(Int_t i=0) const
const TString & GetRhoName(Int_t c=0) const
void SetJetBitMap(UInt_t m, Int_t c=0)
Base task in the EMCAL framework.
Int_t GetNJets(Int_t i=0) const
void SetAreaEmcCut(Double_t a=0.99, Int_t c=0)
void SetJetType(EJetType_t type, Int_t c=0)
void AdoptJetContainer(AliJetContainer *cont)
Double_t GetLeadingHadronPt(AliEmcalJet *jet, Int_t c=0)
Full acceptance, i.e. no acceptance cut applied – left to user.
Definition: AliEmcalJet.h:77
TCanvas * c
Definition: TestFitELoss.C:172
AliJetContainer * AddJetContainer(const char *n, TString defaultCutType, Float_t jetRadius=0.4)
AliLocalRhoParameter * GetLocalRhoFromEvent(const char *name)
void SetPtBiasJetClus(Float_t b, Int_t c=0)
void SetJetTrigger(UInt_t t, Int_t c=0)
TClonesArray * GetJetArray(Int_t i=0) const
Container for particles within the EMCAL framework.
Double_t GetJetRadius(Int_t i=0) const
Bool_t IsJetTrack(AliEmcalJet *jet, Int_t itrack, Bool_t sorted=kFALSE) const
TString fLocalRhoName
name for local rho
void SetLeadingHadronType(Int_t t, Int_t c=0)
Bool_t IsJetCluster(AliEmcalJet *jet, Int_t iclus, Bool_t sorted=kFALSE) const
AliRhoParameter * GetRhoFromEvent(const char *name)
int Int_t
Definition: External.C:63
unsigned int UInt_t
Definition: External.C:33
void SetPtBiasJetTrack(Float_t b, Int_t c=0)
float Float_t
Definition: External.C:68
void SetJetRadius(Float_t r, Int_t c=0)
void SetJetEtaLimits(Float_t min, Float_t max, Int_t c=0)
AliRhoParameter * fRho
! event rho
void SetJetAcceptanceType(UInt_t t, Int_t c=0)
AliJetContainer::EJetAlgo_t EJetAlgo_t
AliLocalRhoParameter * fLocalRho
! local event rho
void SetZLeadingCut(Float_t zemc, Float_t zch, Int_t c=0)
AliEmcalJet * GetAcceptJetFromArray(Int_t j, Int_t c=0) const
virtual void SetRhoName(const char *n, Int_t c=0)
TObjArray fJetCollArray
jet collection array
TClonesArray * fJets
! jets
void SetJetPhiLimits(Float_t min, Float_t max, Int_t c=0)
Double_t GetRhoVal(Int_t i=0) const
void SetJetAreaCut(Float_t cut, Int_t c=0)
void SetNLeadingJets(Int_t t, Int_t c=0)
void SetIsParticleLevel(Bool_t b, Int_t c=0)
virtual void SetLocalRhoName(const char *n)
void SetAnaType(UInt_t t, Int_t c=0)
Base task in the EMCAL jet framework.
Represent a jet reconstructed using the EMCal jet framework.
Definition: AliEmcalJet.h:51
AliJetContainer::EJetType_t EJetType_t
virtual Bool_t AcceptJet(AliEmcalJet *jet, Int_t c=0)
bool Bool_t
Definition: External.C:53
void SetNEFCut(Float_t min, Float_t max, Int_t c=0)
void SetJetPtCut(Float_t cut, Int_t c=0)
void SetMaxTrackPt(Float_t b, Int_t c=0)
Double_t fRhoVal
! event rho value, same for local rho
Container structure for EMCAL clusters.
AliAnalysisTaskEmcalJet & operator=(const AliAnalysisTaskEmcalJet &)
Container for jet within the EMCAL jet framework.