Compatibility with ROOT trunk
[u/mrichter/AliRoot.git] / JETAN / AliFastJetHeaderV1.h
1 #ifndef ALIFASTJETHEADERV1_H
2 #define ALIFASTJETHEADERV1_H
3  
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6  
7 //---------------------------------------------------------------------
8 // FastJet v2.3.4 finder algorithm interface
9 // Finder Header Class 
10 // Author: Rafael.Diaz.Valdes@cern.ch
11 //---------------------------------------------------------------------
12  
13
14 #include "fastjet/ClusterSequenceArea.hh"
15 #include "fastjet/AreaDefinition.hh"
16 #include "fastjet/JetDefinition.hh"
17
18 #include "AliJetHeader.h"
19
20  
21 class AliFastJetHeaderV1 : public AliJetHeader
22 {
23  public:
24  
25   AliFastJetHeaderV1();
26   virtual ~AliFastJetHeaderV1() { }
27
28   // Getters
29   Double_t                     GetRparam()            const {return fRparam;}
30   fastjet::JetAlgorithm        GetAlgorithm()         const {return fAlgorithm;}
31   fastjet::JetAlgorithm        GetBGAlgorithm()       const {return fBGAlgorithm;} 
32   fastjet::Strategy            GetStrategy()          const {return fStrategy;}
33   fastjet::RecombinationScheme GetRecombScheme()      const {return fRecombScheme;}
34   Double_t                     GetGhostEtaMax()       const {return fGhostEtaMax;}
35   Double_t                     GetGhostArea()         const {return fGhostArea;}
36   Int_t                        GetActiveAreaRepeats() const {return fActiveAreaRepeats;}
37   fastjet::AreaType            GetAreaType()          const {return fAreaType;}
38   Double_t                     GetPtMin()             const {return fPtMin;}
39   Double_t                     GetRapMax()            const {return fRapMax;}
40   Double_t                     GetRapMin()            const {return fRapMin;}
41   Double_t                     GetPhiMax()            const {return fPhiMax;}
42   Double_t                     GetPhiMin()            const {return fPhiMin;}
43   // Added temporarily !!! To be removed if not necessary
44   Float_t                      GetMinCellEt()         const {return fMinCellEt;} 
45   Bool_t                       GetBGMode()            const {return fBGMode;}
46   Double_t                     GetRparamBkg()            const {return fRparamBkg;}
47   Bool_t                       Use4VectorArea()       const {return fUse4VectorArea;}  
48
49   // Setters
50   void SetRparam(Double_t f)                           {fRparam = f;}
51   void SetAlgorithm(fastjet::JetAlgorithm f)           {fAlgorithm = f;}
52   void SetBGAlgorithm(fastjet::JetAlgorithm f)         {fBGAlgorithm = f;}
53   void SetStrategy(fastjet::Strategy f)                {fStrategy = f;}
54   void SetRecombScheme(fastjet::RecombinationScheme f) {fRecombScheme = f;}
55   void SetGhostEtaMax(Double_t f)                      {fGhostEtaMax = f;}
56   void SetGhostArea(Double_t f)                        {fGhostArea = f;}
57   void SetActiveAreaRepeats(Int_t f)                   {fActiveAreaRepeats =f;}
58   void SetAreaType(fastjet::AreaType f)                {fAreaType = f;}
59   void SetRapRange(Double_t fmin, Double_t fmax)       {fRapMin = fmin; fRapMax = fmax;}
60   void SetPhiRange(Double_t fmin, Double_t fmax)       {fPhiMin = fmin; fPhiMax = fmax;}
61   void SetPtMin(Double_t ptmin)                        {fPtMin = ptmin;}
62   void SetBGMode(Bool_t bgmode)                        {fBGMode = bgmode;}
63   void SetUse4VectorArea()                             {fUse4VectorArea = kTRUE;}
64  
65   void SetComment(TString com) {fComment=com;}
66   void SetComment(const char* com) {AliJetHeader::SetComment(com);}
67   
68   void SetRparamBkg(Double_t f)                           {fRparamBkg = f;}
69
70   // others
71   void PrintParameters() const;
72
73  protected:
74
75   //fastjet::JetDefinition parameters
76   Double_t fRparam;   // R param
77   Double_t fRparamBkg;//R param for bkg calculation
78   fastjet::JetAlgorithm fAlgorithm; //fastjet::kt_algorithm
79   fastjet::JetAlgorithm fBGAlgorithm; //fastjet::kt_algorithm
80   fastjet::Strategy fStrategy;  //= fastjet::Best;
81   fastjet::RecombinationScheme fRecombScheme; // = fastjet::BIpt_scheme;
82   
83   //fastjet::GhostedAreaSpec parameters
84   Double_t fGhostEtaMax;       // Max eta for ghosts
85   Double_t fGhostArea;         // Ghost area 
86   Int_t    fActiveAreaRepeats; // Active are repetitions
87   
88   //fastjet::AreaDefinition parameters
89   fastjet::AreaType fAreaType; // area types
90   
91   //fastjet::ClusterSequenceArea options parameters
92   Double_t fPtMin; //jets with pt > ptmin
93   Float_t  fMinCellEt;       //  Min Et in one cell
94
95   //fastjet::RangeDefinition parameters 
96   Double_t fRapMax, fRapMin; // rapidity range of background sub 
97   Double_t fPhiMax, fPhiMin; // phi range of background sub
98   Bool_t   fBGMode;          // Do we subtract BG or not?
99   Bool_t   fUse4VectorArea;  // Toggle use of 4-vector area 
100
101   ClassDef(AliFastJetHeaderV1,3)
102 };
103  
104 #endif