diff --git a/Tracking/TrkValidation/TrkValTools/TrkValTools/BasicValTrkParticleNtupleTool.h b/Tracking/TrkValidation/TrkValTools/TrkValTools/BasicValTrkParticleNtupleTool.h index aa3497d30e6fce292726c2d0c35245c3621b5dbd..c8bf1012c2574c38fd08f347bf50ad7d42438827 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 50c3ea365e252e3d8762ae2cd4fcb45c4ab36ade..fd7e6682fd74d71f7d57cd6afc98afaaf3afca1a 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 019f3121bed7c91314bf21809b47b4e94a3fb027..1804399f4dff2d1ee7db3244dd61012d7e3aa182 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 37f940a5e7325b1b7c818321368aeb142696b618..56e817ab62550492ac392974696683947e19ec7a 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 c953054a7040536fcb3148b458a5b6bbe1c2e34f..d784fc15a18013c930d3b7c38861554af679d981 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 e895b76abc2540a7fef29df6fd95cb55a3ca64c5..7ececf2ac1fe9cfddf9ed4d8cb0198bf8ce7ba9c 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 a98b8e7b2699ce0f8a65a85cf2c3a93890c0a92b..51a1d14ff97fff63c89d1b7628f45afbeddd35f3 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 79ca8c0ae8ee6fc821e1d427a64d38a6a323e1b8..beb3919dd431d550d2fcdfd504fade23fb819ded 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 099f8f8450a8aee5ca1b4c3fc88c5570ee18eb1b..aa3fc54c05767ce0e8151d585a7dcb98597b1ec8 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 8e02cd80e8d3299d249724423ef18ce5cfcb546d..ef193bad9fd37830c5078c11af472cfe40dc4551 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 79970a52b49dda71ed7a59e9d4c473b406c8098c..a0e5117a52c11d4dad11869580cb5f95eb68d66e 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;