37 auto&
hits = std::get<0>(res);
38 auto& digiIndices = std::get<1>(res);
39 hits.reserve(digis.size());
40 digiIndices.reserve(digis.size());
41 auto itLast = std::prev(digis.end());
42 bool bUsedWithPrevious{
false};
43 for (
auto it = digis.begin(), in = it; it != itLast; ++it) {
44 if (bUsedWithPrevious) {
46 bUsedWithPrevious =
false;
50 const auto& digiT = it->first;
51 const auto& digiN = in->first;
52 if (digiN.GetTime() - digiT.GetTime() <
fParams.fdMaxTimeDist
53 && abs(digiN.GetChannel() - digiT.GetChannel()) == 1) {
56 digiIndices.emplace_back(it->second);
57 bUsedWithPrevious =
true;
62 digiIndices.emplace_back(it->second);
65 if (!bUsedWithPrevious) {
68 digiIndices.emplace_back(itLast->second);