ATLAS Offline Software
L0MuonSmearingAlg.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef L0MUON_SMEARINGALG_H
5 #define L0MUON_SMEARINGALG_H
6 
10 
13 
14 namespace L0Muon {
15 
16 class TruthTrackSmearer;
17 
19  public:
20  L0MuonSmearingAlg(const std::string& name, ISvcLocator* pSvcLocator);
21  virtual ~L0MuonSmearingAlg();
22 
23  virtual StatusCode initialize() override;
24  virtual StatusCode execute(const EventContext& ctx) const override;
25  virtual StatusCode finalize() override;
26 
27  private:
28  SG::ReadHandleKey<xAOD::TruthParticleContainer> m_inputTruthParticleKey{this, "InputTruthParticle", "TruthParticles",
29  "key for retrieval of input Truth particle"};
30 
31  SG::WriteHandleKey<xAOD::MuonRoIContainer> m_outputMuonRoIKey{this, "OutputMuonRoI", "LVL0EmulatedMuonRoI",
32  "key for LVL0 emulated muon RoIs" };
33 
34  ToolHandle<GenericMonitoringTool> m_monTool{this, "MonTool", "", "Monitoring Tool"};
35  ServiceHandle<IAthRNGSvc> m_rndmSvc{this, "RndmSvc", "AthRNGSvc", ""};
36 
37  std::unique_ptr<TruthTrackSmearer> m_mySmearer{nullptr};
38 };
39 
40 } // end of namespace
41 
42 #endif // L0MUON_SMEARINGALG_H
43 
MuonRoIContainer.h
TruthParticleContainer.h
SG::ReadHandleKey< xAOD::TruthParticleContainer >
L0Muon::L0MuonSmearingAlg::m_monTool
ToolHandle< GenericMonitoringTool > m_monTool
Definition: L0MuonSmearingAlg.h:34
L0Muon::L0MuonSmearingAlg::L0MuonSmearingAlg
L0MuonSmearingAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition: L0MuonSmearingAlg.cxx:15
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
L0Muon::L0MuonSmearingAlg::m_inputTruthParticleKey
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_inputTruthParticleKey
Definition: L0MuonSmearingAlg.h:28
L0Muon
Definition: L0MuonSmearingAlg.cxx:13
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
L0Muon::L0MuonSmearingAlg
Definition: L0MuonSmearingAlg.h:18
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
L0Muon::L0MuonSmearingAlg::m_rndmSvc
ServiceHandle< IAthRNGSvc > m_rndmSvc
Random number generator engine.
Definition: L0MuonSmearingAlg.h:35
L0Muon::L0MuonSmearingAlg::~L0MuonSmearingAlg
virtual ~L0MuonSmearingAlg()
Definition: L0MuonSmearingAlg.cxx:19
Monitored.h
Header file to be included by clients of the Monitored infrastructure.
L0Muon::L0MuonSmearingAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition: L0MuonSmearingAlg.cxx:50
AthReentrantAlgorithm.h
L0Muon::L0MuonSmearingAlg::m_mySmearer
std::unique_ptr< TruthTrackSmearer > m_mySmearer
Definition: L0MuonSmearingAlg.h:37
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
L0Muon::L0MuonSmearingAlg::finalize
virtual StatusCode finalize() override
Definition: L0MuonSmearingAlg.cxx:44
L0Muon::L0MuonSmearingAlg::initialize
virtual StatusCode initialize() override
Definition: L0MuonSmearingAlg.cxx:22
L0Muon::L0MuonSmearingAlg::m_outputMuonRoIKey
SG::WriteHandleKey< xAOD::MuonRoIContainer > m_outputMuonRoIKey
Definition: L0MuonSmearingAlg.h:31
IAthRNGSvc.h
ServiceHandle< IAthRNGSvc >