13 for (
auto& road: roads)
15 std::shared_ptr<FPGATrackSimRoad> nonConstRoad = std::const_pointer_cast<FPGATrackSimRoad>(road);
27 std::vector<std::shared_ptr<const FPGATrackSimRoad>> postfilter_roads;
29 roads = std::move(postfilter_roads);
31 return StatusCode::SUCCESS;
46 double qoverpt =
r.getY()*0.001;
48 qoverpt = std::abs(qoverpt);
52 const std::vector<double> &qoverpt_bins = sectorbank->
getQOverPtBins();
53 auto bounds = std::equal_range(qoverpt_bins.begin(), qoverpt_bins.end(), qoverpt);
57 sectorbin = std::clamp(sectorbin, 0, 10 *
static_cast<int>(qoverpt_bins.size() - 2));
60 int subregion =
r.getSubRegion();
64 std::vector<module_t> modules(
r.getNLayers(), -1);
66 for (
unsigned int il = 0;
il <
r.getNLayers();
il++) {
67 if (
r.getNHits_layer()[
il] == 0) {
70 wc_layers |= (0x1 <<
il);
72 std::unique_ptr<FPGATrackSimHit> wcHit = std::make_unique<FPGATrackSimHit>();
82 r.setHits(
il,{std::move(wcHit)});
85 modules[
il]= sectorbin;
88 r.setWCLayers(wc_layers);
99 r.setSectorBin(sectorbin);