ATLAS Offline Software
Loading...
Searching...
No Matches
MuonCalibIntHighpTSmearTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef MCAST_MuonCalibIntHighpTSmearTool_H
6#define MCAST_MuonCalibIntHighpTSmearTool_H
7
8// C++ includes
9#include <map>
10#include <vector>
11
12// Framework include(s):
15#include "AsgTools/AsgTool.h"
19
24
25namespace CP {
26
28 public asg::AsgTool {
29 // Create a proper constructor for Athena
32
33 public:
34 // Interface methods that must be defined
35 // Interface - Apply the correction on a modifyable object
36 virtual CorrectionCode applyCorrection(MCP::MuonObj& mu) const override;
37
38 // Interface - Is the tool affected by a specific systematic?
39 virtual bool isAffectedBySystematic(const SystematicVariation& systematic) const override;
40 // Interface - Which systematics have an effect on the tool's behaviour?
41 virtual SystematicSet affectingSystematics() const override;
42 // Interface - Systematics to be used for physics analysis
43 virtual SystematicSet recommendedSystematics() const override;
44 // Interface - Use specific systematic
45 virtual StatusCode applySystematicVariation(const SystematicSet& systConfig) override;
46
47 public:
48 // Constructor
49 MuonCalibIntHighpTSmearTool(const std::string& name);
50
51 // Destructor
52 virtual ~MuonCalibIntHighpTSmearTool() = default;
53
54 virtual StatusCode initialize() override;
55
56
57 protected:
58 // Event info
59 SG::ReadHandleKey<xAOD::EventInfo> m_eventInfo{this, "EventInfoContName", "EventInfo", "event info key"};
60
61 // Release scheme
62 Gaudi::Property<std::string> m_release{this, "release", "Recs2025_12_11_Run2Run3", "Release version"};
63
64 typedef std::map<MCP::MST_Categories, std::shared_ptr<MCP::CalibContainer>> HighpTConstMap;
65
66 // Corrections from the data
67 std::map<MCP::DataYear, HighpTConstMap> m_MS_Misaligned_p1;
68 std::map<MCP::DataYear, HighpTConstMap> m_MS_Misaligned_p2;
69 std::map<MCP::DataYear, HighpTConstMap> m_MS_AlignedAndCorrected_p1;
70 std::map<MCP::DataYear, HighpTConstMap> m_MS_AlignedAndCorrected_p2;
71
72 MCP::MST_Categories ConvertToMacroCategory(const int raw_mst_category) const;
73
74
75
76 }; // class MuonCalibIntHighpTSmearTool
77
78} // namespace CP
79
80#endif
#define ASG_TOOL_CLASS3(CLASSNAME, INT1, INT2, INT3)
Property holding a SG store/key/clid from which a ReadHandle is made.
Return value from object correction CP tools.
virtual CorrectionCode applyCorrection(MCP::MuonObj &mu) const =0
Declare the interface that the class provides.
interface for all CP tools supporting systematic variations within a reentrant algorithm
Interface for all CP tools supporting systematic variations.
std::map< MCP::MST_Categories, std::shared_ptr< MCP::CalibContainer > > HighpTConstMap
MCP::MST_Categories ConvertToMacroCategory(const int raw_mst_category) const
MuonCalibIntHighpTSmearTool(const std::string &name)
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
virtual StatusCode applySystematicVariation(const SystematicSet &systConfig) override
effects: configure this tool for the given list of systematic variations.
Gaudi::Property< std::string > m_release
std::map< MCP::DataYear, HighpTConstMap > m_MS_AlignedAndCorrected_p1
std::map< MCP::DataYear, HighpTConstMap > m_MS_Misaligned_p2
virtual ~MuonCalibIntHighpTSmearTool()=default
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfo
virtual SystematicSet recommendedSystematics() const override
the list of all systematics this tool recommends to use
std::map< MCP::DataYear, HighpTConstMap > m_MS_Misaligned_p1
virtual SystematicSet affectingSystematics() const override
the list of all systematics this tool can be affected by
std::map< MCP::DataYear, HighpTConstMap > m_MS_AlignedAndCorrected_p2
virtual ASG_TOOL_CLASS3(MuonCalibIntHighpTSmearTool, CP::IMuonCalibIntTool, CP::ISystematicsTool, CP::IReentrantSystematicsTool) public bool isAffectedBySystematic(const SystematicVariation &systematic) const override
Declare the interface that this class provides.
Class to wrap a set of SystematicVariations.
Property holding a SG store/key/clid from which a ReadHandle is made.
Base class for the dual-use tool implementation classes.
Definition AsgTool.h:47
Select isolated Photons, Electrons and Muons.
MST_Categories
Definition EnumDef.h:31