28 void operator()(
const tbb::blocked_range<size_t> &range) {
33 const auto &range_end = range.end();
34 const auto &binedges_cbegin =
m_binedges->cbegin();
35 const auto &binedges_cend =
m_binedges->cend();
40 auto detid_iter = std::ranges::next(
m_detids->begin(), range.begin());
41 auto tof_iter = std::ranges::next(
m_tofs->begin(), range.begin());
42 for (
size_t i = range.begin(); i < range_end; ++i) {
43 const auto &detid = *detid_iter;
47 const double &tof =
static_cast<double>(*tof_iter) * calib_factor;
48 if ((tof < tof_max) && (!(tof < tof_min))) {
50 const auto &it = std::upper_bound(binedges_cbegin, binedges_cend, tof);
53 const auto &bin =
static_cast<size_t>(std::distance(binedges_cbegin, it) - 1);