]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGJE/EMCALJetTasks/AliEmcalJetFinder.h
remove unneccassary TStopWatch
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / AliEmcalJetFinder.h
1 #ifndef ALIEMCALJETFINDER_H
2 #define ALIEMCALJETFINDER_H
3
4 // $Id$
5
6 namespace fastjet {
7   class PseudoJet;
8 }
9
10 class AliEmcalJet;
11 class AliFJWrapper;
12 class TNamed;
13 class TH1;
14
15 class AliEmcalJetFinder : public TNamed
16 {
17   public:
18     AliEmcalJetFinder();
19     AliEmcalJetFinder(const char* name);
20     ~AliEmcalJetFinder();
21     
22     Bool_t                        FindJets();
23     void                          AddInputVector(Double_t px, Double_t py, Double_t pz);
24     void                          AddInputVector(Double_t px, Double_t py, Double_t pz, Double_t E);
25     void                          FillPtHistogram(TH1* histogram);
26     void                          FillEtaHistogram(TH1* histogram);
27     void                          FillPhiHistogram(TH1* histogram);
28
29     Int_t                         GetJets(AliEmcalJet*& jets)     {jets = fJetArray[0]; return fJetCount;}
30     AliEmcalJet*                  GetJet(Int_t index)             {return fJetArray[index];}
31     Int_t                         GetNumberOfJets()               {return fJetCount;}
32     void                          SetGhostArea(Double_t val)      {fGhostArea = val;}
33     void                          SetRadius(Double_t val)         {fRadius = val;}
34     void                          SetJetAlgorithm(Int_t val)      {fJetAlgorithm = val;}
35     void                          SetRecombSheme(Int_t val)       {fRecombScheme = val;}
36     void                          SetTrackMaxEta(Double_t val)    {fTrackMaxEta = val;}
37     void                          SetJetMaxEta(Double_t val)      {fJetMaxEta = val;}
38     void                          SetJetMinPt(Double_t val)       {fJetMinPt = val;}
39     void                          SetJetMinArea(Double_t val)     {fJetMinArea = val;}
40
41     void                          SetManualIndex(Int_t val)       {fInputVectorIndex = val;}
42   private:
43     // General properties
44     AliFJWrapper*                 fFastjetWrapper;                // Interface object to fastjet
45     Int_t                         fInputVectorIndex;              // Current index of input vectors (by default: count of vectors)
46     Int_t                         fJetCount;                      // Found jets within the given acceptances
47     std::vector<AliEmcalJet*>     fJetArray;                      // Internal array for the jets
48     // Settings for fastjet
49     Double_t                      fGhostArea;                     // setting for ghost area in FJ
50     Double_t                      fRadius;                        // Radius parameter
51     Int_t                         fJetAlgorithm;                  // var for algorithm (0=antikt, 1=kt)
52     Int_t                         fRecombScheme;                  // Recombination scheme for Fastjet
53     Double_t                      fTrackMaxEta;                   // cut for |track-eta| < fTrackMaxEta
54     // Jet cuts
55     Double_t                      fJetMaxEta;                     // cut for |jet-eta| < fJetMaxEta
56     Double_t                      fJetMinPt;                      // cut for  jet-pT > fJetMinPt
57     Double_t                      fJetMinArea;                    // cut for  jet-area > fJetMinArea 
58
59     ClassDef(AliEmcalJetFinder, 1); // Lightweight fastjet implementation outside analysis tasks
60 };
61
62 #endif