17 std::sort(theLayers.begin(), theLayers.end());
20 for (
auto const&
l : theLayers) {
25 if (sq >=
int(indeces.size()))
26 indeces.resize(sq + 1, -1);
36 return it ==
theLayers.end() ? nullptr : &(*it);
63 return sumX0D(pointI, pointO);
82 float drOI = pointO.
r() - pointI.
r();
83 float drMO = pointO.
r() - pointM.
r();
84 float drMI = pointM.
r() - pointI.
r();
95 std::cout <<
"old " << (*iI).seqNum() <<
" " << iI -
theLayers.begin() <<
", " << (*iM).seqNum() <<
" "
96 << iM -
theLayers.begin() <<
", " << (*iO).seqNum() <<
" " << iO -
theLayers.begin() <<
" " << pointI.
r()
97 <<
" " << pointI.
z() <<
" " << sum << std::endl;
108 return sumX0D(pointV, pointI, pointO);
113 float drOI = pointO.
r();
114 float drMO = pointO.
r() - pointI.
r();
115 float drMI = pointI.
r();
124 std::cout <<
"new " << il <<
" " << (*iI).seqNum() <<
" " << iI -
theLayers.begin() <<
", " << ol <<
" "
125 << (*iO).seqNum() <<
" " << iO -
theLayers.begin() <<
" " << zV <<
" " << sum << std::endl;
136 float cotTh =
line.cotLine();
138 std::pair<PixelRecoPointRZ, bool>
cross = it->crossing(
line);
140 float x0 = it->x0(cotTh);
141 float dr = rTarget -
cross.first.r();
143 dr *= 1.f + 0.038f * unsafe_logf<2>(x0);
154 const float BIG = 99999.f;
158 for (
LayerItr it = ibeg; it < iend; it++) {
159 float d = it->distance2(
point);