]>
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; |
11 | class AliVCluster; | |
12 | class AliVParticle; | |
a546db49 | 13 | |
14 | #include "AliAnalysisTaskEmcal.h" | |
15 | ||
16 | class AliAnalysisTaskEmcalJet : public AliAnalysisTaskEmcal { | |
17 | public: | |
a546db49 | 18 | AliAnalysisTaskEmcalJet(); |
e66fee85 | 19 | AliAnalysisTaskEmcalJet(const char *name, Bool_t histo=kFALSE); |
a546db49 | 20 | virtual ~AliAnalysisTaskEmcalJet(); |
21 | ||
a487deae | 22 | void SetJetEtaLimits(Float_t min, Float_t max) { fJetMinEta = min, fJetMaxEta = max ; } |
23 | void SetJetPhiLimits(Float_t min, Float_t max) { fJetMinPhi = min, fJetMaxPhi = max ; } | |
24 | void SetJetAreaCut(Float_t cut) { fJetAreaCut = cut ; } | |
25 | void SetPercAreaCut(Float_t p) { fPercAreaCut = p ; } | |
26 | void SetAreaEmcCut(Double_t a = 0.99) { fAreaEmcCut = a ; } | |
27 | void SetJetPtCut(Float_t cut) { fJetPtCut = cut ; } | |
28 | void SetJetRadius(Float_t r) { fJetRadius = r ; } | |
29 | void SetJetsName(const char *n) { fJetsName = n ; } | |
30 | virtual void SetRhoName(const char *n) { fRhoName = n ; } | |
31 | void SetMaxClusterPt(Float_t b) { fMaxClusterPt = b ; } | |
32 | void SetMaxTrackPt(Float_t b) { fMaxTrackPt = b ; } | |
33 | void SetPtBiasJetClus(Float_t b) { fPtBiasJetClus = b ; } | |
34 | void SetPtBiasJetTrack(Float_t b) { fPtBiasJetTrack = b ; } | |
83888eef | 35 | void SetLeadingHadronType(Int_t t) { fLeadingHadronType = t ; } |
ca5c29fa | 36 | void SetNLeadingJets(Int_t t) { fNLeadingJets = t ; } |
411b11e0 | 37 | |
a546db49 | 38 | protected: |
83888eef | 39 | Float_t* GenerateFixedBinArray(Int_t n, Float_t min, Float_t max) const; |
a487deae | 40 | virtual Bool_t AcceptJet(AliEmcalJet* jet) const; |
2bddb6ae | 41 | Bool_t AcceptBiasJet(AliEmcalJet* jet) const; |
83888eef | 42 | Double_t GetLeadingHadronPt(AliEmcalJet* jet) const; |
ffe32451 | 43 | void ExecOnce() ; |
a487deae | 44 | AliRhoParameter *GetRhoFromEvent(const char *name) ; |
ca5c29fa | 45 | Bool_t GetSortedArray(Int_t indexes[], TClonesArray *array, Double_t rho=0) const; |
2bddb6ae | 46 | Bool_t IsJetTrack(AliEmcalJet* jet, Int_t itrack, Bool_t sorted = kTRUE) const; |
47 | Bool_t IsJetCluster(AliEmcalJet* jet, Int_t iclus, Bool_t sorted = kTRUE) const; | |
ffe32451 | 48 | Bool_t RetrieveEventObjects() ; |
a546db49 | 49 | |
50 | Float_t fJetRadius; // jet radius | |
51 | TString fJetsName; // name of jet collection | |
a487deae | 52 | TString fRhoName; // Name of rho object |
a546db49 | 53 | Float_t fPtBiasJetTrack; // select jets with a minimum pt track |
54 | Float_t fPtBiasJetClus; // select jets with a minimum pt cluster | |
55 | Float_t fJetPtCut; // cut on jet pt | |
56 | Float_t fJetAreaCut; // cut on jet area | |
a5621834 | 57 | Float_t fPercAreaCut; // cut on jet area as a percentage of average jet area |
a487deae | 58 | Float_t fAreaEmcCut; // minimum cut on jet emcal area |
59 | Float_t fJetMinEta; // minimum eta jet acceptance | |
60 | Float_t fJetMaxEta; // maximum eta jet acceptance | |
61 | Float_t fJetMinPhi; // minimum phi jet acceptance | |
62 | Float_t fJetMaxPhi; // maximum phi jet acceptance | |
411b11e0 | 63 | Float_t fMaxClusterPt; // maximum cluster constituent pt to accept the jet |
64 | Float_t fMaxTrackPt; // maximum track constituent pt to accept the jet | |
83888eef | 65 | Int_t fLeadingHadronType; // 0 = charged, 1 = neutral, 2 = both |
ca5c29fa | 66 | Int_t fNLeadingJets; // how many jets are to be considered the leading jet(s) |
a546db49 | 67 | TClonesArray *fJets; //!jets |
ca5c29fa | 68 | AliRhoParameter *fRho; //!event rho |
69 | Double_t fRhoVal; //!event rho value | |
a546db49 | 70 | |
71 | private: | |
72 | AliAnalysisTaskEmcalJet(const AliAnalysisTaskEmcalJet&); // not implemented | |
73 | AliAnalysisTaskEmcalJet &operator=(const AliAnalysisTaskEmcalJet&); // not implemented | |
74 | ||
ca5c29fa | 75 | ClassDef(AliAnalysisTaskEmcalJet, 6) // EMCAL Jet base analysis task |
a546db49 | 76 | }; |
77 | #endif |