21 uint32_t subdet=
id.subdetId();
35 throw cms::Exception(
"Invalid DetId") <<
"Unsupported DetId in TrackerTopology::side";
40 uint32_t subdet=
id.subdetId();
54 throw cms::Exception(
"Invalid DetId") <<
"Unsupported DetId in TrackerTopology::layer";
59 uint32_t subdet=
id.subdetId();
73 throw cms::Exception(
"Invalid DetId") <<
"Unsupported DetId in TrackerTopology::module";
79 uint32_t subdet=
id.subdetId();
93 throw cms::Exception(
"Invalid DetId") <<
"Unsupported DetId in TrackerTopology::glued";
99 uint32_t subdet=
id.subdetId();
113 throw cms::Exception(
"Invalid DetId") <<
"Unsupported DetId in TrackerTopology::stack";
118 uint32_t subdet=
id.subdetId();
132 throw cms::Exception(
"Invalid DetId") <<
"Unsupported DetId in TrackerTopology::lower";
137 uint32_t subdet=
id.subdetId();
151 throw cms::Exception(
"Invalid DetId") <<
"Unsupported DetId in TrackerTopology::upper";
157 uint32_t subdet=
id.subdetId();
171 throw cms::Exception(
"Invalid DetId") <<
"Unsupported DetId in TrackerTopology::isStereo";
177 uint32_t subdet=
id.subdetId();
191 throw cms::Exception(
"Invalid DetId") <<
"Unsupported DetId in TrackerTopology::isRPhi";
196 uint32_t subdet=
id.subdetId();
210 throw cms::Exception(
"Invalid DetId") <<
"Unsupported DetId in TrackerTopology::isLower";
217 uint32_t subdet=
id.subdetId();
231 throw cms::Exception(
"Invalid DetId") <<
"Unsupported DetId in TrackerTopology::isUpper";
251 throw cms::Exception(
"Invalid DetId") <<
"Unsupported DetId in TrackerTopology::partnerDetId";
256 uint32_t subdet=
id.subdetId();
257 std::stringstream strstr;
260 unsigned int theLayer =
pxbLayer(
id);
263 strstr <<
"PixelBarrel"
264 <<
" Layer " << theLayer
265 <<
" Ladder " << theLadder
266 <<
" Module " << theModule ;
267 strstr <<
" (" <<
id.rawId() <<
")";
272 unsigned int theSide =
pxfSide(
id);
273 unsigned int theDisk =
pxfDisk(
id);
274 unsigned int theBlade =
pxfBlade(
id);
275 unsigned int thePanel =
pxfPanel(
id);
278 strstr <<
"PixelEndcap"
279 <<
" Side " << theSide << side
280 <<
" Disk " << theDisk
281 <<
" Blade " << theBlade
282 <<
" Panel " << thePanel
283 <<
" Module " << theModule ;
284 strstr <<
" (" <<
id.rawId() <<
")";
289 unsigned int theLayer =
tibLayer(
id);
294 side = (theString[0] == 1 ) ?
"-" :
"+";
295 part = (theString[1] == 1 ) ?
"int" :
"ext";
297 type = (
isStereo(
id)) ?
"stereo" : type;
298 type = (
isRPhi(
id)) ?
"r-phi" : type;
301 typeUpgrade = (
isLower(
id)) ?
"lower" : typeUpgrade;
302 typeUpgrade = (
isUpper(
id)) ?
"upper" : typeUpgrade;
303 typeUpgrade = (
isUpper(
id) ||
isLower(
id)) ? typeUpgrade+
" stack":
"module";
304 strstr <<
"TIB" << side
305 <<
" Layer " << theLayer <<
" " << part
306 <<
" String " << theString[2];
307 strstr <<
" Module for phase0 " << theModule <<
" " <<
type;
308 strstr <<
" Module for phase2 " << theModule <<
" " << typeUpgrade;
309 strstr <<
" (" <<
id.rawId() <<
")";
314 unsigned int theSide =
tidSide(
id);
315 unsigned int theWheel =
tidWheel(
id);
316 unsigned int theRing =
tidRing(
id);
320 side = (
tidSide(
id) == 1 ) ?
"-" :
"+";
321 part = (theModule[0] == 1 ) ?
"back" :
"front";
323 type = (
isStereo(
id)) ?
"stereo" : type;
324 type = (
isRPhi(
id)) ?
"r-phi" : type;
327 typeUpgrade = (
isLower(
id)) ?
"lower" : typeUpgrade;
328 typeUpgrade = (
isUpper(
id)) ?
"upper" : typeUpgrade;
329 typeUpgrade = (
isUpper(
id) ||
isLower(
id)) ? typeUpgrade+
" stack":
"module";
331 <<
" Side " << theSide << side
332 <<
" Wheel " << theWheel
333 <<
" Ring " << theRing <<
" " <<
part;
334 strstr <<
" Module for phase0 " << theModule[1] <<
" " <<
type;
335 strstr <<
" Module for phase2 " << theModule[1] <<
" " << typeUpgrade;
336 strstr <<
" (" <<
id.rawId() <<
")";
341 unsigned int theLayer =
tobLayer(
id);
342 std::vector<unsigned int> theRod =
tobRodInfo(
id);
346 side = (theRod[0] == 1 ) ?
"-" :
"+";
348 type = (
isStereo(
id)) ?
"stereo" : type;
349 type = (
isRPhi(
id)) ?
"r-phi" : type;
352 typeUpgrade = (
isLower(
id)) ?
"lower" : typeUpgrade;
353 typeUpgrade = (
isUpper(
id)) ?
"upper" : typeUpgrade;
354 typeUpgrade = (
isUpper(
id) ||
isLower(
id)) ? typeUpgrade+
" stack":
"module";
355 strstr <<
"TOB" << side
356 <<
" Layer " << theLayer
357 <<
" Rod " << theRod[1];
358 strstr <<
" Module for phase0 " << theModule <<
" " <<
type;
359 strstr <<
" Module for phase2 " << theModule <<
" " << typeUpgrade;
360 strstr <<
" (" <<
id.rawId() <<
")";
365 unsigned int theSide =
tecSide(
id);
366 unsigned int theWheel =
tecWheel(
id);
369 unsigned int theRing =
tecRing(
id);
372 side = (
tecSide(
id) == 1 ) ?
"-" :
"+";
373 petal = (thePetal[0] == 1 ) ?
"back" :
"front";
375 type = (
isStereo(
id)) ?
"stereo" : type;
376 type = (
isRPhi(
id)) ?
"r-phi" : type;
379 typeUpgrade = (
isLower(
id)) ?
"lower" : typeUpgrade;
380 typeUpgrade = (
isUpper(
id)) ?
"upper" : typeUpgrade;
381 typeUpgrade = (
isUpper(
id) ||
isLower(
id)) ? typeUpgrade+
" stack":
"module";
383 <<
" Side " << theSide << side
384 <<
" Wheel " << theWheel
385 <<
" Petal " << thePetal[1] <<
" " << petal
386 <<
" Ring " << theRing;
387 strstr <<
" Module for phase0 " << theModule <<
" " <<
type;
388 strstr <<
" Module for phase2 " << theModule <<
" " << typeUpgrade;
389 strstr <<
" (" <<
id.rawId() <<
")";
395 throw cms::Exception(
"Invalid DetId") <<
"Unsupported DetId in TrackerTopology::module";
401 switch(
id.subdetId()) {
DetId tidPartnerDetId(const DetId &id) const
uint32_t tibStack(const DetId &id) const
uint32_t tobGlued(const DetId &id) const
uint32_t upper(const DetId &id) const
unsigned int tibLayer(const DetId &id) const
unsigned int tidRing(const DetId &id) const
bool tobIsStereo(const DetId &id) const
uint32_t tobLower(const DetId &id) const
std::vector< unsigned int > tidModuleInfo(const DetId &id) const
unsigned int pxfDisk(const DetId &id) const
unsigned int tecRing(const DetId &id) const
ring id
unsigned int pxbLadder(const DetId &id) const
uint32_t tobStack(const DetId &id) const
unsigned int side(const DetId &id) const
uint32_t tecGlued(const DetId &id) const
bool isStereo(const DetId &id) const
unsigned int tidWheel(const DetId &id) const
unsigned int pxbModule(const DetId &id) const
SiStripDetId::ModuleGeometry moduleGeometry(const DetId &id) const
std::vector< unsigned int > tibStringInfo(const DetId &id) const
bool tobIsRPhi(const DetId &id) const
std::string print(DetId detid) const
uint32_t tecPartnerDetId(const DetId &id) const
PixelEndcapValues pfVals_
DetId partnerDetId(const DetId &id) const
bool tidIsStereo(const DetId &id) const
DetId tibPartnerDetId(const DetId &id) const
DetId tobPartnerDetId(const DetId &id) const
bool isLower(const DetId &id) const
unsigned int module(const DetId &id) const
bool tecIsStereo(const DetId &id) const
std::vector< unsigned int > tecPetalInfo(const DetId &id) const
uint32_t tecUpper(const DetId &id) const
bool tibIsRPhi(const DetId &id) const
unsigned int tidSide(const DetId &id) const
PixelBarrelValues pbVals_
std::vector< unsigned int > tobRodInfo(const DetId &id) const
unsigned int tidModule(const DetId &id) const
uint32_t tidStack(const DetId &id) const
int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum) ...
bool tecIsRPhi(const DetId &id) const
unsigned int tibModule(const DetId &id) const
unsigned int pxfModule(const DetId &id) const
unsigned int pxbLayer(const DetId &id) const
bool isUpper(const DetId &id) const
unsigned int tecModule(const DetId &id) const
bool tidIsRPhi(const DetId &id) const
uint32_t tibGlued(const DetId &id) const
uint32_t stack(const DetId &id) const
uint32_t tidLower(const DetId &id) const
bool tibIsStereo(const DetId &id) const
uint32_t tecLower(const DetId &id) const
unsigned int tobModule(const DetId &id) const
unsigned int layer(const DetId &id) const
uint32_t lower(const DetId &id) const
uint32_t tibUpper(const DetId &id) const
uint32_t tecStack(const DetId &id) const
unsigned int pxfSide(const DetId &id) const
uint32_t tibLower(const DetId &id) const
uint32_t tobUpper(const DetId &id) const
bool isRPhi(const DetId &id) const
uint32_t glued(const DetId &id) const
unsigned int tecWheel(const DetId &id) const
uint32_t tidUpper(const DetId &id) const
TrackerTopology(const PixelBarrelValues &pxb, const PixelEndcapValues &pxf, const TECValues &tecv, const TIBValues &tibv, const TIDValues &tidv, const TOBValues &tobv)
unsigned int pxfPanel(const DetId &id) const
unsigned int pxfBlade(const DetId &id) const
unsigned int tobLayer(const DetId &id) const
unsigned int tecSide(const DetId &id) const
uint32_t tidGlued(const DetId &id) const