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