From dae0a21e63f2c93ea78384d464fe3b4970aa0f20 Mon Sep 17 00:00:00 2001 From: adbailey <adam.bailey@cern.ch> Date: Wed, 13 Jun 2018 16:55:26 +0200 Subject: [PATCH] Updated TauTrackClassifier for MT. Now the track container is accessed via links from the tau Former-commit-id: f9c8457a109fa0f8a9699984889693953b54f813 --- Reconstruction/tauRec/python/TauRecBuilder.py | 2 +- .../tauRecTools/Root/TauTrackClassifier.cxx | 11 +++++++++-- .../tauRecTools/tauRecTools/TauTrackClassifier.h | 1 - 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/Reconstruction/tauRec/python/TauRecBuilder.py b/Reconstruction/tauRec/python/TauRecBuilder.py index bed71a88cc3d..8382dbf39626 100644 --- a/Reconstruction/tauRec/python/TauRecBuilder.py +++ b/Reconstruction/tauRec/python/TauRecBuilder.py @@ -109,7 +109,7 @@ class TauRecCoreBuilder ( TauRecConfigured ) : tools.append(taualgs.getTauVertexFinder(doUseTJVA=self.do_TJVA)) tools.append(taualgs.getTauAxis()) tools.append(taualgs.getTauTrackFinder(removeDuplicateTracks=(not doMVATrackClassification) )) - #if doMVATrackClassification : tools.append(taualgs.getTauTrackClassifier()) + if doMVATrackClassification : tools.append(taualgs.getTauTrackClassifier()) #tools.append(taualgs.getEnergyCalibrationLC(correctEnergy=True, correctAxis=False, postfix='_onlyEnergy')) #tools.append(taualgs.getCellVariables()) #tools.append(taualgs.getElectronVetoVars()) diff --git a/Reconstruction/tauRecTools/Root/TauTrackClassifier.cxx b/Reconstruction/tauRecTools/Root/TauTrackClassifier.cxx index 0a255cb891d5..5f746292118d 100644 --- a/Reconstruction/tauRecTools/Root/TauTrackClassifier.cxx +++ b/Reconstruction/tauRecTools/Root/TauTrackClassifier.cxx @@ -35,7 +35,6 @@ TauTrackClassifier::TauTrackClassifier(const std::string& sName) { declareProperty("Classifiers", m_vClassifier ); declareProperty("ClassifierNames", m_vClassifierNames ); - declareProperty("TauTrackContainerName", m_tauTrackConName="TauTracks"); } //______________________________________________________________________________ @@ -69,8 +68,16 @@ StatusCode TauTrackClassifier::initialize() //______________________________________________________________________________ StatusCode TauTrackClassifier::execute(xAOD::TauJet& xTau) { + // Get track container via link from tau - instead of using read handle (not written to store yet) + // Check that size > 0 + // ATH_MSG_INFO("track links size = " << xTau.allTauTrackLinks().size() ); + ElementLink< xAOD::TauTrackContainer > link; xAOD::TauTrackContainer* tauTrackCon = 0; - ATH_CHECK(evtStore()->retrieve(tauTrackCon, m_tauTrackConName)); + if (xTau.allTauTrackLinks().size() > 0) { + link = xTau.allTauTrackLinks().at(0);//we don't care about this specific link, just the container + tauTrackCon = link.getDataNonConstPtr(); + } + std::vector<xAOD::TauTrack*> vTracks = xAOD::TauHelpers::allTauTracksNonConst(&xTau, tauTrackCon); for (xAOD::TauTrack* xTrack : vTracks) { diff --git a/Reconstruction/tauRecTools/tauRecTools/TauTrackClassifier.h b/Reconstruction/tauRecTools/tauRecTools/TauTrackClassifier.h index bd17243ff71b..94c9c00a85b5 100644 --- a/Reconstruction/tauRecTools/tauRecTools/TauTrackClassifier.h +++ b/Reconstruction/tauRecTools/tauRecTools/TauTrackClassifier.h @@ -48,7 +48,6 @@ public: private: ToolHandleArray<TrackMVABDT> m_vClassifier; - std::string m_tauTrackConName; std::vector<std::string> m_vClassifierNames;//optional }; // class TauTrackClassifier -- GitLab