ATLAS Offline Software
CalibratedMuonsProvider.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MUONMMC_CALIBRATEDMUONSPROVIDER_H
6 #define MUONMMC_CALIBRATEDMUONSPROVIDER_H
7 
15 #include "xAODMuon/MuonContainer.h"
16 
17 namespace CP {
18 
20 
22  public:
24  CalibratedMuonsProvider(const std::string& name, ISvcLocator* svcLoc);
25 
27  virtual StatusCode initialize() override;
29  virtual StatusCode execute() override;
30 
31  private:
32  SG::ReadHandleKey<xAOD::EventInfo> m_eventInfo{this, "EventInfoContName", "EventInfo", "event info key"};
34  SG::ReadHandleKey<xAOD::MuonContainer> m_inputKey{this, "Input", "Muons", " Name of the muon container to calibrate"};
35  SG::WriteHandleKey<xAOD::MuonContainer> m_outputKey{this, "Output", "CalibratedMuons",
36  "Name of the final container written to storegate"};
39 
41  ToolHandle<IMuonCalibrationAndSmearingTool> m_tool{this, "Tool", ""};
42  Gaudi::Property<bool> m_useRndNumber{this, "useRndRunNumber", false};
43  SG::ReadDecorHandleKey<xAOD::EventInfo> m_rndNumKey{this, "RandomNumberDecor", "EventInfo.RandomRunNumber",
44  "Dependency on the random run number"};
45 
46  }; // class
47 
48 } // namespace CP
49 
50 #endif //
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
CP::CalibratedMuonsProvider::m_tool
ToolHandle< IMuonCalibrationAndSmearingTool > m_tool
Muon calibration tool.
Definition: CalibratedMuonsProvider.h:41
ReadDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
CP::CalibratedMuonsProvider::CalibratedMuonsProvider
CalibratedMuonsProvider(const std::string &name, ISvcLocator *svcLoc)
Regular Algorithm constructor.
Definition: CalibratedMuonsProvider.cxx:12
CP::CalibratedMuonsProvider::m_eventInfo
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfo
Definition: CalibratedMuonsProvider.h:32
CP::CalibratedMuonsProvider::m_ptDecorKeys
SG::WriteDecorHandleKeyArray< xAOD::MuonContainer > m_ptDecorKeys
Additionally declare the two decorations made by MCAST.
Definition: CalibratedMuonsProvider.h:38
SG::HandleKeyArray
Definition: StoreGate/StoreGate/HandleKeyArray.h:38
SG::ReadHandleKey< xAOD::EventInfo >
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
CP::CalibratedMuonsProvider::initialize
virtual StatusCode initialize() override
Function initialising the algorithm.
Definition: CalibratedMuonsProvider.cxx:14
CP::CalibratedMuonsProvider::m_rndNumKey
SG::ReadDecorHandleKey< xAOD::EventInfo > m_rndNumKey
Definition: CalibratedMuonsProvider.h:43
AthAlgorithm.h
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
CP::CalibratedMuonsProvider::m_outputKey
SG::WriteHandleKey< xAOD::MuonContainer > m_outputKey
Definition: CalibratedMuonsProvider.h:35
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgorithm
Definition: AthAlgorithm.h:47
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
IMuonCalibrationAndSmearingTool.h
CP::CalibratedMuonsProvider::m_useRndNumber
Gaudi::Property< bool > m_useRndNumber
Definition: CalibratedMuonsProvider.h:42
EventInfo.h
MuonContainer.h
CP::CalibratedMuonsProvider
decorates a muon collection with efficiency and scale factor
Definition: CalibratedMuonsProvider.h:21
WriteDecorHandleKeyArray.h
CP::CalibratedMuonsProvider::execute
virtual StatusCode execute() override
Function executing the algorithm.
Definition: CalibratedMuonsProvider.cxx:27
SG::ReadDecorHandleKey
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Definition: StoreGate/StoreGate/ReadDecorHandleKey.h:85
CP::CalibratedMuonsProvider::m_inputKey
SG::ReadHandleKey< xAOD::MuonContainer > m_inputKey
muon container
Definition: CalibratedMuonsProvider.h:34