]>
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: |
9239b066 | 56 | virtual Bool_t AcceptJet(AliEmcalJet* jet, Int_t c =0); |
57 | Bool_t AcceptBiasJet(AliEmcalJet* jet, Int_t c =0); | |
58 | Double_t GetLeadingHadronPt(AliEmcalJet* jet, Int_t c =0); | |
ffe32451 | 59 | void ExecOnce() ; |
9239b066 | 60 | |
a487deae | 61 | AliRhoParameter *GetRhoFromEvent(const char *name) ; |
7dd1eeea | 62 | AliLocalRhoParameter *GetLocalRhoFromEvent(const char *name) ; |
a7477843 | 63 | Bool_t IsJetTrack(AliEmcalJet* jet, Int_t itrack, Bool_t sorted = kFALSE) const; |
64 | Bool_t IsJetCluster(AliEmcalJet* jet, Int_t iclus, Bool_t sorted = kFALSE) const; | |
ffe32451 | 65 | Bool_t RetrieveEventObjects() ; |
9239b066 | 66 | Double_t GetJetRadius(Int_t i=0) const; |
67 | TClonesArray *GetJetArray(Int_t i=0) const; | |
68 | AliEmcalJet *GetJetFromArray(Int_t j, Int_t c=0) const; | |
69 | AliEmcalJet *GetAcceptJetFromArray(Int_t j, Int_t c=0) const; | |
70 | Int_t GetNJets(Int_t i=0) const; | |
71 | Double_t GetRhoVal(Int_t i=0) const; | |
72 | ||
73 | TString fRhoName; // rho name | |
74 | TString fLocalRhoName; // name for local rho | |
75 | TObjArray fJetCollArray; // jet collection array | |
a546db49 | 76 | |
a546db49 | 77 | TClonesArray *fJets; //!jets |
ca5c29fa | 78 | AliRhoParameter *fRho; //!event rho |
7dd1eeea | 79 | AliLocalRhoParameter *fLocalRho; //!local event rho |
80 | Double_t fRhoVal; //!event rho value, same for local rho | |
a546db49 | 81 | |
82 | private: | |
83 | AliAnalysisTaskEmcalJet(const AliAnalysisTaskEmcalJet&); // not implemented | |
84 | AliAnalysisTaskEmcalJet &operator=(const AliAnalysisTaskEmcalJet&); // not implemented | |
85 | ||
9239b066 | 86 | ClassDef(AliAnalysisTaskEmcalJet, 3) // EMCAL Jet base analysis task |
a546db49 | 87 | }; |
88 | #endif |