ATLAS Offline Software
RpcRdoToRpcDigit.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 MUONBYTESTREAMCNVTEST_RPCRDOTORPCDIGIT_H
6 #define MUONBYTESTREAMCNVTEST_RPCRDOTORPCDIGIT_H
7 
18 
19 
21 public:
22  RpcRdoToRpcDigit(const std::string& name, ISvcLocator* pSvcLocator);
23  virtual ~RpcRdoToRpcDigit() = default;
24 
25  virtual StatusCode initialize() override final;
26  virtual StatusCode execute(const EventContext& ctx) const override final;
27 
28 private:
29 
30  using TempDigitContainer = std::vector<std::unique_ptr<RpcDigitCollection>>;
31 
32 
34  StatusCode decodeLegacyRdo(const EventContext& ctx, TempDigitContainer& container) const;
35 
36  StatusCode decodeNRpc(const EventContext& ctx, TempDigitContainer& container) const;
37  ToolHandle<Muon::IRPC_RDO_Decoder> m_rpcRdoDecoderTool{this, "rpcRdoDecoderTool", "Muon::RpcRDO_Decoder", ""};
38  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
39  SG::ReadHandleKey<RpcPadContainer> m_rpcRdoKey{this, "RpcRdoContainer", "RPCPAD", "Rpc RDO Input"};
40  SG::WriteHandleKey<RpcDigitContainer> m_rpcDigitKey{this, "RpcDigitContainer", "RPC_DIGITS", "Rpc Digit Output"};
41  SG::ReadCondHandleKey<RpcCablingCondData> m_rpcReadKey{this, "RpcCablingKey", "RpcCablingCondData", "Key of RpcCablingCondData"};
42 
43 
44  Gaudi::Property<bool> m_decodeLegacyRDO{this, "DecodeLegacyRDO", true};
45  Gaudi::Property<bool> m_decodeNrpcRDO{this, "DecodeNrpcRDO", false};
46  Gaudi::Property<bool> m_patch_for_rpc_time{this, "PatchForRpcTime", false, "flag for patching the RPC time"};
47 
48  SG::ReadHandleKey<xAOD::NRPCRDOContainer> m_nRpcRdoKey{this, "NRpcRdoContainer", "NRPCRDO", "BIS78 RPC Rdo input with ToTs"};
49  SG::ReadCondHandleKey<MuonNRPC_CablingMap> m_nRpcCablingKey{this, "NRpcCablingKey", "MuonNRPC_CablingMap", "Key of input MDT cabling map"};
50 
51  SG::ReadCondHandleKey<MuonGM::MuonDetectorManager> m_DetectorManagerKey{this, "DetectorManagerKey", "MuonDetectorManager",
52  "Key of input MuonDetectorManager condition data"};
53 
54 };
55 
56 #endif
RpcRdoToRpcDigit
Definition: RpcRdoToRpcDigit.h:20
IRPC_RDO_Decoder.h
RpcRdoToRpcDigit::m_rpcRdoKey
SG::ReadHandleKey< RpcPadContainer > m_rpcRdoKey
Definition: RpcRdoToRpcDigit.h:39
RpcDigitContainer.h
RpcDigitCollection
Definition: RpcDigitCollection.h:17
MuonNRPC_CablingMap.h
RpcRdoToRpcDigit::m_nRpcRdoKey
SG::ReadHandleKey< xAOD::NRPCRDOContainer > m_nRpcRdoKey
Definition: RpcRdoToRpcDigit.h:48
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
SG::ReadHandleKey< RpcPadContainer >
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:45
RpcRdoToRpcDigit::m_nRpcCablingKey
SG::ReadCondHandleKey< MuonNRPC_CablingMap > m_nRpcCablingKey
Definition: RpcRdoToRpcDigit.h:49
RpcRdoToRpcDigit::m_patch_for_rpc_time
Gaudi::Property< bool > m_patch_for_rpc_time
Definition: RpcRdoToRpcDigit.h:46
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
RpcRdoToRpcDigit::m_rpcReadKey
SG::ReadCondHandleKey< RpcCablingCondData > m_rpcReadKey
Definition: RpcRdoToRpcDigit.h:41
SG::WriteHandleKey< RpcDigitContainer >
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
vector
Definition: MultiHisto.h:13
RpcRdoToRpcDigit::m_rpcRdoDecoderTool
ToolHandle< Muon::IRPC_RDO_Decoder > m_rpcRdoDecoderTool
Definition: RpcRdoToRpcDigit.h:37
RpcRdoToRpcDigit::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: RpcRdoToRpcDigit.h:38
ReadCondHandleKey.h
RpcRdoToRpcDigit::TempDigitContainer
std::vector< std::unique_ptr< RpcDigitCollection > > TempDigitContainer
Definition: RpcRdoToRpcDigit.h:30
AthReentrantAlgorithm.h
RpcRdoToRpcDigit::decodeLegacyRdo
StatusCode decodeLegacyRdo(const EventContext &ctx, TempDigitContainer &container) const
: Decode the legacy RpcRdo format
Definition: RpcRdoToRpcDigit.cxx:33
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
RpcRdoToRpcDigit::initialize
virtual StatusCode initialize() override final
Definition: RpcRdoToRpcDigit.cxx:15
MuonDetectorManager.h
RpcRdoToRpcDigit::m_decodeLegacyRDO
Gaudi::Property< bool > m_decodeLegacyRDO
Definition: RpcRdoToRpcDigit.h:44
SG::ReadCondHandleKey< RpcCablingCondData >
RpcRdoToRpcDigit::RpcRdoToRpcDigit
RpcRdoToRpcDigit(const std::string &name, ISvcLocator *pSvcLocator)
Definition: RpcRdoToRpcDigit.cxx:12
RpcCablingCondData.h
RpcPadContainer.h
RpcRdoToRpcDigit::m_decodeNrpcRDO
Gaudi::Property< bool > m_decodeNrpcRDO
Definition: RpcRdoToRpcDigit.h:45
RpcRdoToRpcDigit::decodeNRpc
StatusCode decodeNRpc(const EventContext &ctx, TempDigitContainer &container) const
Definition: RpcRdoToRpcDigit.cxx:102
RpcRdoToRpcDigit::m_DetectorManagerKey
SG::ReadCondHandleKey< MuonGM::MuonDetectorManager > m_DetectorManagerKey
Definition: RpcRdoToRpcDigit.h:51
RpcRdoToRpcDigit::~RpcRdoToRpcDigit
virtual ~RpcRdoToRpcDigit()=default
IMuonIdHelperSvc.h
RpcRdoToRpcDigit::execute
virtual StatusCode execute(const EventContext &ctx) const override final
Definition: RpcRdoToRpcDigit.cxx:80
NRPCRDOContainer.h
RpcRdoToRpcDigit::m_rpcDigitKey
SG::WriteHandleKey< RpcDigitContainer > m_rpcDigitKey
Definition: RpcRdoToRpcDigit.h:40
ServiceHandle< Muon::IMuonIdHelperSvc >