ROOT logo
#ifndef ALISISCONEJETHEADER_H
#define ALISISCONEJETHEADER_H
 
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

/* $Id$ */
 
//---------------------------------------------------------------------
// SISCone (FastJet v2.3.4) finder algorithm interface
// Finder Header Class 
// Author: swensy.jangal@ires.in2p3.fr
//---------------------------------------------------------------------
#ifndef __CINT__ 
#include "fastjet/JetDefinition.hh"
#else
namespace fastjet {
  class Strategy;
  class RecombinationScheme;
}
#endif
#include "AliJetHeader.h"
 
class AliSISConeJetHeader : public AliJetHeader
{
 public:
 
  AliSISConeJetHeader();
  virtual ~AliSISConeJetHeader() { }

  // Getters
  Bool_t                       GetBGMode()                     const           {return fBGMode;}
  Int_t                        GetActiveAreaRepeats()          const           {return fActiveAreaRepeats;}
  Int_t                        GetAreaTypeNumber()             const           {return fAreaTypeNumber;}
  Int_t                        GetBGAlgorithm()                const           {return fBGAlgo;}        
  Int_t                        GetNPassMax()                   const           {return fNPassMax;}
  Int_t                        GetSplitMergeScale()            const           {return fSplitMergeScaleNumber;}
  Double_t                     GetGhostEtaMax()                const           {return fGhostEtaMax;}
  Double_t                     GetGhostArea()                  const           {return fGhostArea;}
  Double_t                     GetEffectiveRFact()             const           {return fEffectiveRFact;}
  Double_t                     GetRapMax()                     const           {return fRapMax;}
  Double_t                     GetRapMin()                     const           {return fRapMin;}
  Double_t                     GetPhiMax()                     const           {return fPhiMax;}
  Double_t                     GetPhiMin()                     const           {return fPhiMin;}
  Double_t                     GetConeRadius()                 const           {return fConeRadius;}
  Double_t                     GetOverlapThreshold()           const           {return fOverlapThreshold;}
  Double_t                     GetPtProtojetMin()              const           {return fPtProtoJetMin;}
  Double_t                     GetRForRho()                    const           {return fRRho;}
  Double_t                     GetCaching()                    const           {return fCaching;}
  Double_t                     GetSplitMergeStoppingScale()    const           {return fSplitMergeStoppingScale;}
  Double_t                     GetMinJetPt()                   const           {return fMinJetPt;}  
  Double_t                     GetGridScatter()                const           {return fGridScatter;}
  Double_t                     GetKtScatter()                  const           {return fKtScatter;}
  Double_t                     GetMeanGhostKt()                const           {return fMeanGhostKt;}

  // Setters
  void                         SetBGAlgorithm(Int_t value)                     {fBGAlgo = value;}
  void                         SetBGMode(Bool_t value)                         {fBGMode = value;}
  void                         SetCaching(Bool_t value)                        {fCaching = value;}
  void                         SetComment(TString com)                         {fComment=com;}
  void                         SetComment(const char* com)                     {AliJetHeader::SetComment(com);}
  void                         SetGhostEtaMax(Double_t f)                      {fGhostEtaMax = f;}
  void                         SetGhostArea(Double_t f)                        {fGhostArea = f;}
  void                         SetActiveAreaRepeats(Int_t f)                   {fActiveAreaRepeats =f;}
  void                         SetAreaTypeNumber(Int_t f)                      {fAreaTypeNumber = f;}
  void                         SetEffectiveRFact(Double_t value)               {fEffectiveRFact = value;}       
  void                         SetConeRadius(Double_t value)                   {fConeRadius = value;}
  void                         SetMinJetPt(Double_t value)                     {fMinJetPt = value;}
  void                         SetNPassMax(Int_t value)                        {fNPassMax = value;}
  void                         SetOverlapThreshold(Double_t value)             {fOverlapThreshold = value;}
  void                         SetPhiRange(Double_t fmin, Double_t fmax)       {fPhiMin = fmin; fPhiMax = fmax;}
  void                         SetPtProtojetMin(Double_t value)                {fPtProtoJetMin = value;}
  void                         SetRapRange(Double_t fmin, Double_t fmax)       {fRapMin = fmin; fRapMax = fmax;}
  void                         SetRForRho(Double_t value)                      {fRRho = value;}
  void                         SetSplitMergeScale(Int_t value)                 {fSplitMergeScaleNumber = value;}
  void                         SetSplitMergeStoppingScale(Double_t value)      {fSplitMergeStoppingScale = value;}	  
  void                         SetGridScatter(Double_t value)                  {fGridScatter = value;}
  void                         SetKtScatter(Double_t value)                    {fKtScatter = value;}
  void                         SetMeanGhostKt(Double_t value)                  {fMeanGhostKt = value;}

