From b7ffcebfe55984fed164abb646fd260bc0acc580 Mon Sep 17 00:00:00 2001 From: Vakho Tsulaia <vakhtang.tsulaia@cern.ch> Date: Fri, 15 Mar 2019 22:52:23 +0100 Subject: [PATCH] Migrated 5 tools from the TrkValTools package to xAOD::EventInfo --- .../BasicValTrkParticleNtupleTool.h | 6 ++- .../TrkValTools/JetTruthNtupleTool.h | 6 ++- .../TrkValTools/TrkValTools/TrackDiff.h | 9 ++-- .../TrkValTools/TrkValTools/TruthNtupleTool.h | 6 ++- .../src/BasicValTrkParticleNtupleTool.cxx | 46 +++++++++---------- .../src/EventToTrackLinkNtupleTool.cxx | 9 +--- .../TrkValTools/src/JetTruthNtupleTool.cxx | 25 ++++------ .../TrkValTools/src/TrackDiff.cxx | 18 +++----- .../src/TrackInformationNtupleTool.cxx | 46 +++++++++---------- .../src/TrackInformationNtupleTool.h | 5 +- .../TrkValTools/src/TruthNtupleTool.cxx | 19 ++++---- 11 files changed, 91 insertions(+), 104 deletions(-) diff --git a/Tracking/TrkValidation/TrkValTools/TrkValTools/BasicValTrkParticleNtupleTool.h b/Tracking/TrkValidation/TrkValTools/TrkValTools/BasicValTrkParticleNtupleTool.h index aa3497d30e6..c8bf1012c25 100644 --- a/Tracking/TrkValidation/TrkValTools/TrkValTools/BasicValTrkParticleNtupleTool.h +++ b/Tracking/TrkValidation/TrkValTools/TrkValTools/BasicValTrkParticleNtupleTool.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ #ifndef Trk_BasicValTrkParticleNtupleTool_h @@ -9,6 +9,8 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "GaudiKernel/ToolHandle.h" #include "TrkValInterfaces/IValidationNtupleTool.h" +#include "StoreGate/ReadHandleKey.h" +#include "xAODEventInfo/EventInfo.h" #include <vector> class TTree; @@ -163,6 +165,8 @@ private: mutable unsigned long m_idHitPattern; //!< bit word carrying information about hit layers static const float s_errorEntry; //!< error entry costant + + SG::ReadHandleKey<xAOD::EventInfo> m_evt {this, "EvtInfo", "EventInfo", "EventInfo name"}; }; diff --git a/Tracking/TrkValidation/TrkValTools/TrkValTools/JetTruthNtupleTool.h b/Tracking/TrkValidation/TrkValTools/TrkValTools/JetTruthNtupleTool.h index 50c3ea365e2..fd7e6682fd7 100644 --- a/Tracking/TrkValidation/TrkValTools/TrkValTools/JetTruthNtupleTool.h +++ b/Tracking/TrkValidation/TrkValTools/TrkValTools/JetTruthNtupleTool.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ ////////////////////////////////////////////////////////////////// @@ -16,6 +16,8 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "GaudiKernel/ToolHandle.h" +#include "StoreGate/ReadHandleKey.h" +#include "xAODEventInfo/EventInfo.h" #include "TrkValInterfaces/IJetTruthNtupleTool.h" #include <vector> @@ -72,6 +74,8 @@ private: mutable float m_mc_jetThrust; mutable float m_mc_jetEnergy; mutable float m_mc_jetMomentum; + + SG::ReadHandleKey<xAOD::EventInfo> m_evt {this, "EvtInfo", "EventInfo", "EventInfo name"}; }; diff --git a/Tracking/TrkValidation/TrkValTools/TrkValTools/TrackDiff.h b/Tracking/TrkValidation/TrkValTools/TrkValTools/TrackDiff.h index 019f3121bed..1804399f4df 100755 --- a/Tracking/TrkValidation/TrkValTools/TrkValTools/TrackDiff.h +++ b/Tracking/TrkValidation/TrkValTools/TrkValTools/TrackDiff.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ ////////////////////////////////////////////////////////////////// @@ -19,9 +19,10 @@ #include "TrkValInterfaces/ITrackDiff.h" #include "TrkEventPrimitives/TrackStateDefs.h" #include "TrkValEvent/TrackStateData.h" -//#include <vector> #include "AthContainers/DataVector.h" -//class INTupleSvc; +#include "StoreGate/ReadHandleKey.h" +#include "xAODEventInfo/EventInfo.h" + class AtlasDetectorID; class TTree; @@ -153,6 +154,8 @@ private: mutable int m_PRD_MismatchesSum[Trk::TrackState::NumberOfMeasurementTypes]; mutable int m_trackSum; + SG::ReadHandleKey<xAOD::EventInfo> m_evt {this, "EvtInfo", "EventInfo", "EventInfo name"}; + /** extract data from a Trk::Track into a list of Trk::TrackStateData */ DataVector< const Trk::TrackStateData >* extractDataFromTrack( const Trk::Track& ) const; diff --git a/Tracking/TrkValidation/TrkValTools/TrkValTools/TruthNtupleTool.h b/Tracking/TrkValidation/TrkValTools/TrkValTools/TruthNtupleTool.h index 37f940a5e73..56e817ab625 100644 --- a/Tracking/TrkValidation/TrkValTools/TrkValTools/TruthNtupleTool.h +++ b/Tracking/TrkValidation/TrkValTools/TrkValTools/TruthNtupleTool.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ ////////////////////////////////////////////////////////////////// @@ -17,6 +17,8 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "GaudiKernel/ToolHandle.h" +#include "StoreGate/ReadHandleKey.h" +#include "xAODEventInfo/EventInfo.h" #include "TrkValInterfaces/ITruthNtupleTool.h" #include "TrkValInterfaces/ITrackTruthClassifier.h" @@ -99,6 +101,8 @@ private: mutable std::vector< std::vector<TH1D*> > m_truthTrackCounts; mutable std::vector<const Trk::ITrackTruthClassifier*> m_trackTruthClassifiers; //!< the truth classifiers + + SG::ReadHandleKey<xAOD::EventInfo> m_evt {this, "EvtInfo", "EventInfo", "EventInfo name"}; }; diff --git a/Tracking/TrkValidation/TrkValTools/src/BasicValTrkParticleNtupleTool.cxx b/Tracking/TrkValidation/TrkValTools/src/BasicValTrkParticleNtupleTool.cxx index c953054a704..d784fc15a18 100644 --- a/Tracking/TrkValidation/TrkValTools/src/BasicValTrkParticleNtupleTool.cxx +++ b/Tracking/TrkValidation/TrkValTools/src/BasicValTrkParticleNtupleTool.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ ////////////////////////////////////////////////////////////////// @@ -13,16 +13,11 @@ #include "TTree.h" -//Gaudi #include "GaudiKernel/ITHistSvc.h" #include "EventPrimitives/EventPrimitivesHelpers.h" #include "TrkParticleBase/TrackParticleBase.h" -// #include "TrkParameters/Perigee.h" #include "TrkTrackSummary/TrackSummary.h" - -#include "EventInfo/EventInfo.h" -#include "EventInfo/EventID.h" #include "TrkValTools/BasicValTrkParticleNtupleTool.h" #include <bitset> @@ -85,6 +80,8 @@ Trk::BasicValTrkParticleNtupleTool::~BasicValTrkParticleNtupleTool() {} // initialize StatusCode Trk::BasicValTrkParticleNtupleTool::initialize() { + ATH_CHECK( m_evt.initialize() ); + // create ntuple tree if (m_bookNewNtuple) { // --------------------------- @@ -92,7 +89,7 @@ StatusCode Trk::BasicValTrkParticleNtupleTool::initialize() { ITHistSvc *tHistSvc; StatusCode sc = service("THistSvc", tHistSvc); if (sc.isFailure()) { - msg(MSG::ERROR) << "Unable to retrieve pointer to THistSvc" << endmsg; + ATH_MSG_ERROR("Unable to retrieve pointer to THistSvc"); return sc; } @@ -105,7 +102,7 @@ StatusCode Trk::BasicValTrkParticleNtupleTool::initialize() { std::string fullNtupleName = "/"+m_ntupleFileName+"/"+m_ntupleDirName+"/"+m_ntupleTreeName; sc = tHistSvc->regTree(fullNtupleName, m_nt); if (sc.isFailure()) { - msg(MSG::ERROR) << "Unable to register TTree : " << fullNtupleName << endmsg; + ATH_MSG_ERROR("Unable to register TTree : " << fullNtupleName); return sc; } // add the ntuple branches (this function has to be called by the client of this tool, if m_bookNewNtuple is set to false...) @@ -121,7 +118,7 @@ StatusCode Trk::BasicValTrkParticleNtupleTool::initialize() { /////////////////////////////////////// StatusCode Trk::BasicValTrkParticleNtupleTool::finalize() { - msg(MSG::DEBUG) << "start finalize() in " << name() << endmsg; + ATH_MSG_DEBUG("start finalize() in " << name()); if (m_nt) { delete m_nt; m_nt = 0; @@ -181,7 +178,7 @@ StatusCode Trk::BasicValTrkParticleNtupleTool::addNtupleItems( TTree* tree ) con StatusCode Trk::BasicValTrkParticleNtupleTool::writeTrackParticleData ( const Trk::TrackParticleBase& track) const { if (!m_nt) { - msg(MSG::ERROR) << "writeTrackParticleData(...) can only be used, if property BookNewNtuple is set to true" << endmsg; + ATH_MSG_ERROR("writeTrackParticleData(...) can only be used, if property BookNewNtuple is set to true" ); return StatusCode::FAILURE; } StatusCode sc; @@ -202,37 +199,36 @@ StatusCode Trk::BasicValTrkParticleNtupleTool::fillTrackParticleData ( // --------------------------------------- // detect new event, reset TrackParticle counter if new event - const EventInfo* eventInfo; - if ((evtStore()->retrieve(eventInfo)).isFailure()) { - msg(MSG::WARNING) << "Could not retrieve event info" << endmsg; + SG::ReadHandle<xAOD::EventInfo> evt(m_evt); + if (!evt.isValid()) { + ATH_MSG_WARNING("Could not retrieve event info"); m_runNumber = (int)s_errorEntry; m_eventNumber = (int)s_errorEntry; return StatusCode::FAILURE; } - const EventID* myEventID=eventInfo->event_ID(); - if (m_lastEventNumber!=myEventID->event_number()) { + if (m_lastEventNumber!=evt->eventNumber()) { // we have a new event, reset TrackParticleID: m_TrackIDcounter = 0; - m_lastEventNumber = myEventID->event_number(); + m_lastEventNumber = evt->eventNumber(); } m_TrackIDcounter++; m_TrackID = (unsigned char)m_TrackIDcounter; - m_eventNumber = myEventID->event_number(); - m_runNumber = myEventID->run_number(); + m_eventNumber = evt->eventNumber(); + m_runNumber = evt->runNumber(); ATH_MSG_VERBOSE ("Event: " << m_eventNumber << ", Run: "<< m_runNumber << " TrackID: " << m_TrackID); //---------------------------------------------- // fill track parameters in ntuple const Trk::Perigee* perpars = track.perigee(); - if (perpars != NULL && fillTrkParticlePerigee(perpars).isFailure()) msg(MSG::WARNING) << "Perigee parameters could not be written to ntuple" << endmsg; + if (perpars != NULL && fillTrkParticlePerigee(perpars).isFailure()) ATH_MSG_WARNING("Perigee parameters could not be written to ntuple"); const Trk::TrackSummary* summary = track.trackSummary(); - if((!summary) || fillTrkParticleSummary(summary).isFailure()) msg(MSG::WARNING) << "Summary parameters could not be written to ntuple" << endmsg; + if((!summary) || fillTrkParticleSummary(summary).isFailure()) ATH_MSG_WARNING("Summary parameters could not be written to ntuple"); const Trk::FitQuality* fitQuality = track.fitQuality(); - if((!fitQuality) || fillFitQualityData(fitQuality).isFailure() ) msg(MSG::WARNING) << "Fit Quality data could not be written to ntuple" << endmsg; + if((!fitQuality) || fillFitQualityData(fitQuality).isFailure() ) ATH_MSG_WARNING("Fit Quality data could not be written to ntuple"); return StatusCode::SUCCESS; } @@ -246,7 +242,7 @@ StatusCode Trk::BasicValTrkParticleNtupleTool::fillTrkParticlePerigee(const Trk: ATH_MSG_VERBOSE ("in fillTrackPerigee"); if (!perigee) { - msg(MSG::WARNING) << "Something is wrong - track has no perigee at all!" << endmsg; + ATH_MSG_WARNING("Something is wrong - track has no perigee at all!"); m_Rec_d0 = 0; m_Rec_z0 = 0; m_Rec_phi0 = 0; @@ -287,7 +283,7 @@ StatusCode Trk::BasicValTrkParticleNtupleTool::fillTrkParticleSummary(const Trk: ATH_MSG_VERBOSE ("in fillTrackSummary"); if (!summary) { - msg(MSG::WARNING) << "Something is wrong - track has no summary at all!" << endmsg; + ATH_MSG_WARNING("Something is wrong - track has no summary at all!"); m_numberOfPixelHits = 0; m_numberOfSCTHits = 0; @@ -321,14 +317,14 @@ StatusCode Trk::BasicValTrkParticleNtupleTool::fillTrkParticleSummary(const Trk: StatusCode Trk::BasicValTrkParticleNtupleTool::fillFitQualityData(const Trk::FitQuality* fitQuality) const { if (!fitQuality) { - msg(MSG::WARNING) << "Something is wrong - track has no fit quality data !!" << endmsg; + ATH_MSG_WARNING("Something is wrong - track has no fit quality data !!"); m_chi2 = 0; return StatusCode::FAILURE; } if(fitQuality->numberDoF() == 0) { - msg(MSG::WARNING) << "Number of DOF is zero !! Could not normalize chi2 " << endmsg; + ATH_MSG_WARNING("Number of DOF is zero !! Could not normalize chi2 "); return StatusCode::FAILURE; } diff --git a/Tracking/TrkValidation/TrkValTools/src/EventToTrackLinkNtupleTool.cxx b/Tracking/TrkValidation/TrkValTools/src/EventToTrackLinkNtupleTool.cxx index e895b76abc2..7ececf2ac1f 100644 --- a/Tracking/TrkValidation/TrkValTools/src/EventToTrackLinkNtupleTool.cxx +++ b/Tracking/TrkValidation/TrkValTools/src/EventToTrackLinkNtupleTool.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ ////////////////////////////////////////////////////////////////// @@ -12,16 +12,9 @@ /////////////////////////////////////////////////////////////////// #include "TTree.h" -//Gaudi -// #include "GaudiKernel/SmartDataPtr.h" #include "GaudiKernel/ITHistSvc.h" -// #include "GaudiKernel/ISvcLocator.h" -// #include "GaudiKernel/PropertyMgr.h" #include "TrkValTools/EventToTrackLinkNtupleTool.h" #include "CommissionEvent/ComTime.h" -#include "EventInfo/EventInfo.h" -#include "EventInfo/EventID.h" -#include "EventInfo/TriggerInfo.h" const std::string Trk::EventToTrackLinkNtupleTool::s_trackTypeName = "Trk::Track"; const std::string Trk::EventToTrackLinkNtupleTool::s_trkParticleTypeName = "Rec::TrackParticle"; diff --git a/Tracking/TrkValidation/TrkValTools/src/JetTruthNtupleTool.cxx b/Tracking/TrkValidation/TrkValTools/src/JetTruthNtupleTool.cxx index a98b8e7b269..51a1d14ff97 100644 --- a/Tracking/TrkValidation/TrkValTools/src/JetTruthNtupleTool.cxx +++ b/Tracking/TrkValidation/TrkValTools/src/JetTruthNtupleTool.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ ////////////////////////////////////////////////////////////////// @@ -9,11 +9,8 @@ // (c) ATLAS Detector software /////////////////////////////////////////////////////////////////// -//Gaudi -// #include "GaudiKernel/SmartDataPtr.h" #include "GaudiKernel/ITHistSvc.h" #include "GaudiKernel/ISvcLocator.h" -// #include "GaudiKernel/PropertyMgr.h" // Trk #include "TrkValTools/JetTruthNtupleTool.h" @@ -22,9 +19,6 @@ // Truth #include "TrkTruthData/TrackTruth.h" -#include "EventInfo/EventInfo.h" -#include "EventInfo/EventID.h" - #include "HepMC/GenParticle.h" #include <TGraphAsymmErrors.h> @@ -62,6 +56,8 @@ Trk::JetTruthNtupleTool::~JetTruthNtupleTool() {} // initialize StatusCode Trk::JetTruthNtupleTool::initialize() { + ATH_CHECK( m_evt.initialize() ); + // --------------------------- // retrieve pointer to THistSvc ITHistSvc *tHistSvc; @@ -125,22 +121,17 @@ StatusCode Trk::JetTruthNtupleTool::writeJetTruthData ( const int& nTruthRecordsAtCurrentEvent // const std::vector<unsigned int>& /*particleToJetIndex*/ ) const { - - StatusCode sc; - ATH_MSG_VERBOSE ( "in writeJetTruthData(...)" ); // --------------------------------------- // fill event data - const EventInfo* eventInfo = nullptr; - sc = evtStore()->retrieve(eventInfo); - if (sc.isFailure()) { + SG::ReadHandle<xAOD::EventInfo> evt(m_evt); + if (!evt.isValid()) { ATH_MSG_WARNING ( "Could not retrieve event info" ); + return StatusCode::FAILURE; } - const EventID* myEventID=eventInfo->event_ID(); - - m_runNumber=myEventID->run_number(); - m_eventNumber=myEventID->event_number(); + m_runNumber=evt->runNumber(); + m_eventNumber=evt->eventNumber(); for (std::vector<Trk::GenParticleJet>::const_iterator itJet = jets.begin(); itJet < jets.end(); ++itJet ) { diff --git a/Tracking/TrkValidation/TrkValTools/src/TrackDiff.cxx b/Tracking/TrkValidation/TrkValTools/src/TrackDiff.cxx index 79ca8c0ae8e..beb3919dd43 100755 --- a/Tracking/TrkValidation/TrkValTools/src/TrackDiff.cxx +++ b/Tracking/TrkValidation/TrkValTools/src/TrackDiff.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ ////////////////////////////////////////////////////////////////// @@ -29,8 +29,6 @@ #include "TrkTrack/Track.h" #include "AtlasDetDescr/AtlasDetectorID.h" -#include "EventInfo/EventInfo.h" -#include "EventInfo/EventID.h" // constructor Trk::TrackDiff::TrackDiff( @@ -106,6 +104,8 @@ Trk::TrackDiff::~TrackDiff() {} // initialize StatusCode Trk::TrackDiff::initialize() { + ATH_CHECK( m_evt.initialize() ); + StatusCode sc; if (m_writeNtuple) { // --------------------------- @@ -232,22 +232,18 @@ StatusCode Trk::TrackDiff::diff ( const Trk::Track& referenceTrack, const Trk::Track& comparedTrack ) const { - StatusCode sc; - ATH_MSG_VERBOSE ( "in diff(trk, trk)" ); resetVariables(); // --------------------------------------- // fill event data - const EventInfo* eventInfo; - sc = evtStore()->retrieve(eventInfo); - if (sc.isFailure()) { + SG::ReadHandle<xAOD::EventInfo> evt(m_evt); + if (!evt.isValid()) { ATH_MSG_ERROR ("Could not retrieve event info"); + return StatusCode::FAILURE; } - const EventID* myEventID=eventInfo->event_ID(); - - m_eventNumber = myEventID->event_number(); + m_eventNumber = evt->eventNumber(); if (referenceTrack.perigeeParameters()) { m_trackPhi = referenceTrack.perigeeParameters()->parameters()[Trk::phi0]; m_trackEta = referenceTrack.perigeeParameters()->eta(); diff --git a/Tracking/TrkValidation/TrkValTools/src/TrackInformationNtupleTool.cxx b/Tracking/TrkValidation/TrkValTools/src/TrackInformationNtupleTool.cxx index 099f8f8450a..aa3fc54c057 100644 --- a/Tracking/TrkValidation/TrkValTools/src/TrackInformationNtupleTool.cxx +++ b/Tracking/TrkValidation/TrkValTools/src/TrackInformationNtupleTool.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ ////////////////////////////////////////////////////////////////// @@ -21,8 +21,6 @@ #include "TrkTrack/TrackInfo.h" #include "TrkTrackSummary/TrackSummary.h" #include "TrkFitterUtils/ProtoTrackStateOnSurface.h" -#include "EventInfo/EventInfo.h" -#include "EventInfo/EventID.h" // constructor Trk::TrackInformationNtupleTool::TrackInformationNtupleTool( @@ -57,7 +55,7 @@ Trk::TrackInformationNtupleTool::~TrackInformationNtupleTool() {} /////////////////////////////////////// StatusCode Trk::TrackInformationNtupleTool::initialize() { - ATH_MSG_DEBUG ("nothing specific initialized in " << name()); + ATH_CHECK( m_evt.initialize() ); return StatusCode::SUCCESS; } @@ -103,25 +101,24 @@ StatusCode Trk::TrackInformationNtupleTool::fillTrackData ( ATH_MSG_VERBOSE ("in fillTrackData(trk, indx)"); // --------------------------------------- // detect new event, reset Track counter if new event - const EventInfo* eventInfo; - if ((evtStore()->retrieve(eventInfo)).isFailure()) { + SG::ReadHandle<xAOD::EventInfo> evt(m_evt); + if(!evt.isValid()) { msg(MSG::WARNING) << "Could not retrieve event info" << endmsg; m_runNumber = (int)s_errorEntry; m_eventNumber = (int)s_errorEntry; } else { - const EventID* myEventID=eventInfo->event_ID(); - if (m_lastEventNumber!=myEventID->event_number()) { + if (m_lastEventNumber!=evt->eventNumber()) { // we have a new event, reset TrackID: m_TrackIDcounter = 0; - m_lastEventNumber = myEventID->event_number(); + m_lastEventNumber = evt->eventNumber(); } // --------------------------------------------- // track id (increase if a new iteration was started = iterationIndex==0) if (iterationIndex == 0) m_TrackIDcounter++; m_TrackID = m_TrackIDcounter; m_iterIndex = iterationIndex; - m_eventNumber = myEventID->event_number(); - m_runNumber = myEventID->run_number(); + m_eventNumber = evt->eventNumber(); + m_runNumber = evt->runNumber(); } ATH_MSG_VERBOSE ("Event: " << m_eventNumber << ", Run: " << m_runNumber << " TrackID: " << m_TrackID @@ -178,22 +175,21 @@ StatusCode Trk::TrackInformationNtupleTool::fillTrackParticleData ATH_MSG_VERBOSE ("in fillTrackData(trk, indx)"); // --------------------------------------- // detect new event, reset Track counter if new event - const EventInfo* eventInfo; - if ((evtStore()->retrieve(eventInfo)).isFailure()) { + SG::ReadHandle<xAOD::EventInfo> evt(m_evt); + if(!evt.isValid()) { msg(MSG::WARNING) << "Could not retrieve event info" << endmsg; m_runNumber = (int)s_errorEntry; m_eventNumber = (int)s_errorEntry; } else { - const EventID* myEventID=eventInfo->event_ID(); - if (m_lastEventNumber!=myEventID->event_number()) { + if (m_lastEventNumber!=evt->eventNumber()) { // we have a new event, reset TrackID: m_TrackIDcounter = 0; - m_lastEventNumber = myEventID->event_number(); + m_lastEventNumber = evt->eventNumber(); } // --------------------------------------------- m_TrackID = m_TrackIDcounter++; - m_eventNumber = myEventID->event_number(); - m_runNumber = myEventID->run_number(); + m_eventNumber = evt->eventNumber(); + m_runNumber = evt->runNumber(); } ATH_MSG_VERBOSE ("Event: " << m_eventNumber << ", Run: " << m_runNumber << " TrackID: " << m_TrackID); @@ -238,17 +234,17 @@ StatusCode Trk::TrackInformationNtupleTool::fillProtoTrajectoryData //const Trk::FitterStatusCode fitStatCode) const { ATH_MSG_VERBOSE ("in fillProtoTrajectoryData(protoTraj, indx)"); - const EventInfo* eventInfo; - if ((evtStore()->retrieve(eventInfo)).isFailure()) { + SG::ReadHandle<xAOD::EventInfo> evt(m_evt); + if(!evt.isValid()) { msg(MSG::ERROR) << "Could not retrieve event info" << endmsg; + return StatusCode::FAILURE; } - const EventID* myEventID=eventInfo->event_ID(); - if (m_lastEventNumber!=myEventID->event_number()) { + if (m_lastEventNumber!=evt->eventNumber()) { // we have a new event! // reset TrackID: m_TrackIDcounter = 0; - m_lastEventNumber = myEventID->event_number(); + m_lastEventNumber = evt->eventNumber(); } // --------------------------------------------- // track id (increase if a new iteration was started = iterationIndex==0) @@ -257,8 +253,8 @@ StatusCode Trk::TrackInformationNtupleTool::fillProtoTrajectoryData } m_TrackID = m_TrackIDcounter; m_iterIndex = iterationIndex; - m_eventNumber = myEventID->event_number(); - m_runNumber = myEventID->run_number(); + m_eventNumber = evt->eventNumber(); + m_runNumber = evt->runNumber(); ATH_MSG_VERBOSE ("Event: " << m_eventNumber << MSG::VERBOSE << " TrackID: " << m_TrackID << " iteration index: " << m_iterIndex); m_fitStatusCode = fitStatCode; diff --git a/Tracking/TrkValidation/TrkValTools/src/TrackInformationNtupleTool.h b/Tracking/TrkValidation/TrkValTools/src/TrackInformationNtupleTool.h index 8e02cd80e8d..ef193bad9fd 100644 --- a/Tracking/TrkValidation/TrkValTools/src/TrackInformationNtupleTool.h +++ b/Tracking/TrkValidation/TrkValTools/src/TrackInformationNtupleTool.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ ////////////////////////////////////////////////////////////////// @@ -15,6 +15,8 @@ #include "AthenaBaseComps/AthAlgTool.h" #include "TrkValInterfaces/ITrackValidationNtupleTool.h" +#include "StoreGate/ReadHandleKey.h" +#include "xAODEventInfo/EventInfo.h" namespace Trk { @@ -95,6 +97,7 @@ private: mutable int m_ndof; //!< number of degrees of freedom of track fit mutable int m_nHits; //!< number of measurements on the track (including outliers) + SG::ReadHandleKey<xAOD::EventInfo> m_evt {this, "EvtInfo", "EventInfo", "EventInfo name"}; }; diff --git a/Tracking/TrkValidation/TrkValTools/src/TruthNtupleTool.cxx b/Tracking/TrkValidation/TrkValTools/src/TruthNtupleTool.cxx index 79970a52b49..a0e5117a52c 100644 --- a/Tracking/TrkValidation/TrkValTools/src/TruthNtupleTool.cxx +++ b/Tracking/TrkValidation/TrkValTools/src/TruthNtupleTool.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ ////////////////////////////////////////////////////////////////// @@ -21,8 +21,6 @@ // Truth #include "TrkTruthData/TrackTruth.h" -#include "EventInfo/EventInfo.h" -#include "EventInfo/EventID.h" #include "HepMC/GenParticle.h" #include "HepMC/GenVertex.h" @@ -81,6 +79,8 @@ Trk::TruthNtupleTool::~TruthNtupleTool() {} // initialize StatusCode Trk::TruthNtupleTool::initialize() { + ATH_CHECK( m_evt.initialize() ); + if (m_etaBins.size()<2) { ATH_MSG_ERROR ("Vector of eta bins too small"); return StatusCode::FAILURE; @@ -254,20 +254,17 @@ StatusCode Trk::TruthNtupleTool::finalize() { StatusCode Trk::TruthNtupleTool::writeTruthData ( const std::vector< Trk::ValidationTrackTruthData >& truthData) const { - StatusCode sc; - ATH_MSG_DEBUG ("in writeTruthData(...) with ValTrackTruthData size = "<<truthData.size()); // --------------------------------------- // fill event data - const EventInfo* eventInfo = nullptr; - sc = evtStore()->retrieve(eventInfo); - if (sc.isFailure()) { + SG::ReadHandle<xAOD::EventInfo> evt(m_evt); + if (!evt.isValid()) { ATH_MSG_WARNING ("Could not retrieve event info"); + return StatusCode::FAILURE; } - const EventID* myEventID=eventInfo->event_ID(); - m_runNumber=myEventID->run_number(); - m_eventNumber=myEventID->event_number(); + m_runNumber=evt->runNumber(); + m_eventNumber=evt->eventNumber(); const HepMC::GenParticle* genParticle = 0; const Trk::TrackParameters* truePerigee = 0; -- GitLab