From d4883bba6dd97307ac818bc0c3e226eafa8cf890 Mon Sep 17 00:00:00 2001 From: James Beacham <j.beacham@cern.ch> Date: Sun, 24 Jun 2018 19:49:03 +0000 Subject: [PATCH] Merge branch 'b21-fix-copies' into '21.0' Avoid copying elements when performing loops in tau EDM See merge request atlas/athena!12239 (cherry picked from commit c7e97f41b642a1258b98950c78ff3069a34fa5ff) fdea2993 avoid copying elements when performing loops in tau EDM --- Event/EventContainers/test/ID_ContainerTest.h | 0 Event/xAOD/xAODTau/Root/TauJet_v3.cxx | 8 ++++---- 2 files changed, 4 insertions(+), 4 deletions(-) mode change 100644 => 100755 Event/EventContainers/test/ID_ContainerTest.h diff --git a/Event/EventContainers/test/ID_ContainerTest.h b/Event/EventContainers/test/ID_ContainerTest.h old mode 100644 new mode 100755 diff --git a/Event/xAOD/xAODTau/Root/TauJet_v3.cxx b/Event/xAOD/xAODTau/Root/TauJet_v3.cxx index 51448da90a7..ef85767143f 100644 --- a/Event/xAOD/xAODTau/Root/TauJet_v3.cxx +++ b/Event/xAOD/xAODTau/Root/TauJet_v3.cxx @@ -465,7 +465,7 @@ namespace xAOD { const TauJet_v3::TauTrackLinks_t TauJet_v3::tauTrackLinksWithMask(unsigned int mask) const{ TauJet_v3::TauTrackLinks_t links; - for(const ElementLink< xAOD::TauTrackContainer > link : tauTrackAcc(*this) ){ + for(const ElementLink< xAOD::TauTrackContainer >& link : tauTrackAcc(*this) ){ if( (*link)->flagWithMask(mask)) links.push_back(link); } @@ -485,7 +485,7 @@ namespace xAOD { const TauTrack* TauJet_v3::trackWithMask( size_t i, unsigned int mask, int* container_index ) const { uint tracks_pass_mask=0; - for(const ElementLink< xAOD::TauTrackContainer > link : tauTrackAcc(*this) ){ + for(const ElementLink< xAOD::TauTrackContainer >& link : tauTrackAcc(*this) ){ const TauTrack* trk = *link; if(trk->flagWithMask(mask)){ if(tracks_pass_mask==i) { @@ -552,7 +552,7 @@ namespace xAOD { /// Get the v<pointer> to all tracks associated with this tau, regardless of classification std::vector<TauTrack*> TauJet_v3::allTracks() { std::vector<TauTrack*> trks; - for(ElementLink< xAOD::TauTrackContainer > link : tauTrackAcc(*this) ){ + for(ElementLink< xAOD::TauTrackContainer >& link : tauTrackAcc(*this) ){ const TauTrack* c_trk = *link; xAOD::TauTrackContainer* tauTrackContainer = link.getDataNonConstPtr(); TauTrack* trk=tauTrackContainer->at(link.index()); @@ -582,7 +582,7 @@ namespace xAOD { //number of tracks with a given classification size_t TauJet_v3::nTracksWithMask(unsigned int flags) const{ size_t n(0); - for(const ElementLink< xAOD::TauTrackContainer > link : tauTrackAcc(*this) ){ + for(const ElementLink< xAOD::TauTrackContainer >& link : tauTrackAcc(*this) ){ const TauTrack* trk = *link; if(trk->flagWithMask(flags)) n++; } -- GitLab