  // Added for background stuff
  fastjet::Strategy            GetStrategy() const                             {return fStrategy;}
  fastjet::RecombinationScheme GetRecombScheme() const                         {return fRecombScheme;}
  Double_t                     GetRparamBkg() const                            {return fRparamBkg;}
  Bool_t                       Use4VectorArea() const                          {return fkUse4VectorArea;}

  void                         SetUse4VectorArea()                             {fkUse4VectorArea = kTRUE;}
  void                         SetStrategy(fastjet::Strategy f)                {fStrategy = f;}
  void                         SetRecombScheme(fastjet::RecombinationScheme f) {fRecombScheme = f;}
  void                         SetRparamBkg(Double_t f)                        {fRparamBkg = f;}

  // others
  void                         PrintParameters() const;

 protected:


  Int_t    fActiveAreaRepeats;                // How many times do you want to caculate active areas?
  Int_t    fAreaTypeNumber;                   // Kind of area
  Int_t    fBGAlgo;                           // Algorithm for rho calculus
  Bool_t   fCaching;                          // Do we record found cones for this set of data?
  Double_t fConeRadius;                       // Cone radius
  Double_t fEffectiveRFact;                   // Radius for Voronoi diagram
  Double_t fGhostEtaMax;                      // Maximum eta in which a ghost can be generated
  Double_t fGhostArea;                        // Area of one ghost
  Double_t fGridScatter;                      // fractional random fluctuations of the position of the ghosts on the y-phi grid
  Double_t fKtScatter;                        // fractional random fluctuations of the tranverse momentum of the ghosts on the y-phi grid
  Double_t fMeanGhostKt;                      // average transverse momentum of the ghosts.
  Double_t fMinJetPt;                         // Jet minimum energy
  Int_t    fNPassMax;                         // maximum number of passes
  Double_t fOverlapThreshold;                 // overlap parameter
  Double_t fPhiMax, fPhiMin;                  // Phi range
  Double_t fPtProtoJetMin;                    // pT min of protojets
  Double_t fRapMax, fRapMin;                  // Eta range
  Double_t fRRho;                             // Radius to determine rho
  Int_t    fSplitMergeScaleNumber;            // Kind of recombination in split/merge procedure, there's only one
  Double_t fSplitMergeStoppingScale;          // Stopping scale for split/merge procedure in case of area calculus

  // Added for background
  Double_t fRparamBkg;                        //R param for bkg calculation
  fastjet::Strategy fStrategy;                // fastjet::Best;
  fastjet::RecombinationScheme fRecombScheme; // fastjet::BIpt_scheme;
  Bool_t   fkUse4VectorArea;                  // Toggle use of 4-vector area

  ClassDef(AliSISConeJetHeader,5)             // SISCONE header class
};
 
