ATLAS Offline Software
Loading...
Searching...
No Matches
IJetCalibrationTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5// IJetCalibrationTool.h
6
13
14#ifndef JETCALIBTOOL_IJETCALIBRATIONTOOL_H
15#define JETCALIBTOOL_IJETCALIBRATIONTOOL_H
16
17#include "AsgTools/IAsgTool.h"
19
20//EDM includes
21#include "xAODJet/Jet.h"
22
23//Package includes
25
26class IJetCalibrationTool : virtual public IJetModifier {
27
29
30public:
31
33 virtual StatusCode modify(xAOD::JetContainer& jets) const override final {return applyCalibration(jets);}
34
36 virtual StatusCode applyCalibration(xAOD::JetContainer& jets) const = 0;
37
38 // Get the nominal resolution
39 virtual StatusCode getNominalResolutionData(const xAOD::Jet&, double&) const { return StatusCode::FAILURE; }
40 virtual StatusCode getNominalResolutionMC( const xAOD::Jet&, double&) const { return StatusCode::FAILURE; }
41
42};
43
44#endif
#define ASG_TOOL_INTERFACE(CLASSNAME)
class IJetCalibrationTool
virtual StatusCode getNominalResolutionMC(const xAOD::Jet &, double &) const
virtual StatusCode applyCalibration(xAOD::JetContainer &jets) const =0
Apply calibration to a jet container.
virtual StatusCode getNominalResolutionData(const xAOD::Jet &, double &) const
virtual StatusCode modify(xAOD::JetContainer &jets) const override final
Apply calibration to a jet container (for IJetModifier interface).
IJetModifier is a dual-use tool interface for a tool that modifies a jet collection.
Jet_v1 Jet
Definition of the current "jet version".
JetContainer_v1 JetContainer
Definition of the current "jet container version".