diff --git a/L1Trigger/TrackFindingTracklet/plugins/ProducerDR.cc b/L1Trigger/TrackFindingTracklet/plugins/ProducerDR.cc index 76aa6de02b0de..967e41456904c 100644 --- a/L1Trigger/TrackFindingTracklet/plugins/ProducerDR.cc +++ b/L1Trigger/TrackFindingTracklet/plugins/ProducerDR.cc @@ -31,7 +31,8 @@ using namespace tt; namespace trklet { /*! \class trklet::ProducerDR - * \brief Emulates removal of duplicated TTTracks f/w + * \brief Emulates removal of duplicated TTTracks f/w. + * Track order determined by TrackMultiplexer affects performance * \author Thomas Schuh * \date 2023, Feb */ diff --git a/L1Trigger/TrackFindingTracklet/plugins/ProducerTM.cc b/L1Trigger/TrackFindingTracklet/plugins/ProducerTM.cc index 036086fcedaa2..1697c00561bee 100644 --- a/L1Trigger/TrackFindingTracklet/plugins/ProducerTM.cc +++ b/L1Trigger/TrackFindingTracklet/plugins/ProducerTM.cc @@ -34,6 +34,7 @@ namespace trklet { /*! \class trklet::ProducerTM * \brief Transforms format of TBout into that expected by DR input and muxes all channels to 1. + Since DR keeps first tracks the mux ordering is important. * \author Thomas Schuh * \date 2023, Jan */ diff --git a/L1Trigger/TrackFindingTracklet/src/TrackMultiplexer.cc b/L1Trigger/TrackFindingTracklet/src/TrackMultiplexer.cc index a913ac5e9b5fb..f9dba5a5b02d3 100644 --- a/L1Trigger/TrackFindingTracklet/src/TrackMultiplexer.cc +++ b/L1Trigger/TrackFindingTracklet/src/TrackMultiplexer.cc @@ -395,6 +395,7 @@ namespace trklet { deque accepted; vector> stacks(channelAssignment_->numChannelsTrack()); vector> streams(channelAssignment_->numChannelsTrack()); + // mux order affects DR for (int channel = 0; channel < channelAssignment_->numChannelsTrack(); channel++) for (Track* track : input_[channel]) streams[channel].push_back((track && track->valid_) ? track : nullptr);