Ensure vacuum inside the beam pipe for upgrade (Mario)
[u/mrichter/AliRoot.git] / JETAN / AliJetBkg.h
CommitLineData
50c7d9f7 1#ifndef ALIJETBKG_H
2#define ALIJETBKG_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
139cbd96 6
7/* $Id$ */
8
9//--------------------------------------------------
10// Method implementation for background studies and background subtraction with UA1 algorithms
11//
12// Author: magali.estienne@subatech.in2p3.fr
13//-------------------------------------------------
14
15class TH1F;
16class TH2F;
17class TList;
18class AliAODJetEventBackground;
50c7d9f7 19
20class AliJetBkg : public TObject
21{
22 public:
139cbd96 23 AliJetBkg();
24 AliJetBkg(const AliJetBkg &input);
25 ~AliJetBkg();
26 AliJetBkg& operator=(const AliJetBkg& source);
27 void SetHeader(AliJetHeader *header) {fHeader=header;}
28 void SetCalTrkEvent(AliJetCalTrkEvent *evt) {fEvent=evt;}
29 Bool_t PtCutPass(Int_t id, Int_t nTracks);
30 Bool_t SignalCutPass(Int_t id, Int_t nTracks);
28ab787b 31 Float_t CalcJetAreaEtaCut(Float_t radius, Float_t etaJet);
32 void CalcJetAndBckgAreaEtaCut(Bool_t calcOutsideArea, Float_t rc, Int_t nJ, const Float_t* etaJet, Float_t* &areaJet, Float_t &areaOut);
139cbd96 33
34 void SubtractBackg(const Int_t& nIn, const Int_t&nJ, Float_t&EtbgTotalN, Float_t&sigmaN,
35 const Float_t* ptT, const Float_t* etaT, const Float_t* phiT,
36 Float_t* etJet, const Float_t* etaJet, const Float_t* phiJet,
37 Float_t* etsigJet, Int_t* multJetT, Int_t* multJetC, Int_t* multJet,
38 Int_t* injet, Float_t* &areaJet);
39
40 void SubtractBackgCone(const Int_t& nIn, const Int_t&nJ,Float_t& EtbgTotalN, Float_t&sigmaN,
41 const Float_t* ptT, const Float_t* etaT, const Float_t* phiT, Float_t* etJet,
42 const Float_t* etaJet, const Float_t* phiJet, Float_t* etsigJet,
43 Int_t* multJetT, Int_t* multJetC, Int_t* multJet, Int_t* injet, Float_t* &/*areaJet*/);
44
45 void SubtractBackgRatio(const Int_t& nIn, const Int_t&nJ,Float_t& EtbgTotalN, Float_t&sigmaN,
46 const Float_t* ptT, const Float_t* etaT, const Float_t* phiT, Float_t* etJet,
47 const Float_t* etaJet, const Float_t* phiJet, Float_t* etsigJet,
48 Int_t* multJetT, Int_t* multJetC, Int_t* multJet, Int_t* injet, Float_t* &/*areaJet*/);
49
50 void SubtractBackgStat(const Int_t& nIn, const Int_t&nJ,Float_t&EtbgTotalN, Float_t&sigmaN,
51 const Float_t* ptT, const Float_t* etaT, const Float_t* phiT, Float_t* etJet,
52 const Float_t* etaJet, const Float_t* phiJet, Float_t* etsigJet,
53 Int_t* multJetT, Int_t* multJetC, Int_t* multJet, Int_t* injet, Float_t* &areaJet);
54 void SetDebug(Int_t debug){fDebug = debug;}
55
56 enum {kMaxJets = 60};
57
50c7d9f7 58 private:
139cbd96 59 // Double_t CalcRho(vector<fastjet::PseudoJet> input_particles,Double_t RparamBkg,TString method);
60
61 AliJetCalTrkEvent* fEvent; //! reader
62 AliJetHeader* fHeader; //! header
63 Int_t fDebug; // Debug option
64
65 // temporary histos for background, reset for each event, no need to stream
66 TH1F* fhEtJet[kMaxJets]; //! histogram for background subtraction
67 TH1F* fhAreaJet[kMaxJets]; //! histogram for background subtraction (store global not to create it with every event
68 TH1F* fhEtBackg; //! histogram for background subtraction
69 TH1F* fhAreaBackg; //! histogram for background subtraction
70
71 ClassDef(AliJetBkg, 2) // background jet analysis
72
50c7d9f7 73};
74
75#endif