ATLAS Offline Software
Loading...
Searching...
No Matches
IIsolationCorrectionTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef ISOLATIONCORRECTION_IISOLATIONCORRECTIONTOOL_H
6#define ISOLATIONCORRECTION_IISOLATIONCORRECTIONTOOL_H
7
8#include "AsgTools/IAsgTool.h"
9//xAOD
10#include "xAODEgamma/Egamma.h"
11
14
15// PAT includes
17
19
20namespace CP {
21
23 // Declare the interface that the class provides
25
26 public:
27
29
30 virtual StatusCode initialize() = 0;
31
32 //Apply the correction on a modifyable egamma object (xAOD::Electron or xAOD::Photon)
34
35 //Create a corrected copy from a constant egamma object
37
38 // This helps to correct for the (wrong) leakage at the analysis level
40
41 //systematics
42 // Which systematics have an effect on the tool's behaviour?
44 // Is the tool affected by a specific systematic?
45 virtual bool isAffectedBySystematic( const CP::SystematicVariation& systematic ) const = 0;
46 //Systematics to be used for physics analysis
48 //Use specific systematic
49 virtual StatusCode applySystematicVariation ( const CP::SystematicSet& systConfig ) = 0;
50
52 virtual float GetPtCorrection(const xAOD::Egamma&, xAOD::Iso::IsolationType) const = 0;
54
55 };
56
57}
58
59#endif //ISOLATIONCORRECTION_IISOLATIONCORRECTIONTOOL_H
#define ASG_TOOL_INTERFACE(CLASSNAME)
Return value from object correction CP tools.
virtual float GetDDCorrection(const xAOD::Egamma &, xAOD::Iso::IsolationType)=0
virtual float GetPtCorrection(const xAOD::Egamma &, xAOD::Iso::IsolationType) const =0
virtual StatusCode initialize()=0
virtual CP::CorrectionCode applyCorrection(xAOD::Egamma &)=0
virtual CP::SystematicSet affectingSystematics() const =0
the list of all systematics this tool can be affected by
virtual CP::CorrectionCode correctedCopy(const xAOD::Egamma &, xAOD::Egamma *&)=0
virtual CP::CorrectionCode CorrectLeakage(xAOD::Egamma &)=0
virtual float GetPtCorrectedIsolation(const xAOD::Egamma &, xAOD::Iso::IsolationType)=0
virtual CP::SystematicSet recommendedSystematics() const =0
the list of all systematics this tool recommends to use
virtual StatusCode applySystematicVariation(const CP::SystematicSet &systConfig)=0
effects: configure this tool for the given list of systematic variations.
virtual bool isAffectedBySystematic(const CP::SystematicVariation &systematic) const =0
Declare the interface that this class provides.
Interface for all CP tools supporting systematic variations.
Class to wrap a set of SystematicVariations.
Select isolated Photons, Electrons and Muons.
IsolationType
Overall enumeration for isolation types in xAOD files.
Egamma_v1 Egamma
Definition of the current "egamma version".
Definition Egamma.h:17