1 #ifndef ALIANALYSISTASKEMCALJETDEV_H
2 #define ALIANALYSISTASKEMCALJETDEV_H
10 class AliRhoParameter;
13 class AliJetContainer;
15 #include "AliAnalysisTaskEmcalDev.h"
17 class AliAnalysisTaskEmcalJetDev : public AliAnalysisTaskEmcalDev {
19 AliAnalysisTaskEmcalJetDev();
20 AliAnalysisTaskEmcalJetDev(const char *name, Bool_t histo=kFALSE);
21 virtual ~AliAnalysisTaskEmcalJetDev();
23 //these should all point to the jet container
24 void SetAnaType(UInt_t t, Int_t c = 0);
25 void SetJetAcceptanceType(TString cutType, Int_t c = 0);
26 void SetJetEtaLimits(Float_t min, Float_t max, Int_t c = 0);
27 void SetJetPhiLimits(Float_t min, Float_t max, Int_t c = 0);
28 void SetJetAreaCut(Float_t cut, Int_t c = 0);
29 void SetPercAreaCut(Float_t p, Int_t c = 0);
30 void SetAreaEmcCut(Double_t a = 0.99, Int_t c = 0);
31 void SetJetPtCut(Float_t cut, Int_t c = 0);
32 void SetJetRadius(Float_t r, Int_t c = 0);
33 void SetMaxClusterPt(Float_t b, Int_t c = 0);
34 void SetMaxTrackPt(Float_t b, Int_t c = 0);
35 void SetPtBiasJetClus(Float_t b, Int_t c = 0);
36 void SetPtBiasJetTrack(Float_t b, Int_t c = 0);
37 void SetLeadingHadronType(Int_t t, Int_t c = 0);
38 void SetNLeadingJets(Int_t t, Int_t c = 0);
39 void SetJetBitMap(UInt_t m, Int_t c = 0);
40 void SetJetTrigger(UInt_t t, Int_t c = 0);
42 void SetJetsName(const char *n) { AddJetContainer(n); }
43 virtual void SetRhoName(const char *n, Int_t c = 0);
45 AliJetContainer *AddJetContainer(const char *n, TString defaultCutType = "", Float_t jetRadius = 0.4);
46 void RemoveJetContainer(Int_t i) { fJetCollArray.RemoveAt(i);}
49 Float_t* GenerateFixedBinArray(Int_t n, Float_t min, Float_t max) const;
50 virtual Bool_t AcceptJet(AliEmcalJet* jet, Int_t c =0);
51 Bool_t AcceptBiasJet(AliEmcalJet* jet, Int_t c =0);
52 Double_t GetLeadingHadronPt(AliEmcalJet* jet, Int_t c =0);
55 AliRhoParameter *GetRhoFromEvent(const char *name) ;
56 Bool_t IsJetTrack(AliEmcalJet* jet, Int_t itrack, Bool_t sorted = kFALSE) const;
57 Bool_t IsJetCluster(AliEmcalJet* jet, Int_t iclus, Bool_t sorted = kFALSE) const;
58 Bool_t RetrieveEventObjects() ;
59 AliJetContainer *GetJetContainer(Int_t i=0) const;
60 AliJetContainer *GetJetContainer(const char* name) const;
61 TClonesArray *GetJetArray(Int_t i=0) const;
62 AliEmcalJet *GetJetFromArray(Int_t j, Int_t c=0) const;
63 AliEmcalJet *GetAcceptJetFromArray(Int_t j, Int_t c=0) const;
64 Int_t GetNJets(Int_t i=0) const;
65 Double_t GetRhoVal(Int_t i=0) const;
67 TString fRhoName; // rho name
68 TObjArray fJetCollArray; // jet collection array
70 TClonesArray *fJets; //!jets
71 AliRhoParameter *fRho; //!event rho
72 Double_t fRhoVal; //!event rho value
75 AliAnalysisTaskEmcalJetDev(const AliAnalysisTaskEmcalJetDev&); // not implemented
76 AliAnalysisTaskEmcalJetDev &operator=(const AliAnalysisTaskEmcalJetDev&); // not implemented
78 ClassDef(AliAnalysisTaskEmcalJetDev, 2) // EMCAL Jet base analysis task