15 template <
class FilteredView>
17 LogTrace(
"DetConstruction") <<
" CmsTrackerOTLayerBuilder::buildComponent ";
27 theCmsTrackerLadderBuilder.
build(fv, subdet,
s);
30 theCmsTrackerOTRingBuilder.
build(fv, subdet,
s);
33 edm::LogError(
"CmsTrackerOTLayerBuilder") <<
" ERROR - I was expecting a ladder or a panel, I got a "
36 g->addComponent(subdet);
39 template <
class FilteredView>
51 for (uint32_t
i = 0;
i <
comp.size();
i++) {
54 rods.emplace_back(component);
56 if (component->translation().z() < 0.) {
57 ringsNeg.emplace_back(component);
58 }
else if (component->translation().z() > 0.) {
59 ringsPos.emplace_back(component);
63 <<
"ERROR - wrong SubDet to sort..... " << det->
components().front()->type();
68 if (!ringsNeg.empty()) {
70 uint32_t totalringsNeg = ringsNeg.size();
72 LogTrace(
"DetConstruction") <<
" Neg rings ordered by z: ";
76 ringsNeg[
ring]->setGeographicalID(
temp);
77 LogTrace(
"BuildingTrackerDetId") <<
"\t\t\t DetId >> " <<
temp
78 <<
"(r: " <<
sqrt(ringsNeg[
ring]->translation().Perp2())
79 <<
", phi: " << ringsNeg[
ring]->phi()
80 <<
", z: " << ringsNeg[
ring]->translation().z() <<
")";
87 uint32_t totalrods = rods.size();
89 LogTrace(
"DetConstruction") <<
" Rods ordered by phi: ";
90 for (uint32_t rod = 0; rod < totalrods; rod++) {
91 uint32_t
temp = rod + 1;
93 rods[rod]->setGeographicalID(
DetId(
temp));
94 LogTrace(
"BuildingTrackerDetId") <<
"\t\t\t DetId >> " <<
temp <<
"(r: " <<
sqrt(rods[rod]->translation().Perp2())
95 <<
", phi: " << rods[rod]->phi() <<
", z: " << rods[rod]->translation().z()
101 if (!ringsPos.empty()) {
103 uint32_t totalringsPos = ringsPos.size();
105 LogTrace(
"DetConstruction") <<
" Pos rings ordered by z: ";
109 ringsPos[
ring]->setGeographicalID(
temp);
110 LogTrace(
"BuildingTrackerDetId") <<
"\t\t\t DetId >> " <<
temp
111 <<
"(r: " <<
sqrt(ringsPos[
ring]->translation().Perp2())
112 <<
", phi: " << ringsPos[
ring]->phi()
113 <<
", z: " << ringsPos[
ring]->translation().z() <<
")";