From 03469c54fda5ae5071ee53b9bc3cb3d1b6ee7acf Mon Sep 17 00:00:00 2001 From: Kyle Knoepfel Date: Mon, 13 Feb 2017 09:46:28 -0600 Subject: [PATCH] Fix logic error. --- .../RecoTau/plugins/TrackFromPVSelector.cc | 24 ++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/Validation/RecoTau/plugins/TrackFromPVSelector.cc b/Validation/RecoTau/plugins/TrackFromPVSelector.cc index 8f608caf16fcf..595f205842fe5 100644 --- a/Validation/RecoTau/plugins/TrackFromPVSelector.cc +++ b/Validation/RecoTau/plugins/TrackFromPVSelector.cc @@ -15,6 +15,7 @@ #include "DataFormats/VertexReco/interface/VertexFwd.h" #include +#include #include #include @@ -59,19 +60,20 @@ TrackFromPVSelector::TrackFromPVSelector(edm::ParameterSet const& iConfig) //______________________________________________________________________________ void TrackFromPVSelector::produce(edm::StreamID, edm::Event& iEvent, edm::EventSetup const&) const { - auto goodTracks = std::make_unique>(); - edm::Handle> vertices; + iEvent.getByToken(v_recoVertexToken_, vertices); + edm::Handle> tracks; - if (iEvent.getByToken(v_recoVertexToken_, vertices) && !vertices->empty() && - iEvent.getByToken(v_recoTrackToken_, tracks) && !tracks->empty()) - { - auto const& vtxPos = vertices->front().position(); - std::copy_if(std::cbegin(*tracks), std::cend(*tracks), std::back_inserter(*goodTracks), - [this, &vtxPos](auto const& track) { - return fabs(track.dxy(vtxPos)) < max_dxy_ && fabs(track.dz(vtxPos)) < max_dz_; - }); - } + iEvent.getByToken(v_recoTrackToken_, tracks); + + auto goodTracks = std::make_unique>(); + if (!vertices->empty() && !tracks->empty()) { + auto const& vtxPos = vertices->front().position(); + std::copy_if(std::cbegin(*tracks), std::cend(*tracks), std::back_inserter(*goodTracks), + [this, &vtxPos](auto const& track) { + return std::abs(track.dxy(vtxPos)) < max_dxy_ && std::abs(track.dz(vtxPos)) < max_dz_; + }); + } iEvent.put(std::move(goodTracks)); }