]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGGA/EMCALJetTasks/AliAnalysisTaskEmcalJet.h
coverty
[u/mrichter/AliRoot.git] / PWGGA / EMCALJetTasks / AliAnalysisTaskEmcalJet.h
1 #ifndef ALIANALYSISTASKEMCALJET_H
2 #define ALIANALYSISTASKEMCALJET_H
3
4 // $Id$
5
6 class TClonesArray;
7 class TString;
8 class TList;
9 class AliVParticle;
10 class AliVCluster;
11 class AliEmcalJet;
12
13 #include "AliAnalysisTaskEmcal.h"
14
15 class AliAnalysisTaskEmcalJet : public AliAnalysisTaskEmcal {
16  public:
17
18   AliAnalysisTaskEmcalJet();
19   AliAnalysisTaskEmcalJet(const char *name);
20   AliAnalysisTaskEmcalJet(const char *name, Bool_t histo); 
21   virtual ~AliAnalysisTaskEmcalJet();
22
23   virtual void                UserExec(Option_t *option);
24   virtual void                Init();
25
26   void                        SetEtaLimits(Float_t min, Float_t max)               { fMinEta = min, fMaxEta = max ; }
27   void                        SetInitialized(Bool_t ini = kTRUE)                   { fInitialized    = ini        ; }
28   void                        SetJetAreaCut(Float_t cut)                           { fJetAreaCut     = cut        ; }
29   void                        SetJetPtCut(Float_t cut)                             { fJetPtCut       = cut        ; }
30   void                        SetJetRadius(Float_t r)                              { fJetRadius      = r          ; } 
31   void                        SetJetsName(const char *n)                           { fJetsName       = n          ; }
32   void                        SetMaxClusterPt(Float_t b)                           { fMaxClusterPt  = b           ; }
33   void                        SetMaxTrackPt(Float_t b)                             { fMaxTrackPt = b              ; }
34   void                        SetPhiLimits(Float_t min, Float_t max)               { fMinPhi = min, fMaxPhi = max ; }
35   void                        SetPtBiasJetClus(Float_t b)                          { fPtBiasJetClus  = b          ; }
36   void                        SetPtBiasJetTrack(Float_t b)                         { fPtBiasJetTrack = b          ; }
37  
38  protected:
39
40   Bool_t                      AcceptJet(AliEmcalJet* jet, Bool_t bias = kTRUE, Bool_t upCut = kTRUE)  const;
41   Bool_t                      IsJetTrack(AliEmcalJet* jet, Int_t itrack, Bool_t sorted = kTRUE)       const;
42   Bool_t                      IsJetCluster(AliEmcalJet* jet, Int_t iclus, Bool_t sorted = kTRUE)      const;
43
44   virtual Bool_t              RetrieveEventObjects();
45
46   Float_t                     fJetRadius;                  // jet radius
47   TString                     fJetsName;                   // name of jet collection
48   Float_t                     fPtBiasJetTrack;             // select jets with a minimum pt track
49   Float_t                     fPtBiasJetClus;              // select jets with a minimum pt cluster
50   Float_t                     fJetPtCut;                   // cut on jet pt
51   Float_t                     fJetAreaCut;                 // cut on jet area
52   Float_t                     fMinEta;                     // minimum eta jet acceptance
53   Float_t                     fMaxEta;                     // maximum eta jet acceptance
54   Float_t                     fMinPhi;                     // minimum phi jet acceptance
55   Float_t                     fMaxPhi;                     // maximum phi jet acceptance  
56   Float_t                     fMaxClusterPt;               // maximum cluster constituent pt to accept the jet
57   Float_t                     fMaxTrackPt;                 // maximum track constituent pt to accept the jet
58   TClonesArray               *fJets;                       //!jets
59
60  private:
61   AliAnalysisTaskEmcalJet(const AliAnalysisTaskEmcalJet&);            // not implemented
62   AliAnalysisTaskEmcalJet &operator=(const AliAnalysisTaskEmcalJet&); // not implemented
63
64   ClassDef(AliAnalysisTaskEmcalJet, 2) // EMCAL Jet base analysis task
65 };
66 #endif