ATLAS Offline Software
RpcRdoToRpcPrepDataTool.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 MUONRPC_CNVTOOLSR4_RPCRDOTOPREPDATACNVTOOL_H
5 #define MUONRPC_CNVTOOLSR4_RPCRDOTOPREPDATACNVTOOL_H
6 
9 
13 
21 #include <GaudiKernel/PhysicalConstants.h>
22 
23 namespace MuonR4{
24  class RpcRdoToRpcPrepDataTool: public extends<AthAlgTool, Muon::IMuonRdoToPrepDataTool> {
25  public:
26 
27  using base_class::base_class;
28 
30 
31  StatusCode initialize() override final;
32 
33  StatusCode decode(const EventContext& ctx,
34  const std::vector<IdentifierHash>& idVect) const override final;
35 
36  StatusCode decode(const EventContext& ctx,
37  const std::vector<uint32_t>& robIds) const override final;
38 
40  StatusCode provideEmptyContainer(const EventContext& ctx) const override final;
41 
42  private:
43  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
44 
45  SG::ReadHandleKey<xAOD::NRPCRDOContainer> m_rdoKey{this, "RpcRdoContainer", "NRPCRDO"};
46 
47  SG::ReadCondHandleKey<Muon::RpcCablingMap> m_cablingKey{this, "CablingKey", "MuonNRPC_CablingMap",
48  "Key of MuonNRPC_CablingMap"};
49 
50 
51  SG::WriteHandleKey<xAOD::RpcStripContainer> m_writeKey{this, "OutputContainer", "xRpcStrips",
52  "Output container"};
53 
54  SG::WriteHandleKey<xAOD::RpcStrip2DContainer> m_writeKeyBI{this, "OutputContainerBI", "xRpcBILStrips",
55  "Output container of the 2D BIL rpc strips"};
56 
58 
59 
60  Gaudi::Property<bool> m_decode2DStrips{this, "decode2DStrips", true};
61 
62  Gaudi::Property<double> m_propagationVelocity{this, "propSpeed", 0.5 * Gaudi::Units::c_light,
63  "Propagation speed of the signal inside the strip"}; // in mm/ns
64 
65  Gaudi::Property<double> m_stripTimeResolution{this, "timeResolution", 0.6 * Gaudi::Units::nanosecond,
66  "Estimated time resolution of the strip readout"};
67 
68  };
69 }
70 #endif
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
MuonR4::RpcRdoToRpcPrepDataTool
Definition: RpcRdoToRpcPrepDataTool.h:24
MuonR4::RpcRdoToRpcPrepDataTool::decode
StatusCode decode(const EventContext &ctx, const std::vector< IdentifierHash > &idVect) const override final
Definition: RpcRdoToRpcPrepDataTool.cxx:26
MuonGMR4::MuonDetectorManager
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h:62
MuonR4::RpcRdoToRpcPrepDataTool::m_cablingKey
SG::ReadCondHandleKey< Muon::RpcCablingMap > m_cablingKey
Definition: RpcRdoToRpcPrepDataTool.h:47
ActsGeometryContext.h
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
RpcCablingMap.h
python.SystemOfUnits.nanosecond
float nanosecond
Definition: SystemOfUnits.py:134
MuonR4::RpcRdoToRpcPrepDataTool::initialize
StatusCode initialize() override final
Definition: RpcRdoToRpcPrepDataTool.cxx:16
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
Muon
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
Definition: TrackSystemController.h:45
RpcStripContainer.h
MuonR4::RpcRdoToRpcPrepDataTool::m_decode2DStrips
Gaudi::Property< bool > m_decode2DStrips
Definition: RpcRdoToRpcPrepDataTool.h:60
MuonR4::RpcRdoToRpcPrepDataTool::m_rdoKey
SG::ReadHandleKey< xAOD::NRPCRDOContainer > m_rdoKey
Definition: RpcRdoToRpcPrepDataTool.h:45
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
IMuonRdoToPrepDataTool.h
MuonR4::RpcRdoToRpcPrepDataTool::m_propagationVelocity
Gaudi::Property< double > m_propagationVelocity
Definition: RpcRdoToRpcPrepDataTool.h:62
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
vector
Definition: MultiHisto.h:13
AthAlgTool.h
MuonR4::RpcRdoToRpcPrepDataTool::m_writeKey
SG::WriteHandleKey< xAOD::RpcStripContainer > m_writeKey
Definition: RpcRdoToRpcPrepDataTool.h:51
MuonDetectorManager.h
MuonR4::RpcRdoToRpcPrepDataTool::~RpcRdoToRpcPrepDataTool
~RpcRdoToRpcPrepDataTool()=default
ReadCondHandleKey.h
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
RpcStrip2DContainer.h
MuonR4::RpcRdoToRpcPrepDataTool::m_writeKeyBI
SG::WriteHandleKey< xAOD::RpcStrip2DContainer > m_writeKeyBI
Definition: RpcRdoToRpcPrepDataTool.h:54
python.PhysicalConstants.c_light
float c_light
Definition: PhysicalConstants.py:73
MuonR4
This header ties the generic definitions in this package.
Definition: HoughEventData.h:16
SG::ReadCondHandleKey< Muon::RpcCablingMap >
MuonR4::RpcRdoToRpcPrepDataTool::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: RpcRdoToRpcPrepDataTool.h:43
MuonR4::RpcRdoToRpcPrepDataTool::provideEmptyContainer
StatusCode provideEmptyContainer(const EventContext &ctx) const override final
Method to create the empty containers.. Only used for seeded decoding.
Definition: RpcRdoToRpcPrepDataTool.cxx:149
private
#define private
Definition: xAODTruthCnvAlg.h:20
IdentifierHash
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Definition: IdentifierHash.h:25
MuonR4::RpcRdoToRpcPrepDataTool::m_stripTimeResolution
Gaudi::Property< double > m_stripTimeResolution
Definition: RpcRdoToRpcPrepDataTool.h:65
IMuonIdHelperSvc.h
MuonR4::RpcRdoToRpcPrepDataTool::m_detMgr
const MuonGMR4::MuonDetectorManager * m_detMgr
Definition: RpcRdoToRpcPrepDataTool.h:57
NRPCRDOContainer.h
ServiceHandle
Definition: ClusterMakerTool.h:37