83 const std::vector<std::shared_ptr<const FPGATrackSimHit>> &hits) {
87 for (
const auto &step :
m_bintool->steps()) {
89 ATH_MSG_DEBUG(
"fill binning: step num " << stepnum <<
" " << step->stepName());
90 for (
auto &
bin : step->validBinsFull()) {
99 for (
const std::shared_ptr<const FPGATrackSimHit> &hit : hits) {
101 if (
m_bintool->binDesc()->hitInBin(*step.get(),
bin.idx(),
112 for (
const auto &hit :
115 if (
m_bintool->binDesc()->hitInBin(*step.get(),
bin.idx(),storedhit)) {
116 bool writeHit =
true;
119 if (step.get() ==
m_bintool->lastStep()) {
129 for (
unsigned lyr = 0; lyr < lyr_radii.size(); lyr++) {
131 if ((hit.rzrad() > lyr_radii[lyr].first)&&(hit.rzrad() < lyr_radii[lyr].second)) {
132 storedhit.
layer = lyr;
137 if(
msgLvl(MSG::VERBOSE) && !writeHit) {
138 std::vector<double> rads;
139 for (
unsigned lyr = 0; lyr < lyr_radii.size(); lyr++) {
140 rads.push_back(lyr_radii[lyr].first);
141 rads.push_back(lyr_radii[lyr].second);
143 ATH_MSG_VERBOSE(
"Hit not in layer radii " <<
bin.idx() <<
" " << hit.rzrad() <<
" " << rads);
147 if (hit.hitptr->isMapped()) {
148 storedhit.
layer = hit.hitptr->getLayer();
163 <<
" binidx = " <<
bin.idx()
164 <<
" input hits = " <<
m_binnedHitsStep[stepnum - 1][step->convertToPrev(
bin.idx())].hits.size()
174 return StatusCode::SUCCESS;
unsigned int hitsInLyr(unsigned lyr) const
void addHit(const FPGATrackSimBinUtil::StoredHit &hit)
std::vector< FPGATrackSimBinUtil::StoredHit > hits