ATLAS Offline Software
Loading...
Searching...
No Matches
IEfficiencyScaleFactorTool.h
Go to the documentation of this file.
1// Dear emacs, this is -*- c++ -*-
2
3/*
4 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5*/
6
7// $Id: IEfficiencyScaleFactorTool.h 790193 2016-12-16 16:36:15Z krasznaa $
8#ifndef ASGANALYSISINTERFACES_IEFFICIENCYSCALEFACTORTOOL_H
9#define ASGANALYSISINTERFACES_IEFFICIENCYSCALEFACTORTOOL_H
10
11// ASG include(s):
14
15// Forward declaration(s):
16namespace xAOD {
17 class IParticle;
18}
19
21namespace CP {
22
52
53 // Declare the interface of the tool
55
56 public:
58 virtual ~IEfficiencyScaleFactorTool() = default;
59
74 double& sf ) const = 0;
75
89 virtual CorrectionCode
91
92 }; // class IEfficiencyScaleFactorTool
93
94} // namespace CP
95
96#endif // ASGANALYSISINTERFACES_IEFFICIENCYSCALEFACTORTOOL_H
#define ASG_TOOL_INTERFACE(CLASSNAME)
Return value from object correction CP tools.
General interface for tools providing analysis efficiency scale factors.
virtual ~IEfficiencyScaleFactorTool()=default
Default destructor.
virtual CorrectionCode applyEfficiencyScaleFactor(const xAOD::IParticle &p) const =0
Decorate a particle with its efficiency scale factor.
virtual CorrectionCode getEfficiencyScaleFactor(const xAOD::IParticle &p, double &sf) const =0
Retrieve an efficiency scale factor for a particle type object.
Interface for all CP tools supporting systematic variations.
Class providing the definition of the 4-vector interface.
Select isolated Photons, Electrons and Muons.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.