ATLAS Offline Software
Loading...
Searching...
No Matches
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
14class TDirectory;
15class TH1;
16class TH2;
17class TH3;
18
19namespace CP
20{
21
23
26class 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
DataVector adapter that acts like it holds const pointers.
Auxiliary interface equiping the tools derived from IFakeBkgTool with helper methods to identify what...
Top-level interface for the tools providing an estimate of the fake lepton background All the tools,...
virtual StatusCode saveProgress(TDirectory *dir)=0
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 the ...
static constexpr const char * defaultSelection()
default value taken by the 'selection' argument of several methods or properties It indicates how the...
virtual const IFakeBkgSystDescriptor & getSystDescriptor() const =0
retrieves an interface to various helper methods to identify what the different SystematicVariations ...
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 ...
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...
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...
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...
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 ...
static constexpr const char * defaultProcess()
default value taken by the 'process' argument of several methods or properties It indicates what shou...
Interface for all CP tools supporting systematic variations.
DataVector adapter that acts like it holds const pointers.
Select isolated Photons, Electrons and Muons.
DataVector< IParticle > IParticleContainer
Simple convenience declaration of IParticleContainer.