28 void operator()(
const tbb::blocked_range<size_t> &range) {
30 const auto &range_end = range.end();
31 const auto &binedges_cbegin =
m_binedges->cbegin();
32 const auto &binedges_cend =
m_binedges->cend();
37 auto detid_iter = std::ranges::next(
m_detids->begin(), range.begin());
38 auto tof_iter = std::ranges::next(
m_tofs->begin(), range.begin());
39 for (
size_t i = range.begin(); i < range_end; ++i) {
40 const auto &detid = *detid_iter;
44 const double &tof =
static_cast<double>(*tof_iter) * calib_factor;
45 if ((tof < tof_max) && (!(tof < tof_min))) {
47 const auto &it = std::upper_bound(binedges_cbegin, binedges_cend, tof);
50 const auto &bin =
static_cast<size_t>(std::distance(binedges_cbegin, it) - 1);