ATLAS Offline Software
Trigger
TrigT1
Muon
L0MuonS1RPC
src
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
7
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
8
#include "
AthenaMonitoringKernel/Monitored.h
"
9
#include "
AthenaKernel/IAthRNGSvc.h
"
10
11
#include "
MuonIdHelpers/IMuonIdHelperSvc.h
"
12
13
#include "
StoreGate/ReadHandleKey.h
"
14
#include "
StoreGate/ReadDecorHandleKey.h
"
15
16
#include "
xAODTruth/TruthParticleContainer.h
"
17
#include "
xAODMuonRDO/NRPCRDOContainer.h
"
18
#include "
xAODTrigger/MuonRoIContainer.h
"
19
#include "
xAODMuonSimHit/MuonSimHit.h
"
20
21
#include "
L0MuonInterface/RPCCandDataContainer.h
"
22
#include "
MuonReadoutGeometryR4/MuonDetectorManager.h
"
23
24
namespace
L0Muon
25
{
26
27
class
RPCSimulation
:
public
::AthReentrantAlgorithm
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
60
SG::ReadDecorHandleKey<xAOD::TruthParticleContainer>
m_segmentLinkKey
{
this
,
"SegmentLinkKey"
,
m_truthPartKey
,
61
"truthSegmentLinks"
};
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"
};
67
const
MuonGMR4::MuonDetectorManager
*
m_detMgr
{
nullptr
};
68
};
69
70
}
// end of namespace
71
72
#endif // L0MUONRPCSIM_H
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
RPCCandDataContainer.h
ReadDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
MuonGMR4::MuonDetectorManager
Definition:
MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h:62
L0Muon::RPCSimulation::m_truthPartKey
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_truthPartKey
truth containers
Definition:
RPCSimulation.h:58
L0Muon::RPCSimulation::m_monTool
ToolHandle< GenericMonitoringTool > m_monTool
Definition:
RPCSimulation.h:55
L0Muon::RPCSimulation::m_geoCtxKey
SG::ReadHandleKey< ActsTrk::GeometryContext > m_geoCtxKey
Definition:
RPCSimulation.h:66
MuonRoIContainer.h
L0Muon::RPCSimulation::m_outputCandKey
SG::WriteHandleKey< L0Muon::RPCCandDataContainer > m_outputCandKey
Output Trigger candidates.
Definition:
RPCSimulation.h:53
TruthParticleContainer.h
L0Muon::RPCSimulation::collectHits
std::vector< const xAOD::MuonSimHit * > collectHits(const xAOD::TruthParticle &truthPart, const EventContext &ctx) const
Definition:
RPCSimulation.cxx:78
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition:
StoreGate/StoreGate/ReadHandleKey.h:39
MuonSimHit.h
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition:
AthReentrantAlgorithm.h:74
L0Muon::RPCSimulation::buildFromTruth
StatusCode buildFromTruth(L0Muon::RPCCandDataContainer &outputCands, const EventContext &ctx) const
build the candidates from the MC truth
Definition:
RPCSimulation.cxx:104
L0Muon
Definition:
L0MuonSmearingAlg.cxx:13
L0Muon::RPCSimulation::initialize
virtual StatusCode initialize() override
Definition:
RPCSimulation.cxx:22
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition:
StoreGate/StoreGate/WriteHandleKey.h:40
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition:
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
L0Muon::RPCSimulation::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
helper service
Definition:
RPCSimulation.h:64
xAOD::TruthParticle_v1
Class describing a truth particle in the MC record.
Definition:
TruthParticle_v1.h:37
L0Muon::RPCSimulation::m_detMgr
const MuonGMR4::MuonDetectorManager * m_detMgr
Definition:
RPCSimulation.h:67
MuonDetectorManager.h
L0Muon::RPCSimulation::m_useTruth
Gaudi::Property< bool > m_useTruth
configuration options
Definition:
RPCSimulation.h:46
L0Muon::RPCSimulation
Definition:
RPCSimulation.h:28
DataVector
Derived DataVector<T>.
Definition:
DataVector.h:795
Monitored.h
Header file to be included by clients of the Monitored infrastructure.
L0Muon::RPCSimulation::m_segmentLinkKey
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer > m_segmentLinkKey
Definition:
RPCSimulation.h:60
AthReentrantAlgorithm.h
L0Muon::RPCSimulation::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition:
RPCSimulation.cxx:43
L0Muon::RPCSimulation::m_keyRpcRdo
SG::ReadHandleKey< xAOD::NRPCRDOContainer > m_keyRpcRdo
RPC Rdo.
Definition:
RPCSimulation.h:50
L0Muon::RPCSimulation::~RPCSimulation
virtual ~RPCSimulation()=default
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer >
IMuonIdHelperSvc.h
NRPCRDOContainer.h
IAthRNGSvc.h
ServiceHandle< Muon::IMuonIdHelperSvc >
L0Muon::RPCSimulation::m_usePatterns
Gaudi::Property< bool > m_usePatterns
Definition:
RPCSimulation.h:47
Generated on Tue Nov 4 2025 21:17:49 for ATLAS Offline Software by
1.8.18