22 const T*& contPtr)
const {
24 ATH_MSG_DEBUG(
"No key of type "<<
typeid(T).name()<<
" has been set. Set to nullptr");
26 return StatusCode::SUCCESS;
30 contPtr = handle.
cptr();
31 return StatusCode::SUCCESS;
37 return StatusCode::FAILURE;
50 return StatusCode::SUCCESS;
70 auto [combis, houghDataPerSectorVec] =
m_layerTool->find(mdtPrds, cscPrds, tgcPrds, rpcPrds, stgcPrds, mmPrds, ctx);
73 if (Handle.
record(std::move(combis)).isFailure()) {
74 ATH_MSG_WARNING(
"Failed to record MuonPatternCombinationCollection at MuonLayerHoughCombis");
76 ATH_MSG_DEBUG(
"Recorded MuonPatternCombinationCollection at MuonLayerHoughCombis: size " << Handle->size());
78 ATH_MSG_INFO(
"Number of MuonPatternCombinations " << Handle->size() << std::endl <<
m_printer->print(*Handle));
83 ATH_CHECK(Handle.
record(std::make_unique<MuonPatternCombinationCollection>()));
88 if (houghDataPerSectorVec) {
92 ATH_CHECK(handle.
record(std::make_unique<Muon::HoughDataPerSectorVec>()));
94 return StatusCode::SUCCESS;
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_VERBOSE(x)
#define ATH_MSG_WARNING(x)
Handle class for reading from StoreGate.
bool msgLvl(const MSG::Level lvl) const
An algorithm that can be simultaneously executed in multiple threads.
SG::ReadHandleKey< Muon::RpcPrepDataContainer > m_keyRpc
SG::WriteHandleKey< Muon::HoughDataPerSectorVec > m_houghDataPerSectorVecKey
SG::WriteHandleKey< MuonPatternCombinationCollection > m_combis
virtual StatusCode execute(const EventContext &ctx) const override
PublicToolHandle< Muon::MuonEDMPrinterTool > m_printer
StatusCode retrieveContainer(const EventContext &ctx, const SG::ReadHandleKey< T > &key, const T *&contPtr) const
SG::ReadHandleKey< Muon::MMPrepDataContainer > m_keyMM
ToolHandle< Muon::IMuonHoughPatternFinderTool > m_layerTool
SG::ReadHandleKey< Muon::MdtPrepDataContainer > m_keyMdt
SG::ReadHandleKey< Muon::TgcPrepDataContainer > m_keyTgc
SG::ReadHandleKey< Muon::CscPrepDataContainer > m_keyCsc
Gaudi::Property< bool > m_printSummary
MuonLayerHoughAlg(const std::string &name, ISvcLocator *pSvcLocator)
virtual StatusCode initialize() override
SG::ReadHandleKey< Muon::sTgcPrepDataContainer > m_keysTgc
Property holding a SG store/key/clid from which a ReadHandle is made.
virtual bool isValid() override final
Can the handle be successfully dereferenced?
const_pointer_type cptr()
Dereference the pointer.
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.
MuonPrepDataContainerT< RpcPrepData > RpcPrepDataContainer
MuonPrepDataContainerT< TgcPrepData > TgcPrepDataContainer
MuonPrepDataContainerT< MdtPrepData > MdtPrepDataContainer
MuonPrepDataContainerT< sTgcPrepData > sTgcPrepDataContainer
MuonPrepDataContainerT< MMPrepData > MMPrepDataContainer
MuonPrepDataContainerT< CscPrepData > CscPrepDataContainer