9 :theType(type), theLength(bp->bounds().length()), theWidth(bp->bounds().
width())
17 return specificTopology().localPosition(mp);
24 if (!this->surfaceDeformation())
return specificTopology().localPosition(mp);
27 const LocalPoint posOld(specificTopology().localPosition(mp));
37 return specificTopology().localError(mp, me);
49 return specificTopology().localError(mp, me);
55 return specificTopology().measurementPosition(lp);
62 if (!this->surfaceDeformation())
return specificTopology().measurementPosition(lp);
68 return specificTopology().measurementPosition(posOrig);
74 return specificTopology().measurementError(lp, le);
81 if (!this->surfaceDeformation())
return specificTopology().measurementError(lp, le);
87 return specificTopology().measurementError(posOrig, le);
91 int ProxyPixelTopology::channel(
const LocalPoint& lp)
const
93 return specificTopology().channel(lp);
99 if (!this->surfaceDeformation())
return specificTopology().channel(lp);
105 return specificTopology().channel(posOrig);
109 std::pair<float,float> ProxyPixelTopology::pixel(
const LocalPoint& lp )
const
111 return specificTopology().pixel(lp);
115 std::pair<float,float> ProxyPixelTopology::pixel(
const LocalPoint& lp,
118 if (!this->surfaceDeformation())
return specificTopology().pixel(lp);
124 return specificTopology().pixel(posOrig);
128 float ProxyPixelTopology::localX(
const float mpX)
const
130 return specificTopology().localX(mpX);
134 float ProxyPixelTopology::localX(
const float mpX,
137 if (!this->surfaceDeformation())
return specificTopology().localX(mpX);
140 float xOld = specificTopology().localX(mpX);
143 return xOld +
corr.x();
147 float ProxyPixelTopology::localY(
const float mpY)
const
149 return specificTopology().localY(mpY);
153 float ProxyPixelTopology::localY(
const float mpY,
156 if (!this->surfaceDeformation())
return specificTopology().localY(mpY);
159 float yOld = specificTopology().localY(mpY);
162 return yOld +
corr.y();
166 std::pair<float,float> ProxyPixelTopology::pitch()
const {
return specificTopology().pitch(); }
169 int ProxyPixelTopology::nrows()
const {
return specificTopology().nrows(); }
172 int ProxyPixelTopology::ncolumns()
const {
return specificTopology().ncolumns(); }
178 PixelGeomDetType& ProxyPixelTopology::specificType()
const {
return *theType; }
181 const PixelTopology& ProxyPixelTopology::specificTopology()
const
183 return specificType().specificTopology();
187 void ProxyPixelTopology::setSurfaceDeformation(
const SurfaceDeformation * deformation)
189 theSurfaceDeformation = deformation;
194 ProxyPixelTopology::positionCorrection(
const LocalPoint &
pos,
199 return this->surfaceDeformation()->positionCorrection(pos2D, dir,
200 theLength, theWidth);
207 return this->surfaceDeformation()->positionCorrection(trk.
point(), trk.
angles(),
208 theLength, theWidth);
const LocalTrackAngles & angles() const
const Local2DPoint & point() const