Implements edm::one::EDAnalyzerBase.
Definition at line 112 of file TrackerTreeGenerator.cc.
122 const auto& ns = alignableTracker.trackerNameSpace();
124 edm::LogInfo(
"TrackerTreeGenerator") <<
"@SUB=TrackerTreeGenerator::analyze"
125 <<
"There are " << tkGeom->
detIds().size() <<
" dets and "
126 << tkGeom->
detUnitIds().size() <<
" detUnits in the Geometry Record";
129 edm::LogInfo(
"TrackerTreeGenerator") <<
"@SUB=TrackerTreeGenerator::analyze"
130 <<
"Create entry for each module AND one entry for virtual "
131 <<
"double-sided module in addition";
133 edm::LogInfo(
"TrackerTreeGenerator") <<
"@SUB=TrackerTreeGenerator::analyze"
134 <<
"Create one entry for each physical module, do NOT create additional "
135 <<
"entry for virtual double-sided module";
138 for (
const auto& detId : tkGeom->
detIds()) {
143 const auto rawId = detId.
rawId();
144 tkTreeVar.
rawId = rawId;
145 tkTreeVar.
subdetId = detId.subdetId();
150 tkTreeVar.
half = ns.tpb().halfBarrelNumber(rawId);
157 tkTreeVar.
half = ns.tpe().halfCylinderNumber(rawId);
165 tkTreeVar.
half = ns.tib().halfShellNumber(rawId);
205 LocalPoint lPModule(0., 0., 0.), lUDirection(1., 0., 0.), lVDirection(0., 1., 0.), lWDirection(0., 0., 1.);
207 gVDirection = surface.
toGlobal(lVDirection), gWDirection = surface.
toGlobal(lWDirection);
208 double dR(999.),
dPhi(999.), dZ(999.);
213 dR = gWDirection.perp() - gPModule.
perp();
215 dZ = gVDirection.z() - gPModule.
z();
221 dR = gUDirection.perp() - gPModule.
perp();
223 dZ = gWDirection.z() - gPModule.
z();
230 dR = gVDirection.perp() - gPModule.
perp();
232 dZ = gWDirection.z() - gPModule.
z();
241 tkTreeVar.
posX = gPModule.
x();
242 tkTreeVar.
posY = gPModule.
y();
243 tkTreeVar.
posZ = gPModule.
z();
245 if (
auto stripGeomDetUnit = dynamic_cast<const StripGeomDetUnit*>(&geomDet)) {
251 auto& topol = dynamic_cast<const StripTopology&>(stripGeomDetUnit->specificTopology());
252 tkTreeVar.
nStrips = topol.nstrips();
References PV3DBase< T, PVType, FrameType >::barePhi(), TrackerTreeVariables::blade, TrackerGeomBuilderFromGeometricDet::build(), createEntryForDoubleSidedModule_, SiPixelRawToDigiRegional_cfi::deltaPhi, TrackerGeometry::detIds(), TrackerGeometry::detUnitIds(), HLT_FULL_cff::dPhi, HGC3DClusterGenMatchSelector_cfi::dR, PV3DBase< T, PVType, FrameType >::eta(), geomDetToken_, edm::EventSetup::getData(), TrackerTreeVariables::half, TrackerGeometry::idToDet(), TrackerTreeVariables::isDoubleSide, TrackerTreeVariables::isRPhi, TrackerTreeVariables::isStereo, TrackerTreeVariables::layer, TrackerTreeVariables::module, TrackerTreeVariables::nStrips, TrackerTreeVariables::outerInner, TrackerTreeVariables::panel, PV3DBase< T, PVType, FrameType >::perp(), TrackerTreeVariables::petal, PixelSubdetector::PixelBarrel, PixelSubdetector::PixelEndcap, TrackerTreeVariables::posEta, TrackerTreeVariables::posPhi, TrackerTreeVariables::posR, TrackerTreeVariables::posX, TrackerTreeVariables::posY, TrackerTreeVariables::posZ, ptitpToken_, ptpToken_, TrackerTopology::pxbLadder(), TrackerTopology::pxbLayer(), TrackerTopology::pxbModule(), TrackerTopology::pxfBlade(), TrackerTopology::pxfDisk(), TrackerTopology::pxfModule(), TrackerTopology::pxfPanel(), TrackerTopology::pxfSide(), TrackerTreeVariables::rawId, TrackerTreeVariables::ring, TrackerTreeVariables::rod, TrackerTreeVariables::side, TrackerTreeVariables::subdetId, GeomDet::surface(), StripSubdetector::TEC, TrackerTopology::tecIsDoubleSide(), TrackerTopology::tecIsRPhi(), TrackerTopology::tecIsStereo(), TrackerTopology::tecModule(), TrackerTopology::tecPetalInfo(), TrackerTopology::tecRing(), TrackerTopology::tecSide(), TrackerTopology::tecWheel(), StripSubdetector::TIB, TrackerTopology::tibIsDoubleSide(), TrackerTopology::tibIsRPhi(), TrackerTopology::tibIsStereo(), TrackerTopology::tibLayer(), TrackerTopology::tibModule(), TrackerTopology::tibStringInfo(), StripSubdetector::TID, TrackerTopology::tidIsDoubleSide(), TrackerTopology::tidIsRPhi(), TrackerTopology::tidIsStereo(), TrackerTopology::tidModuleInfo(), TrackerTopology::tidRing(), TrackerTopology::tidSide(), TrackerTopology::tidWheel(), StripSubdetector::TOB, TrackerTopology::tobIsDoubleSide(), TrackerTopology::tobIsRPhi(), TrackerTopology::tobIsStereo(), TrackerTopology::tobLayer(), TrackerTopology::tobModule(), TrackerTopology::tobRodInfo(), Surface::toGlobal(), topoToken_, TrackerTreeVariables::uDirection, TrackerTreeVariables::vDirection, vTkTreeVar_, TrackerTreeVariables::wDirection, PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().