ATLAS Offline Software
Loading...
Searching...
No Matches
RPCSimulation.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4#ifndef L0MuonS1RPC_RPCSIMULATION_H
5#define L0MuonS1RPC_RPCSIMULATION_H
6
10
12
15
20
23
24namespace L0Muon
25{
26
28 {
29 public:
30 using AthReentrantAlgorithm::AthReentrantAlgorithm;
31 virtual ~RPCSimulation() = default;
32
33 virtual StatusCode initialize() override;
34 virtual StatusCode execute(const EventContext &ctx) const override;
35
36 private:
38 StatusCode buildFromTruth(L0Muon::RPCCandDataContainer& outputCands,
39 const EventContext &ctx) const;
40
41 std::vector<const xAOD::MuonSimHit*> collectHits(const xAOD::TruthParticle& truthPart,
42 const EventContext& ctx) const;
43
44
46 Gaudi::Property<bool> m_useTruth{this, "UseTruth", true, "Use truth information to build candidates"};
47 Gaudi::Property<bool> m_usePatterns{this, "UsePatterns", false, "Use patterns to build candidates"};
48
50 SG::ReadHandleKey<xAOD::NRPCRDOContainer> m_keyRpcRdo{this, "NrpcRdoKey", "NRPCRDO", "Location of input RpcRDO"};
51
53 SG::WriteHandleKey<L0Muon::RPCCandDataContainer> m_outputCandKey{this, "L0MuonRPCCandKey", "L0MuonRPCCand",
54 "LVL0 Barrel trigger candidates in the Muon RPC"};
55 ToolHandle<GenericMonitoringTool> m_monTool{this, "MonTool", "", "Monitoring Tool"};
56
58 SG::ReadHandleKey<xAOD::TruthParticleContainer> m_truthPartKey{this, "TruthPartKey", "MuonTruthParticles"};
59
62
64 ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc",
65 "Muon Id Helper Service"};
66 SG::ReadHandleKey<ActsTrk::GeometryContext> m_geoCtxKey{this, "AlignmentKey", "ActsAlignment", "cond handle key"};
68 };
69
70} // end of namespace
71
72#endif // L0MUONRPCSIM_H
Header file to be included by clients of the Monitored infrastructure.
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Property holding a SG store/key/clid from which a ReadHandle is made.
An algorithm that can be simultaneously executed in multiple threads.
StatusCode buildFromTruth(L0Muon::RPCCandDataContainer &outputCands, const EventContext &ctx) const
build the candidates from the MC truth
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_truthPartKey
truth containers
virtual StatusCode initialize() override
Gaudi::Property< bool > m_usePatterns
Gaudi::Property< bool > m_useTruth
configuration options
std::vector< const xAOD::MuonSimHit * > collectHits(const xAOD::TruthParticle &truthPart, const EventContext &ctx) const
SG::WriteHandleKey< L0Muon::RPCCandDataContainer > m_outputCandKey
Output Trigger candidates.
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer > m_segmentLinkKey
SG::ReadHandleKey< xAOD::NRPCRDOContainer > m_keyRpcRdo
RPC Rdo.
const MuonGMR4::MuonDetectorManager * m_detMgr
ToolHandle< GenericMonitoringTool > m_monTool
virtual ~RPCSimulation()=default
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
helper service
SG::ReadHandleKey< ActsTrk::GeometryContext > m_geoCtxKey
virtual StatusCode execute(const EventContext &ctx) const override
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
DataVector< RPCCandData > RPCCandDataContainer
TruthParticle_v1 TruthParticle
Typedef to implementation.