Adding extra check for GPU_FORCE_64BIT_PTR env var
[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 /* $Id$ */
8  
9 //---------------------------------------------------------------------
10 // FastJet v2.3.4 finder algorithm interface
11 // Finder Header Class 
12 // Author: Rafael.Diaz.Valdes@cern.ch
13 //---------------------------------------------------------------------
14  
15 #ifndef __CINT__
16 # include "fastjet/AreaDefinition.hh"
17 # include "fastjet/JetDefinition.hh"
18 #else
19 namespace fastjet {
20   enum JetAlgorithm;
21   enum Strategy;
22   enum RecombinationScheme;
23   enum AreaType;
24 }
25 #endif
26 #include "AliJetHeader.h"
27
28 class AliFastJetHeaderV1 : public AliJetHeader
29 {
30  public:
31   AliFastJetHeaderV1();
32   virtual ~AliFastJetHeaderV1() { }
33
34   // Getters
35   Double_t                     GetRparam()              const                  {return fRparam;}
36   fastjet::JetAlgorithm        GetAlgorithm()           const                  {return fAlgorithm;}
37   fastjet::JetAlgorithm        GetBGAlgorithm()         const                  {return fBGAlgorithm;}
38   fastjet::Strategy            GetStrategy()            const                  {return fStrategy;}
39   fastjet::RecombinationScheme GetRecombScheme()        const                  {return fRecombScheme;}
40   Double_t                     GetGhostEtaMax()         const                  {return fGhostEtaMax;}
41   Double_t                     GetGhostArea()           const                  {return fGhostArea;}
42   Int_t                        GetActiveAreaRepeats()   const                  {return fActiveAreaRepeats;}
43   fastjet::AreaType            GetAreaType()            const                  {return fAreaType;}
44   Double_t                     GetPtMin()               const                  {return fPtMin;}
45   Double_t                     GetRapMax()              const                  {return fRapMax;}
46   Double_t                     GetRapMin()              const                  {return fRapMin;}
47   Double_t                     GetPhiMax()              const                  {return fPhiMax;}
48   Double_t                     GetPhiMin()              const                  {return fPhiMin;}
49   Bool_t                       GetBGMode()              const                  {return fBGMode;}
50   Double_t                     GetRparamBkg()           const                  {return fRparamBkg;}
51   Bool_t                       Use4VectorArea()         const                  {return fUse4VectorArea;}
52   Bool_t                       GetBkgFastJetb()         const                  {return fkBkgFastJetb;}   
53   Bool_t                       GetBkgFastJetWoHardest() const                  {return fktBkgFastJetWoHardest;}
54   // Setters
55   void                         SetRparam(Double_t f)                           {fRparam = f;}
56   void                         SetAlgorithm(fastjet::JetAlgorithm f)           {fAlgorithm = f;}
57   void                         SetBGAlgorithm(fastjet::JetAlgorithm f)         {fBGAlgorithm = f;}
58   void                         SetStrategy(fastjet::Strategy f)                {fStrategy = f;}
59   void                         SetRecombScheme(fastjet::RecombinationScheme f) {fRecombScheme = f;}
60   void                         SetGhostEtaMax(Double_t f)                      {fGhostEtaMax = f;}
61   void                         SetGhostArea(Double_t f)                        {fGhostArea = f;}
62   void                         SetActiveAreaRepeats(Int_t f)                   {fActiveAreaRepeats =f;}
63   void                         SetAreaType(fastjet::AreaType f)                {fAreaType = f;}
64   void                         SetRapRange(Double_t fmin, Double_t fmax)       {fRapMin = fmin; fRapMax = fmax;}
65   void                         SetPhiRange(Double_t fmin, Double_t fmax)       {fPhiMin = fmin; fPhiMax = fmax;}
66   void                         SetPtMin(Double_t ptmin)                        {fPtMin = ptmin;}
67   void                         SetBGMode(Bool_t bgmode)                        {fBGMode = bgmode;}
68   void                         SetUse4VectorArea()                             {fUse4VectorArea = kTRUE;}
69   void                         SetComment(TString com)                         {fComment=com;}
70   void                         SetComment(const char* com)                     {AliJetHeader::SetComment(com);}
71   void                         SetRparamBkg(Double_t f)                        {fRparamBkg = f;}
72   void                         SetBkgFastJetb(Bool_t f = 1)                    {fkBkgFastJetb = f;}     
73   void                         SetBkgFastJetWoHardest(Bool_t f = 1)            {fktBkgFastJetWoHardest = f;}
74   // others
75   void                         PrintParameters() const;
76
77  protected:
78   //fastjet::JetDefinition parameters
79   Double_t                     fRparam;                // R param
80   Double_t                     fRparamBkg;             // R param for bkg calculation
81   fastjet::JetAlgorithm        fAlgorithm;             // fastjet::kt_algorithm
82   fastjet::JetAlgorithm        fBGAlgorithm;           // fastjet::kt_algorithm
83   fastjet::Strategy            fStrategy;              // fastjet::Best;
84   fastjet::RecombinationScheme fRecombScheme;          // fastjet::BIpt_scheme;
85   
86   //fastjet::GhostedAreaSpec parameters
87   Double_t                     fGhostEtaMax;           // Max eta for ghosts
88   Double_t                     fGhostArea;             // Ghost area 
89   Int_t                        fActiveAreaRepeats;     // Active are repetitions
90   
91   //fastjet::AreaDefinition parameters
92   fastjet::AreaType            fAreaType;              // area types
93   
94   //fastjet::ClusterSequenceArea options parameters
95   Double_t                     fPtMin;                 // jets with pt > ptmin
96   Float_t                      fMinCellEt;             // Min Et in one cell
97
98   //fastjet::RangeDefinition parameters 
99   Double_t                     fRapMax, fRapMin;       // rapidity range of background sub 
100   Double_t                     fPhiMax, fPhiMin;       // phi range of background sub
101   Bool_t                       fUse4VectorArea;        // Toggle use of 4-vector area
102   
103   //background methods flags
104   Bool_t                       fkBkgFastJetb;          // Toggle background estimation using AliFastJetBkg::BkgFastJetb()
105   Bool_t                       fktBkgFastJetWoHardest; // Toggle background estimation using AliFastJetBkg::BkgFastJetWoHardest()  
106  
107   ClassDef(AliFastJetHeaderV1,4)                       // Fastjet header class
108 };
109  
110 #endif