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

/* $Id$ */

//---------------------------------------------------------------------
// Class to calculate the background per unit area
// manages the search for jets 
// Authors: Elena Bruna elena.bruna@yale.edu
//          Sevil Salur ssalur@lbl.gov
//  
// 2011 :
// renamed from AliJetBkg to AliFastJetBkg as this class uses only FASTJET based algos        
//---------------------------------------------------------------------
#ifdef __CINT__
namespace fastjet {
  class PsuedoJet;
}
#endif
class TString;
class AliFastJetInput;

class AliFastJetBkg : public TObject
{
 public:
  AliFastJetBkg();
  AliFastJetBkg(const AliFastJetBkg &input);
  AliFastJetBkg& operator=(const AliFastJetBkg& source);
  virtual          ~AliFastJetBkg() {;}
  void             SetHeader(AliJetHeader *header)  {fHeader=header;}
  void             SetFastJetInput(AliFastJetInput *fjinput)  {fInputFJ=fjinput;}
  void             BkgFastJetb(Double_t& x,Double_t& y, Double_t& z);
  void             BkgFastJetWoHardest(Double_t& x,Double_t& y, Double_t& z);
  Float_t          BkgFastJet();
  Float_t          BkgChargedFastJet();
  Float_t          BkgStat();
  Float_t          BkgFastJetCone(TClonesArray* fAODJets);

  Bool_t           EmcalAcceptance(Float_t eta, Float_t phi, Float_t radius) const;
  static Double_t  BkgFunction(Double_t *x,Double_t *par);
    
 private:
  Double_t         CalcRho(vector<fastjet::PseudoJet> input_particles,Double_t RparamBkg,TString method);
  void             CalcRhob(Double_t& median, Double_t& sigma, Double_t& meanarea,
			    vector<fastjet::PseudoJet> input_particles,Double_t RparamBkg,TString method);
  void             CalcRhoWoHardest(Double_t& median, Double_t& sigma, Double_t& meanarea,
				    vector<fastjet::PseudoJet> input_particles,Double_t RparamBkg,TString method);

  AliJetHeader*    fHeader;  //! header
  AliFastJetInput* fInputFJ; //! input particles

  ClassDef(AliFastJetBkg, 2)   //  Fastjet backgroud analysis
 
};
 
#endif
 AliFastJetBkg.h:1
 AliFastJetBkg.h:2
 AliFastJetBkg.h:3
 AliFastJetBkg.h:4
 AliFastJetBkg.h:5
 AliFastJetBkg.h:6
 AliFastJetBkg.h:7
 AliFastJetBkg.h:8
 AliFastJetBkg.h:9
 AliFastJetBkg.h:10
 AliFastJetBkg.h:11
 AliFastJetBkg.h:12
 AliFastJetBkg.h:13
 AliFastJetBkg.h:14
 AliFastJetBkg.h:15
 AliFastJetBkg.h:16
 AliFastJetBkg.h:17
 AliFastJetBkg.h:18
 AliFastJetBkg.h:19
 AliFastJetBkg.h:20
 AliFastJetBkg.h:21
 AliFastJetBkg.h:22
 AliFastJetBkg.h:23
 AliFastJetBkg.h:24
 AliFastJetBkg.h:25
 AliFastJetBkg.h:26
 AliFastJetBkg.h:27
 AliFastJetBkg.h:28
 AliFastJetBkg.h:29
 AliFastJetBkg.h:30
 AliFastJetBkg.h:31
 AliFastJetBkg.h:32
 AliFastJetBkg.h:33
 AliFastJetBkg.h:34
 AliFastJetBkg.h:35
 AliFastJetBkg.h:36
 AliFastJetBkg.h:37
 AliFastJetBkg.h:38
 AliFastJetBkg.h:39
 AliFastJetBkg.h:40
 AliFastJetBkg.h:41
 AliFastJetBkg.h:42
 AliFastJetBkg.h:43
 AliFastJetBkg.h:44
 AliFastJetBkg.h:45
 AliFastJetBkg.h:46
 AliFastJetBkg.h:47
 AliFastJetBkg.h:48
 AliFastJetBkg.h:49
 AliFastJetBkg.h:50
 AliFastJetBkg.h:51
 AliFastJetBkg.h:52
 AliFastJetBkg.h:53
 AliFastJetBkg.h:54
 AliFastJetBkg.h:55
 AliFastJetBkg.h:56
 AliFastJetBkg.h:57
 AliFastJetBkg.h:58
 AliFastJetBkg.h:59