Skip to content

Commit f54e2ae

Browse files
authored
MID efficiency: ensure that the spanned vector exists for the full processing (#13077)
1 parent cbcb288 commit f54e2ae

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

Detectors/MUON/Workflow/src/ChamberEfficiencySpec.cxx

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -100,21 +100,22 @@ class EfficiencyTask
100100
auto midTracks = pc.inputs().get<gsl::span<mid::Track>>("midtracks");
101101
if (mSelectMatched) {
102102
auto matchTracks = pc.inputs().get<gsl::span<dataformats::TrackMCHMID>>("matchtracks");
103-
std::vector<mid::Track> selectedTracks;
104-
selectedTracks.reserve(midTracks.size());
103+
mSelectedTracks.clear();
104+
mSelectedTracks.reserve(midTracks.size());
105105
for (auto& matchTrack : matchTracks) {
106106
auto idx = matchTrack.getMIDRef().getIndex();
107-
selectedTracks.emplace_back(midTracks[idx]);
107+
mSelectedTracks.emplace_back(midTracks[idx]);
108108
}
109-
midTracks = gsl::span<mid::Track>(selectedTracks);
109+
midTracks = gsl::span<mid::Track>(mSelectedTracks);
110110
}
111111

112112
mEfficiency.process(midTracks);
113113
}
114114

115115
private:
116-
Efficiency mEfficiency{}; /// Efficiency calculator
117-
bool mSelectMatched; /// Select matched tracks
116+
Efficiency mEfficiency{}; /// Efficiency calculator
117+
bool mSelectMatched; /// Select matched tracks
118+
std::vector<mid::Track> mSelectedTracks{}; // Vector with matched tracks
118119
};
119120

120121
DataProcessorSpec getChamberEfficiencySpec(bool selectMatched)

0 commit comments

Comments
 (0)