ATLAS Offline Software
IFakeBkgTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef IFAKE_BKG_TOOL_H
6 #define IFAKE_BKG_TOOL_H
7 
11 
12 #include <string>
13 
14 class TDirectory;
15 class TH1;
16 class TH2;
17 class TH3;
18 
19 namespace CP
20 {
21 
22 class IFakeBkgSystDescriptor;
23 
26 class IFakeBkgTool : virtual public CP::ISystematicsTool
27 {
28  public:
29 
33  static constexpr const char* defaultSelection() { return "0!T"; }
34 
38  static constexpr const char* defaultProcess() { return ">=1F[T]"; }
39 
42  virtual StatusCode addEvent(const xAOD::IParticleContainer& particles, float extraWeight = 1.f) = 0;
43 
46  virtual StatusCode addEvent(const ConstDataVector<xAOD::IParticleContainer>& particles, float extraWeight = 1.f) = 0;
47 
51  virtual StatusCode getTotalYield(float& yield, float& statErrorUp, float& statErrorDown) = 0;
52 
56  virtual StatusCode register1DHistogram(TH1* h1, const float *val) = 0;
57 
61  virtual StatusCode register2DHistogram(TH2* h2, const float *xval, const float *yval) = 0;
62 
66  virtual StatusCode register3DHistogram(TH3* h3, const float *xval, const float *yval, const float *zval) = 0;
67 
68  virtual StatusCode saveProgress(TDirectory* dir) = 0;
69 
71  virtual const IFakeBkgSystDescriptor& getSystDescriptor() const = 0;
72 
73 };
74 
75 }
76 
77 #endif
CP::IFakeBkgSystDescriptor
Auxiliary interface equiping the tools derived from IFakeBkgTool with helper methods to identify what...
Definition: IFakeBkgSystDescriptor.h:18
CP::IFakeBkgTool::getTotalYield
virtual StatusCode getTotalYield(float &yield, float &statErrorUp, float &statErrorDown)=0
returns the accumulated fake lepton background yield (or compute it, in the case of the likelihood ma...
ConstDataVector.h
DataVector adapter that acts like it holds const pointers.
read_hist_ntuple.h1
h1
Definition: read_hist_ntuple.py:21
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
CP::IFakeBkgTool
Top-level interface for the tools providing an estimate of the fake lepton background All the tools,...
Definition: IFakeBkgTool.h:27
CP::IFakeBkgTool::saveProgress
virtual StatusCode saveProgress(TDirectory *dir)=0
ISystematicsTool.h
CP::IFakeBkgTool::register2DHistogram
virtual StatusCode register2DHistogram(TH2 *h2, const float *xval, const float *yval)=0
associates a 2D histogram to the tool, to obtain a binned estimate of the fake lepton background the ...
plotting.yearwise_efficiency_vs_mu.xval
float xval
Definition: yearwise_efficiency_vs_mu.py:35
CP::IFakeBkgTool::getSystDescriptor
virtual const IFakeBkgSystDescriptor & getSystDescriptor() const =0
retrieves an interface to various helper methods to identify what the different SystematicVariations ...
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IParticleContainer.h
hist_file_dump.f
f
Definition: hist_file_dump.py:135
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
CP::IFakeBkgTool::addEvent
virtual StatusCode addEvent(const ConstDataVector< xAOD::IParticleContainer > &particles, float extraWeight=1.f)=0
supply list of leptons / global variables, internal counters incremented Does not return anything; ev...
beamspotman.dir
string dir
Definition: beamspotman.py:623
CP::IFakeBkgTool::register3DHistogram
virtual StatusCode register3DHistogram(TH3 *h3, const float *xval, const float *yval, const float *zval)=0
associates a 3D histogram to the tool, to obtain a binned estimate of the fake lepton background
plotting.yearwise_efficiency_vs_mu.yval
float yval
Definition: yearwise_efficiency_vs_mu.py:36
CP::IFakeBkgTool::defaultSelection
static constexpr const char * defaultSelection()
default value taken by the 'selection' argument of several methods or properties It indicates how the...
Definition: IFakeBkgTool.h:33
CP::ISystematicsTool
Interface for all CP tools supporting systematic variations.
Definition: ISystematicsTool.h:32
ConstDataVector
DataVector adapter that acts like it holds const pointers.
Definition: ConstDataVector.h:76
CP::IFakeBkgTool::addEvent
virtual StatusCode addEvent(const xAOD::IParticleContainer &particles, float extraWeight=1.f)=0
supply list of leptons / global variables, internal counters incremented Does not return anything; ev...
Pythia8_RapidityOrderMPI.val
val
Definition: Pythia8_RapidityOrderMPI.py:14
LArG4FSStartPointFilter.particles
list particles
Definition: LArG4FSStartPointFilter.py:84
CP::IFakeBkgTool::defaultProcess
static constexpr const char * defaultProcess()
default value taken by the 'process' argument of several methods or properties It indicates what shou...
Definition: IFakeBkgTool.h:38
CP::IFakeBkgTool::register1DHistogram
virtual StatusCode register1DHistogram(TH1 *h1, const float *val)=0
associates a 1D histogram to the tool, to obtain a binned estimate of the fake lepton background the ...