76 std::vector<ROFRecord> filteredROFs;
77 auto rofIt = rofRecords.begin();
78 auto end = rofRecords.end();
80 for (; rofIt !=
end; ++rofIt) {
82 auto matchedColl = matchedCollision(rofIt->interactionRecord.bc);
85 filteredROFs.emplace_back(*rofIt);
90 filteredROFs.back().interactionRecord.bc = matchedColl;
92 for (
auto auxIt = rofIt + 1; auxIt !=
end; ++auxIt) {
94 if (auxIt->interactionRecord.orbit != rofIt->interactionRecord.orbit) {
98 int bcDiff = auxIt->interactionRecord.bc - matchedColl;
99 if (bcDiff < mBCDiffLow || bcDiff > mBCDiffHigh) {
103 filteredROFs.back().nEntries += auxIt->nEntries;