35 vector<BarrelDetLayer const *> thePxlBarLayers;
36 vector<BarrelDetLayer const *> theTIBLayers;
37 vector<BarrelDetLayer const *> theTOBLayers;
38 vector<ForwardDetLayer const *> theNegPxlFwdLayers;
39 vector<ForwardDetLayer const *> thePosPxlFwdLayers;
40 vector<ForwardDetLayer const *> theNegTIDLayers;
41 vector<ForwardDetLayer const *> thePosTIDLayers;
42 vector<ForwardDetLayer const *> theNegTECLayers;
43 vector<ForwardDetLayer const *> thePosTECLayers;
46 auto const &theGeometricDetLayers = theGeometricTracker->
components();
47 for (
auto const &theGeomDetLayer : theGeometricDetLayers) {
49 auto const &thePxlBarGeometricDetLayers = theGeomDetLayer->components();
50 for (
auto const &thisGeomDet : thePxlBarGeometricDetLayers) {
51 thePxlBarLayers.push_back(aPixelBarrelLayerBuilder.
build(thisGeomDet, theGeomDetGeometry));
56 auto const &thePxlBarGeometricDetLayers = theGeomDetLayer->components();
57 for (
auto const &thisGeomDet : thePxlBarGeometricDetLayers) {
58 thePxlBarLayers.push_back(aPixelBarrelLayerBuilder.
build(thisGeomDet, theGeomDetGeometry));
63 auto const &thePxlBarGeometricDetLayers = theGeomDetLayer->components();
64 for (
auto const &thisGeomDet : thePxlBarGeometricDetLayers) {
65 thePxlBarLayers.push_back(aPixelBarrelLayerBuilder.
build(thisGeomDet, theGeomDetGeometry));
70 auto const &theTIBGeometricDetLayers = theGeomDetLayer->components();
71 for (
auto const &thisGeomDet : theTIBGeometricDetLayers) {
72 theTIBLayers.push_back(aTIBLayerBuilder.
build(thisGeomDet, theGeomDetGeometry));
77 auto const &theTOBGeometricDetLayers = theGeomDetLayer->components();
78 for (
auto const &thisGeomDet : theTOBGeometricDetLayers) {
79 theTOBLayers.push_back(aTOBLayerBuilder.
build(thisGeomDet, theGeomDetGeometry));
84 auto const &theTOBGeometricDetLayers = theGeomDetLayer->components();
85 for (
auto const &thisGeomDet : theTOBGeometricDetLayers) {
86 theTOBLayers.push_back(aPhase2OTBarrelLayerBuilder.
build(thisGeomDet, theGeomDetGeometry, useBrothers));
91 auto const &thePxlFwdGeometricDetLayers = theGeomDetLayer->components();
92 for (
auto const &thisGeomDet : thePxlFwdGeometricDetLayers) {
93 if (thisGeomDet->positionBounds().z() < 0)
94 theNegPxlFwdLayers.push_back(aPixelForwardLayerBuilder.
build(thisGeomDet, theGeomDetGeometry));
96 thePosPxlFwdLayers.push_back(aPixelForwardLayerBuilder.
build(thisGeomDet, theGeomDetGeometry));
101 auto const &thePxlFwdGeometricDetLayers = theGeomDetLayer->components();
102 for (
auto const &thisGeomDet : thePxlFwdGeometricDetLayers) {
103 if (thisGeomDet->positionBounds().z() < 0)
104 theNegPxlFwdLayers.push_back(aPhase1PixelForwardLayerBuilder.
build(thisGeomDet, theGeomDetGeometry));
106 thePosPxlFwdLayers.push_back(aPhase1PixelForwardLayerBuilder.
build(thisGeomDet, theGeomDetGeometry));
111 auto const &thePxlFwdGeometricDetLayers = theGeomDetLayer->components();
112 for (
auto const &thisGeomDet : thePxlFwdGeometricDetLayers) {
115 if (thisGeomDet->positionBounds().z() < 0) {
118 theNegPxlFwdLayers.push_back(aPhase1PixelForwardLayerBuilder.
build(thisGeomDet, theGeomDetGeometry));
120 theNegPxlFwdLayers.push_back(aPhase2EndcapLayerBuilder.
build(thisGeomDet, theGeomDetGeometry,
false));
122 theNegPxlFwdLayers.push_back(aPhase2EndcapLayerDoubleDiskBuilder.
build(thisGeomDet, theGeomDetGeometry));
123 }
else if (thisGeomDet->positionBounds().z() > 0) {
126 thePosPxlFwdLayers.push_back(aPhase1PixelForwardLayerBuilder.
build(thisGeomDet, theGeomDetGeometry));
128 thePosPxlFwdLayers.push_back(aPhase2EndcapLayerBuilder.
build(thisGeomDet, theGeomDetGeometry,
false));
130 thePosPxlFwdLayers.push_back(aPhase2EndcapLayerDoubleDiskBuilder.
build(thisGeomDet, theGeomDetGeometry));
133 edm::LogError(
"TkDetLayers") <<
"In PixelPhase2EndCap the disks are neither PixelPhase2FullDisk nor " 134 "PixelPhase2ReducedDisk nor PixelPhase2TDRDisk...";
140 auto const &theTIDGeometricDetLayers = theGeomDetLayer->components();
141 for (
auto const &thisGeomDet : theTIDGeometricDetLayers) {
142 if (thisGeomDet->positionBounds().z() < 0)
143 theNegTIDLayers.push_back(aTIDLayerBuilder.
build(thisGeomDet, theGeomDetGeometry));
145 thePosTIDLayers.push_back(aTIDLayerBuilder.
build(thisGeomDet, theGeomDetGeometry));
150 auto const &theTIDGeometricDetLayers = theGeomDetLayer->components();
151 for (
auto const &thisGeomDet : theTIDGeometricDetLayers) {
152 if (thisGeomDet->positionBounds().z() < 0)
153 theNegTIDLayers.push_back(aPhase2EndcapLayerBuilder.
build(thisGeomDet, theGeomDetGeometry, useBrothers));
155 thePosTIDLayers.push_back(aPhase2EndcapLayerBuilder.
build(thisGeomDet, theGeomDetGeometry, useBrothers));
160 auto const &theTECGeometricDetLayers = theGeomDetLayer->components();
161 for (
auto const &thisGeomDet : theTECGeometricDetLayers) {
162 if (thisGeomDet->positionBounds().z() < 0)
163 theNegTECLayers.push_back(aTECLayerBuilder.
build(thisGeomDet, theGeomDetGeometry));
165 thePosTECLayers.push_back(aTECLayerBuilder.
build(thisGeomDet, theGeomDetGeometry));
195 std::vector<const BarrelDetLayer *>
barrel;
202 std::vector<const ForwardDetLayer *> backward;
206 backward.push_back(
p);
209 std::vector<const ForwardDetLayer *> forward;
213 forward.push_back(
p);
218 return theSearchTrack;
TIBLayer * build(const GeometricDet *aTIBLayer, const TrackerGeometry *theGeomDetGeometry) __attribute__((cold))
TOBLayer * build(const GeometricDet *aTOBLayer, const TrackerGeometry *theGeomDetGeometry) __attribute__((cold))
TECLayer * build(const GeometricDet *aTECLayer, const TrackerGeometry *theGeomDetGeometry) __attribute__((cold))
Phase2EndcapLayerDoubleDisk * build(const GeometricDet *aPhase2EndcapLayerDoubleDisk, const TrackerGeometry *theGeomDetGeometry) __attribute__((cold))
const std::vector< const DetLayer * > & allBackwardLayers() const
return all endcap layers
PixelBarrelLayer * build(const GeometricDet *aPixelBarrelLayer, const TrackerGeometry *theGeomDetGeometry) __attribute__((cold))
Phase2EndcapLayer * build(const GeometricDet *aPhase2EndcapLayer, const TrackerGeometry *theGeomDetGeometry, const bool useBrothers) __attribute__((cold))
TIDLayer * build(const GeometricDet *aTIDLayer, const TrackerGeometry *theGeomDetGeometry) __attribute__((cold))
Log< level::Error, false > LogError
ConstGeometricDetContainer & components()
MTDDetLayerGeometry * mtdDetLayerGeometry
const std::vector< const DetLayer * > & allBarrelLayers() const
return all barrel layers
void buildLayers(const MTDGeometry *geo, const MTDTopology *mtopo)
const std::vector< const DetLayer * > & allForwardLayers() const
return all endcap layers
GeometricSearchTracker * build(const GeometricDet *theGeometricTracker, const TrackerGeometry *theGeomDetGeometry, const TrackerTopology *tTopo, const bool usePhase2Stacks=false) __attribute__((cold))
void addDetLayerGeometry()
ForwardDetLayer * build(const GeometricDet *aPixelForwardLayer, const TrackerGeometry *theGeomDetGeometry) __attribute__((cold))
void addMTDLayers(const std::vector< BarrelDetLayer const *> &btl, const std::vector< ForwardDetLayer const *> &negEtl, const std::vector< ForwardDetLayer const *> &posEtl)
Phase2OTBarrelLayer * build(const GeometricDet *aPhase2OTBarrelLayer, const TrackerGeometry *theGeomDetGeometry, const bool useBrothers=true) __attribute__((cold))