28 LogDebug(
"MTDCPEBase::fillDetParams():") <<
"caching " <<
detectors <<
"MTD detectors" << endl;
31 p.theDet = dynamic_cast<const MTDGeomDetUnit*>(dus[
i]);
34 p.theOrigin =
p.theDet->surface().toLocal(
GlobalPoint(0, 0, 0));
37 p.thePart =
p.theDet->type().subDetector();
40 p.theThickness =
p.theDet->surface().bounds().thickness();
43 p.theTopol = &(static_cast<const ProxyMTDTopology&>(
p.theDet->topology()));
45 p.theRecTopol = &(static_cast<const RectangularMTDTopology&>(
p.theTopol->specificTopology()));
49 std::pair<float, float> pitchxy =
p.theRecTopol->pitch();
50 p.thePitchX = pitchxy.first;
51 p.thePitchY = pitchxy.second;
53 LogDebug(
"MTDCPEBase::fillDetParams()") <<
"***** MTD LAYOUT *****"
54 <<
" thePart = " <<
p.thePart <<
" theThickness = " <<
p.theThickness
55 <<
" thePitchX = " <<
p.thePitchX <<
" thePitchY = " <<
p.thePitchY;
65 return dp.theTopol->localPosition(
pos);
69 constexpr
double one_over_twelve = 1. / 12.;
72 return dp.theTopol->localError(
pos, simpleRect);
76 return cp.theCluster->time();
80 return cp.theCluster->timeError();