From eaf10e32c11050cda038ddbd2511789fd3201991 Mon Sep 17 00:00:00 2001 From: Masato Aoki <masato.aoki@cern.ch> Date: Fri, 28 Feb 2020 21:36:31 +0100 Subject: [PATCH] use MT ReadHandle --- .../TrigT1TGC/TrigT1TGC/LVL1TGCTrigger.h | 33 ++++++++++------- .../TrigT1/TrigT1TGC/src/LVL1TGCTrigger.cxx | 37 ++++++++----------- 2 files changed, 35 insertions(+), 35 deletions(-) diff --git a/Trigger/TrigT1/TrigT1TGC/TrigT1TGC/LVL1TGCTrigger.h b/Trigger/TrigT1/TrigT1TGC/TrigT1TGC/LVL1TGCTrigger.h index dd080508b35..fc405b8bbdf 100644 --- a/Trigger/TrigT1/TrigT1TGC/TrigT1TGC/LVL1TGCTrigger.h +++ b/Trigger/TrigT1/TrigT1TGC/TrigT1TGC/LVL1TGCTrigger.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ // LVL1TGCTrigger.h @@ -31,15 +31,22 @@ #include "StoreGate/ReadCondHandle.h" #include "MuonCondSvc/TGCTriggerData.h" +#include "StoreGate/ReadHandleKey.h" +#include "StoreGate/WriteHandleKey.h" + #include "MuonDigitContainer/TgcDigit.h" #include "TrigConfInterfaces/ILVL1ConfigSvc.h" #include "TrigT1TGC/TGCArguments.hh" +#include "MuonDigitContainer/TgcDigitContainer.h" + +// Tile-Muon +#include "TileEvent/TileMuContainer.h" +#include "TileEvent/TileMuonReceiverObj.h" class TgcRdo; class TgcRawData; class ITGCcablingSvc; -class TgcDigitContainer; namespace LVL1TGCTrigger { @@ -83,10 +90,10 @@ namespace LVL1TGCTrigger { StatusCode finalize() ; private: - StatusCode processOneBunch(const DataHandle<TgcDigitContainer>&, + StatusCode processOneBunch(const TgcDigitContainer*, LVL1MUONIF::Lvl1MuCTPIInput*, LVL1MUONIF::Lvl1MuCTPIInputPhase1*); - void doMaskOperation(const DataHandle<TgcDigitContainer>& ,std::map<Identifier, int>& ); + void doMaskOperation(const TgcDigitContainer* ,std::map<Identifier, int>& ); void fillTGCEvent(std::map<Identifier, int>& , TGCEvent&); // Fill TMDB event data @@ -126,19 +133,13 @@ namespace LVL1TGCTrigger { // Properties - + // Location of LVL1MUONIF::Lvl1MuSectorLogicData (output from SL) StringProperty m_keyMuCTPIInput_TGC{this,"MuCTPIInput_TGC","L1MuctpiStoreTGC"}; - + // Version of Coincidence Window StringProperty m_VerCW{this,"VersionCW","00_07_0022"}; - - // Location of TgcDigitContainer - StringProperty m_keyTgcDigit{this,"InputData_perEvent","TGC_DIGITS"}; - - // Location of TileMuonReceiverContainer - StringProperty m_keyTileMu{this,"TileMuRcv_Input","TileMuRcvCnt"}; - + StringProperty m_MaskFileName{this,"MaskFileName",""}; //!< property, see @link LVL1TGCTrigger::LVL1TGCTrigger @endlink StringProperty m_MaskFileName12{this,"MaskFileName12",""}; //!< property, see @link LVL1TGCTrigger::LVL1TGCTrigger @endlink ShortProperty m_CurrentBunchTag{this,"CurrentBunchTag",TgcDigit::BC_CURRENT}; //!< property, see @link LVL1TGCTrigger::LVL1TGCTrigger @endlink @@ -182,10 +183,14 @@ namespace LVL1TGCTrigger { TGCArguments m_tgcArgs; TGCArguments* tgcArgs(); - + + + SG::ReadHandleKey<TgcDigitContainer> m_keyTgcDigit{this,"InputData_perEvent","TGC_DIGITS","Location of TgcDigitContainer"}; + SG::ReadHandleKey<TileMuonReceiverContainer> m_keyTileMu{this,"TileMuRcv_Input","TileMuRcvCnt","Location of TileMuonReceiverContainer"}; SG::ReadCondHandleKey<TGCTriggerData> m_readCondKey{this,"ReadCondKey","TGCTriggerData"}; SG::WriteHandleKey<LVL1MUONIF::Lvl1MuCTPIInput> m_muctpiKey{this, "MuctpiLocationTGC", "L1MuctpiStoreTGC", "Location of muctpi for Tgc"}; SG::WriteHandleKey<LVL1MUONIF::Lvl1MuCTPIInputPhase1> m_muctpiPhase1Key{this, "MuctpiPhase1LocationTGC", "L1MuctpiStoreTGC", "Location of muctpiPhase1 for Tgc"}; + }; // class LVL1TGCTrigger inline TGCArguments* LVL1TGCTrigger::tgcArgs() { diff --git a/Trigger/TrigT1/TrigT1TGC/src/LVL1TGCTrigger.cxx b/Trigger/TrigT1/TrigT1TGC/src/LVL1TGCTrigger.cxx index e8b82b44d2d..7215f8e6bf1 100644 --- a/Trigger/TrigT1/TrigT1TGC/src/LVL1TGCTrigger.cxx +++ b/Trigger/TrigT1/TrigT1TGC/src/LVL1TGCTrigger.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ // STL @@ -24,11 +24,6 @@ #include "TrigT1TGC/TGCCoincidence.hh" #include "TrigT1TGC/TGCTMDBOut.h" -// Tile-Muon -#include "TileEvent/TileMuContainer.h" -#include "TileEvent/TileMuonReceiverObj.h" - - // Athena/Gaudi #include "GaudiKernel/MsgStream.h" #include "StoreGate/StoreGate.h" @@ -115,7 +110,7 @@ namespace LVL1TGCTrigger { m_tgcArgs.set_TILE_MU( m_TILEMU.value() && m_tgcArgs.USE_INNER() ); m_tgcArgs.set_USE_CONDDB( true ); m_tgcArgs.set_useRun3Config( m_useRun3Config.value() ); - + // TrigConfigSvc StatusCode sc = m_configSvc.retrieve(); if (sc.isFailure()) { @@ -144,6 +139,8 @@ namespace LVL1TGCTrigger { ATH_MSG_DEBUG("TGCcablingServerSvc not yet configured; postone TGCcabling initialization at first event."); } + ATH_CHECK(m_keyTgcDigit.initialize()); + ATH_CHECK(m_keyTileMu.initialize()); ATH_CHECK(m_muctpiPhase1Key.initialize(tgcArgs()->useRun3Config())); ATH_CHECK(m_muctpiKey.initialize(!tgcArgs()->useRun3Config())); @@ -224,12 +221,12 @@ namespace LVL1TGCTrigger { } } - const DataHandle<TgcDigitContainer> tgc_container; - sc = evtStore()->retrieve(tgc_container, m_keyTgcDigit); - if (sc.isFailure()) { - ATH_MSG_FATAL("Cannot retrieve TGC Digit Container"); - return sc; + SG::ReadHandle<TgcDigitContainer> readTgcDigitContainer( m_keyTgcDigit ); + if(!readTgcDigitContainer.isValid()){ + ATH_MSG_ERROR("Cannot retrieve TgcDigitContainer"); + return StatusCode::FAILURE; } + const TgcDigitContainer* tgc_container = readTgcDigitContainer.cptr(); LVL1MUONIF::Lvl1MuCTPIInputPhase1* muctpiinputPhase1 = nullptr; LVL1MUONIF::Lvl1MuCTPIInput* muctpiinput = nullptr; @@ -269,7 +266,7 @@ namespace LVL1TGCTrigger { return sc; } - StatusCode LVL1TGCTrigger::processOneBunch(const DataHandle<TgcDigitContainer>& tgc_container, + StatusCode LVL1TGCTrigger::processOneBunch(const TgcDigitContainer* tgc_container, LVL1MUONIF::Lvl1MuCTPIInput* muctpiinput, LVL1MUONIF::Lvl1MuCTPIInputPhase1* muctpiinputPhase1) { @@ -405,7 +402,7 @@ namespace LVL1TGCTrigger { //////////////////////////////////////////////////////// - void LVL1TGCTrigger::doMaskOperation(const DataHandle<TgcDigitContainer>& tgc_container, + void LVL1TGCTrigger::doMaskOperation(const TgcDigitContainer* tgc_container, std::map<Identifier, int>& TgcDigitIDs) { std::map<Identifier, int>::iterator itCh; @@ -1323,14 +1320,12 @@ namespace LVL1TGCTrigger { // clear TMDB tmdb->eraseOutput(); - // retrive TileMuonReceiverContainer - const DataHandle<TileMuonReceiverContainer> tileMuRecCont; - sc = evtStore()->retrieve(tileMuRecCont, m_keyTileMu); - - if (sc.isFailure()) { - ATH_MSG_WARNING("Cannot retrieve Tile Muon Receiver Container."); - return sc; + SG::ReadHandle<TileMuonReceiverContainer> readTileMuonReceiverContainer(m_keyTileMu); + if(!readTileMuonReceiverContainer.isValid()){ + ATH_MSG_ERROR("Cannot retrieve Tile Muon Receiver Container."); + return StatusCode::FAILURE; } + const TileMuonReceiverContainer* tileMuRecCont = readTileMuonReceiverContainer.cptr(); // loop over all TileMuonReceiverObj in container TileMuonReceiverContainer::const_iterator tmItr = tileMuRecCont->begin(); -- GitLab