#endif
 AliSISConeJetHeader.h:1
 AliSISConeJetHeader.h:2
 AliSISConeJetHeader.h:3
 AliSISConeJetHeader.h:4
 AliSISConeJetHeader.h:5
 AliSISConeJetHeader.h:6
 AliSISConeJetHeader.h:7
 AliSISConeJetHeader.h:8
 AliSISConeJetHeader.h:9
 AliSISConeJetHeader.h:10
 AliSISConeJetHeader.h:11
 AliSISConeJetHeader.h:12
 AliSISConeJetHeader.h:13
 AliSISConeJetHeader.h:14
 AliSISConeJetHeader.h:15
 AliSISConeJetHeader.h:16
 AliSISConeJetHeader.h:17
 AliSISConeJetHeader.h:18
 AliSISConeJetHeader.h:19
 AliSISConeJetHeader.h:20
 AliSISConeJetHeader.h:21
 AliSISConeJetHeader.h:22
 AliSISConeJetHeader.h:23
 AliSISConeJetHeader.h:24
 AliSISConeJetHeader.h:25
 AliSISConeJetHeader.h:26
 AliSISConeJetHeader.h:27
 AliSISConeJetHeader.h:28
 AliSISConeJetHeader.h:29
 AliSISConeJetHeader.h:30
 AliSISConeJetHeader.h:31
 AliSISConeJetHeader.h:32
 AliSISConeJetHeader.h:33
 AliSISConeJetHeader.h:34
 AliSISConeJetHeader.h:35
 AliSISConeJetHeader.h:36
 AliSISConeJetHeader.h:37
 AliSISConeJetHeader.h:38
 AliSISConeJetHeader.h:39
 AliSISConeJetHeader.h:40
 AliSISConeJetHeader.h:41
 AliSISConeJetHeader.h:42
 AliSISConeJetHeader.h:43
 AliSISConeJetHeader.h:44
 AliSISConeJetHeader.h:45
 AliSISConeJetHeader.h:46
 AliSISConeJetHeader.h:47
 AliSISConeJetHeader.h:48
 AliSISConeJetHeader.h:49
 AliSISConeJetHeader.h:50
 AliSISConeJetHeader.h:51
 AliSISConeJetHeader.h:52
 AliSISConeJetHeader.h:53
 AliSISConeJetHeader.h:54
 AliSISConeJetHeader.h:55
 AliSISConeJetHeader.h:56
 AliSISConeJetHeader.h:57
 AliSISConeJetHeader.h:58
 AliSISConeJetHeader.h:59
 AliSISConeJetHeader.h:60
 AliSISConeJetHeader.h:61
 AliSISConeJetHeader.h:62
 AliSISConeJetHeader.h:63
 AliSISConeJetHeader.h:64
 AliSISConeJetHeader.h:65
 AliSISConeJetHeader.h:66
 AliSISConeJetHeader.h:67
 AliSISConeJetHeader.h:68
 AliSISConeJetHeader.h:69
 AliSISConeJetHeader.h:70
 AliSISConeJetHeader.h:71
 AliSISConeJetHeader.h:72
 AliSISConeJetHeader.h:73
 AliSISConeJetHeader.h:74
 AliSISConeJetHeader.h:75
 AliSISConeJetHeader.h:76
 AliSISConeJetHeader.h:77
 AliSISConeJetHeader.h:78
 AliSISConeJetHeader.h:79
 AliSISConeJetHeader.h:80
 AliSISConeJetHeader.h:81
 AliSISConeJetHeader.h:82
 AliSISConeJetHeader.h:83
 AliSISConeJetHeader.h:84
 AliSISConeJetHeader.h:85
 AliSISConeJetHeader.h:86
 AliSISConeJetHeader.h:87
 AliSISConeJetHeader.h:88
 AliSISConeJetHeader.h:89
 AliSISConeJetHeader.h:90
 AliSISConeJetHeader.h:91
 AliSISConeJetHeader.h:92
 AliSISConeJetHeader.h:93
 AliSISConeJetHeader.h:94
 AliSISConeJetHeader.h:95
 AliSISConeJetHeader.h:96
 AliSISConeJetHeader.h:97
 AliSISConeJetHeader.h:98
 AliSISConeJetHeader.h:99
 AliSISConeJetHeader.h:100
 AliSISConeJetHeader.h:101
 AliSISConeJetHeader.h:102
 AliSISConeJetHeader.h:103
 AliSISConeJetHeader.h:104
 AliSISConeJetHeader.h:105
 AliSISConeJetHeader.h:106
 AliSISConeJetHeader.h:107
 AliSISConeJetHeader.h:108
 AliSISConeJetHeader.h:109
 AliSISConeJetHeader.h:110
 AliSISConeJetHeader.h:111
 AliSISConeJetHeader.h:112
 AliSISConeJetHeader.h:113
 AliSISConeJetHeader.h:114
 AliSISConeJetHeader.h:115
 AliSISConeJetHeader.h:116
 AliSISConeJetHeader.h:117
 AliSISConeJetHeader.h:118
 AliSISConeJetHeader.h:119
 AliSISConeJetHeader.h:120
 AliSISConeJetHeader.h:121
 AliSISConeJetHeader.h:122
 AliSISConeJetHeader.h:123
 AliSISConeJetHeader.h:124
 AliSISConeJetHeader.h:125
 AliSISConeJetHeader.h:126
 AliSISConeJetHeader.h:127
 AliSISConeJetHeader.h:128