ATLAS Offline Software
MdtRdoToMdtDigit.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MUONBYTESTREAMCNVTEST_MDTRDOTOMDTDIGIT_H
6 #define MUONBYTESTREAMCNVTEST_MDTRDOTOMDTDIGIT_H
7 
9 #include "GaudiKernel/ServiceHandle.h"
10 #include "GaudiKernel/ToolHandle.h"
15 
17 public:
18  MdtRdoToMdtDigit(const std::string& name, ISvcLocator* pSvcLocator);
19  virtual ~MdtRdoToMdtDigit() = default;
20  virtual StatusCode initialize() override final;
21  virtual StatusCode execute(const EventContext& ctx) const override final;
22 
23 private:
24  using DigitCollection = std::unordered_map<IdentifierHash, std::unique_ptr<MdtDigitCollection>>;
25  StatusCode decodeMdt(const MdtCsm& rdoCollection, DigitCollection& digitContainer) const;
26 
27  ToolHandle<Muon::IMDT_RDO_Decoder> m_mdtRdoDecoderTool{this, "mdtRdoDecoderTool", "Muon::MdtRDO_Decoder", ""};
28  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
29  SG::ReadHandleKey<MdtCsmContainer> m_mdtRdoKey{this, "MdtRdoContainer", "MDTCSM", "Mdt RDO Input"};
30  SG::WriteHandleKey<MdtDigitContainer> m_mdtDigitKey{this, "MdtDigitContainer", "MDT_DIGITS", "Mdt Digit Output"};
31 };
32 
33 #endif
MdtRdoToMdtDigit::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: MdtRdoToMdtDigit.h:28
MdtRdoToMdtDigit::m_mdtRdoDecoderTool
ToolHandle< Muon::IMDT_RDO_Decoder > m_mdtRdoDecoderTool
Definition: MdtRdoToMdtDigit.h:27
MdtRdoToMdtDigit::initialize
virtual StatusCode initialize() override final
Definition: MdtRdoToMdtDigit.cxx:9
MdtRdoToMdtDigit::decodeMdt
StatusCode decodeMdt(const MdtCsm &rdoCollection, DigitCollection &digitContainer) const
Definition: MdtRdoToMdtDigit.cxx:43
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
SG::ReadHandleKey< MdtCsmContainer >
MdtCsm
MDT RDOs : Chamber Service Module, container of AmtHits of a single Mdt chamber.
Definition: MdtCsm.h:19
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
MdtRdoToMdtDigit::MdtRdoToMdtDigit
MdtRdoToMdtDigit(const std::string &name, ISvcLocator *pSvcLocator)
Definition: MdtRdoToMdtDigit.cxx:7
MdtRdoToMdtDigit::execute
virtual StatusCode execute(const EventContext &ctx) const override final
Definition: MdtRdoToMdtDigit.cxx:17
MdtCsmContainer.h
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
IMDT_RDO_Decoder.h
MdtRdoToMdtDigit::DigitCollection
std::unordered_map< IdentifierHash, std::unique_ptr< MdtDigitCollection > > DigitCollection
Definition: MdtRdoToMdtDigit.h:24
SG::WriteHandleKey< MdtDigitContainer >
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthReentrantAlgorithm.h
MdtRdoToMdtDigit::~MdtRdoToMdtDigit
virtual ~MdtRdoToMdtDigit()=default
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
MdtDigitCollection
Definition: MdtDigitCollection.h:18
MdtDigitContainer.h
MdtRdoToMdtDigit::m_mdtDigitKey
SG::WriteHandleKey< MdtDigitContainer > m_mdtDigitKey
Definition: MdtRdoToMdtDigit.h:30
MdtRdoToMdtDigit
Definition: MdtRdoToMdtDigit.h:16
IdentifierHash
Definition: IdentifierHash.h:38
MdtRdoToMdtDigit::m_mdtRdoKey
SG::ReadHandleKey< MdtCsmContainer > m_mdtRdoKey
Definition: MdtRdoToMdtDigit.h:29
IMuonIdHelperSvc.h
ServiceHandle< Muon::IMuonIdHelperSvc >