ATLAS Offline Software
DBPixelGeoManager.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #include "DBPixelGeoManager.h"
6 #include "PixelLegacyManager.h"
7 #include "PixelMaterialMap.h"
8 #include "PixelStaveTypes.h"
12 
13 // to permit access to StoreGate
14 #include "StoreGate/StoreGateSvc.h"
15 
19 #include "GeoModelKernel/GeoMaterial.h"
20 #include "GeoModelKernel/Units.h"
21 
22 //
23 // Get the pixelDD Manager from SG.
24 //
29 
30 //
31 // Distorted material manager
32 //
34 #include "GaudiKernel/SystemOfUnits.h"
35 
37 
38 #include <string>
39 #include <iostream>
40 #include <sstream>
41 
42 using namespace std;
43 
45  : PixelGeometryManager(athenaComps),
46  m_eta(0),
47  m_phi(0),
48  m_currentLD(0),
49  m_BarrelEndcap(0),
50  m_side(0),
51  m_diskFrontBack(0),
52  m_servicesOnLadder(true),
53  m_services(true),
54  m_initialLayout(false),
55  m_dc1Geometry(false),
56  m_alignable(true),
57  m_ibl(false),
58  m_PlanarModuleNumber(0),
59  m_3DModuleNumber(0),
60  m_dbm(false),
61  m_legacyManager(nullptr),
62  m_gangedIndexMap(nullptr),
63  m_frameElementMap(nullptr),
64  m_diskRingIndexMap(nullptr),
65  m_zPositionMap(nullptr),
66  m_dbVersion(0),
67  m_defaultLengthUnit(Gaudi::Units::mm)
68 {
69  m_commonItems = nullptr;
70  m_pDDmgr = nullptr;
71 
72  init();
73 }
74 
75 void
77 {
78  if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) << "Using ORACLE PIXEL GEOMETRY MANAGER" << endmsg;
79 
80  IRDBAccessSvc *rdbSvc = athenaComps()->rdbAccessSvc();
81  const IGeoDbTagSvc *geoDbTag = athenaComps()->geoDbTagSvc();
82 
83  // Get version tag and node for Pixel.
84  DecodeVersionKey versionKey(geoDbTag,"Pixel");
85  const std::string& detectorKey = versionKey.tag();
86  const std::string& detectorNode = versionKey.node();
87 
88  // Get version tag and node for InnerDetector.
89  DecodeVersionKey indetVersionKey(geoDbTag,"InnerDetector");
90 
91  if(geoDbTag->getParamSvcName().starts_with("RDB"))
92  m_versionTag = rdbSvc->getChildTag("Pixel", versionKey.tag(), versionKey.node());
93 
95 //
96 // Gets the structures from the det store
97 //
99 
100  if(msgLvl(MSG::INFO)) {
101  msg(MSG::INFO) << "Retrieving Record Sets from database ..." << endmsg;
102  msg(MSG::INFO) << "Key = " << detectorKey << " Node = " << detectorNode << endmsg;
103  }
104 
105  //atls = rdbSvc->getRecordset("AtlasMother",geoModel->atlasVersion(), "ATLAS");
106  m_PixelSwitches = rdbSvc->getRecordsetPtr("PixelSwitches", detectorKey, detectorNode);
107  m_PixelBarrelGeneral = rdbSvc->getRecordsetPtr("PixelBarrelGeneral", detectorKey, detectorNode);
108  m_PixelBarrelService = rdbSvc->getRecordsetPtr("PixelBarrelService", detectorKey, detectorNode);
109  m_PixelCommon = rdbSvc->getRecordsetPtr("PixelCommon", detectorKey, detectorNode);
110  m_PixelEnvelope = rdbSvc->getRecordsetPtr("PixelEnvelope", detectorKey, detectorNode);
111  m_PixelDisk = rdbSvc->getRecordsetPtr("PixelDisk", detectorKey, detectorNode);
112  m_PixelDiskRing = rdbSvc->getRecordsetPtr("PixelDiskRing", detectorKey, detectorNode);
113  m_PixelRing = rdbSvc->getRecordsetPtr("PixelRing", detectorKey, detectorNode);
114  m_PixelEndcapGeneral = rdbSvc->getRecordsetPtr("PixelEndcapGeneral", detectorKey, detectorNode);
115  m_PixelEndcapService = rdbSvc->getRecordsetPtr("PixelEndcapService", detectorKey, detectorNode);
116  m_PixelEnvelopeService = rdbSvc->getRecordsetPtr("PixelEnvelopeService", detectorKey, detectorNode);
117  m_PixelLayer = rdbSvc->getRecordsetPtr("PixelLayer", detectorKey, detectorNode);
118  m_PixelModule = rdbSvc->getRecordsetPtr("PixelModule", detectorKey, detectorNode);
119  m_PixelModuleSvc = rdbSvc->getRecordsetPtr("PixelModuleSvc", detectorKey, detectorNode);
120  m_PixelStave = rdbSvc->getRecordsetPtr("PixelStave", detectorKey, detectorNode);
121  m_PixelStaveZ = rdbSvc->getRecordsetPtr("PixelStaveZ", detectorKey, detectorNode);
122  m_PixelTopLevel = rdbSvc->getRecordsetPtr("PixelTopLevel", detectorKey, detectorNode);
123  m_PixelReadout = rdbSvc->getRecordsetPtr("PixelReadout", detectorKey, detectorNode);
124  m_PixelGangedPixels = rdbSvc->getRecordsetPtr("GangedPixels", detectorKey, detectorNode);
125  m_PixelBarrelCable = rdbSvc->getRecordsetPtr("PixelBarrelCable", detectorKey, detectorNode);
126  m_PixelTMT = rdbSvc->getRecordsetPtr("PixelTMT", detectorKey, detectorNode);
127  m_PixelOmega = rdbSvc->getRecordsetPtr("PixelOmega", detectorKey, detectorNode);
128  m_PixelOmegaGlue = rdbSvc->getRecordsetPtr("PixelOmegaGlue", detectorKey, detectorNode);
129  m_PixelAlTube = rdbSvc->getRecordsetPtr("PixelAlTube", detectorKey, detectorNode);
130  m_PixelFluid = rdbSvc->getRecordsetPtr("PixelFluid", detectorKey, detectorNode);
131  m_PixelConnector = rdbSvc->getRecordsetPtr("PixelConnector", detectorKey, detectorNode);
132  m_PixelPigtail = rdbSvc->getRecordsetPtr("PixelPigtail", detectorKey, detectorNode);
133  m_PixelSimpleService = rdbSvc->getRecordsetPtr("PixelSimpleService", detectorKey, detectorNode);
134  m_PixelFrame = rdbSvc->getRecordsetPtr("PixelFrame", detectorKey, detectorNode);
135  m_PixelFrameSect = rdbSvc->getRecordsetPtr("PixelFrameSect", detectorKey, detectorNode);
136  m_PixelIBLStave = rdbSvc->getRecordsetPtr("PixelIBLStave" , detectorKey, detectorNode);
137  m_PixelIBLSupport = rdbSvc->getRecordsetPtr("PixelIBLSupport", detectorKey, detectorNode);
138  m_PixelIBLFlex = rdbSvc->getRecordsetPtr("PixelIBLFlex", detectorKey, detectorNode);
139  m_PixelIBLFlexMaterial = rdbSvc->getRecordsetPtr("PixelIBLFlexMaterial", detectorKey, detectorNode);
140  m_PixelIBLGlueGrease = rdbSvc->getRecordsetPtr("PixelIBLGlueGrease", detectorKey, detectorNode);
141  m_PixelConicalStave = rdbSvc->getRecordsetPtr("PixelConicalStave", detectorKey, detectorNode);
142 
143  // Weights table
144  m_weightTable = rdbSvc->getRecordsetPtr("PixelWeights", detectorKey, detectorNode);
145 
146  // Extra Scaling table. This is used for extra material studies. For nominal material the table should be empty.
147  // NB this is at InnerDetector level node.
148  m_scalingTable = rdbSvc->getRecordsetPtr("PixelMatScaling", indetVersionKey.tag(), indetVersionKey.node());
149 
150  // MaterialMap
151  m_materialTable = rdbSvc->getRecordsetPtr("PixelMaterialMap", detectorKey, detectorNode);
152 
153  // Pixel stave types
154  m_staveTypeTable = rdbSvc->getRecordsetPtr("PixelStaveType", detectorKey, detectorNode);
155 
156  // DBM
157  m_DBMTelescope = rdbSvc->getRecordsetPtr("DBMTelescope", detectorKey, detectorNode);
158  m_DBMBracket = rdbSvc->getRecordsetPtr("DBMBracket", detectorKey, detectorNode);
159  m_DBMCage = rdbSvc->getRecordsetPtr("DBMCage", detectorKey, detectorNode);
160  m_DBMModule = rdbSvc->getRecordsetPtr("DBMModule", detectorKey, detectorNode);
161  m_dbmWeightTable = rdbSvc->getRecordsetPtr("DBMMaterials", detectorKey, detectorNode);
162 
164 
165  if(msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) << "Database version number: " << m_dbVersion << endmsg;
166 
167  if (m_dbVersion < 4) {
168  m_legacyManager = new PixelLegacyManager(rdbSvc, detectorKey, detectorNode);
169  }
170 
171  if(msgLvl(MSG::INFO)) msg(MSG::INFO) << "... Record Sets retrieved." << endmsg;
172 
174 
175  // Set default lenth unit to Gaudi::Units::mm for newer version and Gaudi::Units::cm for older versions
177 
178  // Get the top level placements
180 
181  // If all individual pieces are not present, then actually all are present.
182  m_allPartsPresent = (!m_placements->present("Barrel") && !m_placements->present("EndcapA") && !m_placements->present("EndcapC"));
183 
184  // cache the number of inner frames
185  if (m_dbVersion < 3) {
186  m_barrelInFrames = (*m_PixelBarrelGeneral)[0]->getInt("NFRAMEIN");
187  m_endcapInFrames = (*m_PixelEndcapGeneral)[0]->getInt("NFRAMEIN");
188  } else {
189  m_barrelInFrames = 0;
190  m_endcapInFrames = 0;
191  }
192 
193  //
194  // Get the InDet material manager. This is a wrapper around the geomodel one with some extra functionality to deal
195  // with weights table if it exists
196 
197  m_pMatMgr = new InDetMaterialManager("PixelMaterialManager", athenaComps());
200 
201  // add the DBM weight table
203 
204  // Create material map
206  if (m_materialTable->size() == 0) addDefaultMaterials();
207 
208  // Create stave type map
210 
211 
212  //
213  // Print the version number for the barrel and endcap geometry
214  //
215  //cout << "Instantiating Pixel Detector" << endl;
216  //cout << "Barrel Version " << this->PixelBarrelMajorVersion() << "." << this->PixelBarrelMinorVersion() << endl;
217  //cout << "Endcap Version " << this->PixelEndcapMajorVersion() << "." << this->PixelEndcapMinorVersion() << endl;
218 }
219 
221 {
222  return m_pMatMgr;
223 }
224 
226 {
227  return m_legacyManager;
228 }
229 
230 
232 {
233  delete m_placements;
234  delete m_distortedMatManager;
235  delete m_materialMap;
236  delete m_pixelStaveTypes;
237  delete m_legacyManager;
238  delete m_pMatMgr;
239  delete m_gangedIndexMap;
240  delete m_diskRingIndexMap;
241  delete m_zPositionMap;
242  delete m_frameElementMap;
243 }
244 
245 
248 {
249  return m_commonItems;
250 }
251 
252 
253 const InDetDD::SiCommonItems *
255 {
256  return m_commonItems;
257 }
258 
259 
260 void
262 {
264 }
265 
266 
267 const PixelID *
269 {
270  return athenaComps()->getIdHelper();
271 }
272 
273 
274 const GeoTrf::Transform3D &
275 DBPixelGeoManager::partTransform(const std::string & partName) const
276 {
277  return m_placements->transform(partName);
278 }
279 
280 
281 bool
282 DBPixelGeoManager::partPresent(const std::string & partName) const
283 {
284  // First check if overridden from text file.
285  if (partName == "Barrel") {
286  if (db()->testField("PixelCommon","DOBARREL")) {
287  return db()->getInt("PixelCommon","DOBARREL");
288  }
289  } else if (partName == "EndcapA" || partName == "EndcapC") {
290  if (db()->testField("PixelCommon","DOENDCAPS")) {
291  return db()->getInt("PixelCommon","DOENDCAPS");
292  }
293  }
294  // otherwise check database.
295  return (m_allPartsPresent || m_placements->present(partName));
296 }
297 
299 //
300 // Setting of Layer/Disk and Barrel/EndCap
301 //
304 {
305  if(isBarrel() ) {
306  if(i <= PixelBarrelNLayer()) {
307  m_currentLD=i;
308  } else {
309  msg(MSG::ERROR) << "Layer set out of bounds: " << i << ", Setting it to 0" << endmsg;
310  m_currentLD = 0;
311  }
312  if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) <<" Current layer set to " << m_currentLD << endmsg;
313  }
314  if(isEndcap() ) {
315  if (i<= PixelEndcapNDisk() ) {
316  m_currentLD=i;
317  } else {
318  msg(MSG::ERROR) << "Disk set out of bounds: " << i << ", Setting it to 0" << endmsg;
319  m_currentLD = 0;
320  }
321  if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) <<" Current disk set to " << m_currentLD << endmsg;
322  }
323  if(isDBM() ) {
324  if (i<= 2 ) {
325  m_currentLD=i;
326  } else {
327  msg(MSG::ERROR) << "DBM: Disk set out of bounds: " << i << ", Setting it to 0" << endmsg;
328  m_currentLD = 0;
329  }
330  if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) <<" Current disk set to " << m_currentLD << endmsg;
331  }
332 }
333 
335  //msg(MSG::DEBUG) << "Setting Barrel" << endmsg;
336  m_BarrelEndcap = 0;
337 }
339  m_BarrelEndcap = 1;
340  //msg(MSG::DEBUG) << "Setting Endcap" << endmsg;
341 }
343  m_BarrelEndcap = 2;
344  //msg(MSG::DEBUG) << "Setting DBM" << endmsg;
345 }
347 //
348 // Check if the current layer/disk has to be retrieved
349 // By default in MySQL all the three layers have to be retrieved
350 // If m_initialLayout is true we ignore NOVA for layer/disk 1.
351 // For initial layout layer=1 and disk=1 (2nd layer and disk) is missing.
352 //
355  if(isBarrel()) {
356  if (m_initialLayout && m_currentLD == 1) return false;
357  std::ostringstream A;
358  A << "_" << m_currentLD;
359  // More than 3 layers not yet supported in database so
360  // if not present in text file assume using this layer
361  return db()->getInt(m_PixelBarrelGeneral,"USELAYER"+A.str());
362  }
363  if(isEndcap() ) {
364  if (m_initialLayout && m_currentLD == 1) return false;
365  std::ostringstream A;
366  A << "_" << m_currentLD;
367  // More than 3 disks not yet supported in database so
368  // if not present in text file assume using this disks
369  return db()->getInt(m_PixelEndcapGeneral,"USEDISK"+A.str());
370  }
371  return false;
372 }
373 
374 
376  return m_BarrelEndcap == 0;
377 }
379  return m_BarrelEndcap == 1;
380  return false;
381 }
383  return m_BarrelEndcap == 2;
384 }
385 
387  return m_services;
388 }
390  return m_servicesOnLadder;
391 }
392 
394  return m_initialLayout;
395 }
396 
398  m_dc1Geometry = flag;
400 }
401 
403  return m_dc1Geometry;
404 }
405 
407  return m_alignable;
408 }
409 
410 
412  if(m_pDDmgr == nullptr) {
413  //
414  // retrieve the pointer to the DD manager
415  //
416  StatusCode sc = athenaComps()->detStore()->retrieve(m_pDDmgr);
417  if (sc.isFailure()) {
418  msg(MSG::ERROR) << "Cannot retrieve PixelDetectorManager" << endmsg;
419  }
420  }
421  return m_pDDmgr;
422 }
423 
424 
427  return m_distortedMatManager;
428 }
429 
430 
432 //
433 // Calculate Thickness. This is used for the materials
434 // which thickness is given in % of r.l.
435 //
437 double DBPixelGeoManager::CalculateThickness(double tck,const string& mat) {
438  GeoIntrusivePtr<const GeoMaterial> material{m_pMatMgr->getMaterial(mat)};
439  double rl = material->getRadLength();
440  return -1.*rl*tck/100.;
441 }
442 
444 {
445  int type = 0;
446  if (ibl()) {
447  if (isBarrel()) {
448  type = db()->getInt(m_PixelLayer,"MODULETYPE",m_currentLD);
449  }
450  } else {
451  if(isBarrel()) type = m_currentLD;
453  }
454  return type;
455 }
456 
458 {
459  int type = -1;
460  if (!isBarrel()||m_currentLD>0) return type;
461 
462  if (ibl()) {
463  try {
464  type = db()->getInt(m_PixelLayer,"MODULETYPE3D",m_currentLD);
465  return type;
466  }
467  catch(...)
468  {
469  return moduleType()+1;
470  }
471  }
472 
473  return type;
474 }
475 
476 
477 
479 //
480 // Si Boards Parameters:
481 //
483 double DBPixelGeoManager::PixelBoardWidth(bool isModule3D)
484 {
485  if(ibl()&&isModule3D){
486  return db()->getDouble(m_PixelModule,"BOARDWIDTH",moduleType3D())*mmcm();
487  }
488 
489  return db()->getDouble(m_PixelModule,"BOARDWIDTH",moduleType())*mmcm();
490 }
491 
492 double DBPixelGeoManager::PixelBoardLength(bool isModule3D)
493 {
494  if(ibl()&&isModule3D)
495  return db()->getDouble(m_PixelModule,"BOARDLENGTH",moduleType3D())*mmcm();
496 
497  return db()->getDouble(m_PixelModule,"BOARDLENGTH",moduleType())*mmcm();
498 }
499 
501 {
502  if (m_dc1Geometry && isBarrel() && (m_currentLD == 0)) {
503  return 200*Gaudi::Units::micrometer;
504  }
505 
506  if(ibl()&&isModule3D)
507  return db()->getDouble(m_PixelModule,"BOARDTHICK",moduleType3D())*mmcm();
508  return db()->getDouble(m_PixelModule,"BOARDTHICK",moduleType())*mmcm();
509 }
510 
512 {
513  return DesignZActiveArea(isModule3D);
514 }
515 
516 
518 //
519 // Hybrid Parameters:
520 //
522 double DBPixelGeoManager::PixelHybridWidth(bool isModule3D)
523 {
524  if(ibl()&&isModule3D)
525  return db()->getDouble(m_PixelModule,"HYBRIDWIDTH",moduleType3D())*mmcm();
526 
527  return db()->getDouble(m_PixelModule,"HYBRIDWIDTH",moduleType())*mmcm();
528 }
529 
530 double DBPixelGeoManager::PixelHybridLength(bool isModule3D)
531 {
532  if(ibl()&&isModule3D)
533  return db()->getDouble(m_PixelModule,"HYBRIDLENGTH",moduleType3D())*mmcm();
534 
535  return db()->getDouble(m_PixelModule,"HYBRIDLENGTH",moduleType())*mmcm();
536 }
537 
539 {
540  if(ibl()&&isModule3D)
541  return db()->getDouble(m_PixelModule,"HYBRIDTHICK",moduleType3D())*mmcm();
542 
543  return db()->getDouble(m_PixelModule,"HYBRIDTHICK",moduleType())*mmcm();
544 }
545 
547 //
548 // Chip Parameters:
549 //
551 
552 double DBPixelGeoManager::PixelChipWidth(bool isModule3D)
553 {
554  if(ibl()&&isModule3D)
555  return db()->getDouble(m_PixelModule,"CHIPWIDTH",moduleType3D())*mmcm();
556 
557  return db()->getDouble(m_PixelModule,"CHIPWIDTH",moduleType())*mmcm();
558 }
559 
560 double DBPixelGeoManager::PixelChipLength(bool isModule3D)
561 {
562  if(ibl()&&isModule3D)
563  return db()->getDouble(m_PixelModule,"CHIPLENGTH",moduleType3D())*mmcm();
564 
565  return db()->getDouble(m_PixelModule,"CHIPLENGTH",moduleType())*mmcm();
566 }
567 
568 double DBPixelGeoManager::PixelChipGap(bool isModule3D)
569 {
570  if(ibl()&&isModule3D)
571  return db()->getDouble(m_PixelModule,"CHIPGAP",moduleType3D())*mmcm();
572 
573  return db()->getDouble(m_PixelModule,"CHIPGAP",moduleType())*mmcm();
574 }
575 
576 double DBPixelGeoManager::PixelChipOffset(bool isModule3D)
577 {
578  if(!ibl()||GetLD()!=0||!isBarrel()||!(db()->testField(m_PixelModule,"CHIPOFFSET"))){
579  return 0.;
580  }
581 
582  if(isModule3D)
583  return db()->getDouble(m_PixelModule,"CHIPOFFSET",moduleType3D())*mmcm();
584 
585  return db()->getDouble(m_PixelModule,"CHIPOFFSET",moduleType())*mmcm();
586 }
587 
588 double DBPixelGeoManager::PixelChipThickness(bool isModule3D) {
589  if(ibl()&&isModule3D)
590  return db()->getDouble(m_PixelModule,"CHIPTHICK",moduleType3D())*mmcm();
591 
592  return db()->getDouble(m_PixelModule,"CHIPTHICK",moduleType())*mmcm();
593 }
594 
595 
596 
598 //
599 // Module services
600 //
602 
604 {
605  if(!ibl()||GetLD()>0||!isBarrel()) return 0;
606 
607  if (db()->getTableSize(m_PixelModuleSvc))
608  return db()->getTableSize(m_PixelModuleSvc);
609  return 0;
610 }
611 
613 {
614  return db()->getDouble(m_PixelModuleSvc,"LENGTH",svc)*mmcm();
615 }
616 
618 {
619  return db()->getDouble(m_PixelModuleSvc,"WIDTH",svc)*mmcm();
620 }
621 
623 {
624  return db()->getDouble(m_PixelModuleSvc,"THICK",svc)*mmcm();
625 }
626 
628 {
629  return db()->getDouble(m_PixelModuleSvc,"XOFFSET",svc)*mmcm();
630 }
631 
633 {
634  return db()->getDouble(m_PixelModuleSvc,"YOFFSET",svc)*mmcm();
635 }
636 
638 {
639  return db()->getDouble(m_PixelModuleSvc,"ZOFFSET",svc)*mmcm();
640 }
641 
643 {
644  return db()->getInt(m_PixelModuleSvc,"FULLSIZE",svc);
645 }
646 
648 {
649  return db()->getInt(m_PixelModuleSvc,"MODULE3D",svc)*mmcm();
650 }
651 
653 {
654  return db()->getString(m_PixelModuleSvc,"NAME",svc);
655 }
656 
658 {
659  return db()->getString(m_PixelModuleSvc,"MATERIAL",svc);
660 }
661 
662 
663 
665 //
666 // Pixel Disks carbon structure
667 //
670 
671  int isup=0;
672  if (a == "Inner") {
673  isup = 0;
674  } else if(a == "Central") {
675  isup = 1;
676  } else {
677  isup = 2;
678  }
679 
680  return PixelDiskSupportRMin(isup);
681 }
682 
684  int isup=0;
685  if (a == "Inner") {
686  isup = 0;
687  } else if(a == "Central") {
688  isup = 1;
689  } else {
690  isup = 2;
691  }
692  return PixelDiskSupportRMax(isup);
693 }
694 
696 
697  int isup=0;
698  if (a == "Inner") {
699  isup = 0;
700  } else if(a == "Central") {
701  isup = 1;
702  } else {
703  isup = 2;
704  }
705  return PixelDiskSupportThickness(isup);
706 }
707 
708 
710 
711  if (dbVersion() < 3) return 0;
712  int isup = 0;
713  if (a == "Inner") {
714  isup = 0;
715  } else if(a == "Central") {
716  isup = 1;
717  } else {
718  isup = 2;
719  }
720  return PixelDiskSupportMaterialTypeNum(isup);
721 }
722 
723 
725 //
726 // Central Services
727 //
729 //
730 // This is complicated in the DB...
731 // If Rmin < 0 this means that the cylinder has to be placed only once
732 // So I return RMin with its sign, for further processing by the service
733 // methods.
734 // If RMax is <0 the thickness is given in % of r.l. which have to be
735 // calculated by the method calculatethickness
736 //
737 // If Zmin and Zmax have DIFFERENT sign, then the thickness is given in
738 // % of r.l....
739 //
740 
742  // FIXME
743  /*
744  if (dbVersion() < 3) {
745  if(isBarrel() ) {
746  if(a == "Inside") return (*m_PixelBarrelGeneral)[0]->getInt("NFRAMEIN");
747  if(a == "Outside") return (*m_PixelBarrelGeneral)[0]->getInt("NFRAMEOUT");
748  }
749  if(isEndcap() ) {
750  if(a == "Inside") return (*m_PixelEndcapGeneral)[0]->getInt("NFRAMEIN");
751  if(a == "Outside") return (*m_PixelEndcapGeneral)[0]->getInt("NFRAMEOUT");
752  }
753  return 0;
754  } else {
755  */
756  // a is ignored. Use frame num to distinguish between inside (<1000) and ouside (>=1000).
757  if(type == "simple") return db()->getTableSize(m_PixelSimpleService);
758  if(type == "barrel") return db()->getTableSize(m_PixelBarrelService);
759  if(type == "endcap") return db()->getTableSize(m_PixelEndcapService);
760  if(type == "envelope") return db()->getTableSize(m_PixelEnvelopeService);
761  return 0;
762  //}
763 }
764 
765 // Name used when naming G4/Geo volumes
766 std::string DBPixelGeoManager::PixelServiceName(const std::string & type, int index) {
767 
768  if (useLegacy() || !getPixelServiceRecordTestField("VOLNAME",type,index)) {
769  return "";
770  } else {
771  return getPixelServiceRecordString("VOLNAME",type,index);
772  }
773 }
774 
775 
776 // Flag to say whether volume should be described in both positive and
777 // negative halves.
778 bool DBPixelGeoManager::PixelServiceZsymm(const std::string & type, int index) {
779  if (dbVersion() < 3 || !getPixelServiceRecordTestField("ZSYMM",type,index)) {
780  // If ZSYMM not defined use old logic to determine if volume is
781  // duplicated in both positive and negative halves.
782  double rmin = getPixelServiceRecordDouble("RIN",type,index);
783  double zmin = getPixelServiceRecordDouble("ZIN",type,index);
784  return (rmin>0 && zmin > 0.000001);
785  } else {
786  return getPixelServiceRecordInt("ZSYMM",type,index);
787  }
788 }
789 
790 
791 double DBPixelGeoManager::PixelServiceRMin(const std::string & type, int index) {
792  return std::abs(getPixelServiceRecordDouble("RIN",type,index)) * mmcm();
793 }
794 
795 double DBPixelGeoManager::PixelServiceRMax(const std::string & type, int index) {
796  double rtmp = getPixelServiceRecordDouble("ROUT",type,index);
797  // If this is negative this is the thickness of the cyl in % of r.l.
798  double rmin = PixelServiceRMin(type,index);
799  double rmax = 0;
800  if(rtmp > 0) {
801  rmax = rtmp * mmcm();
802  } else {
803  string material = PixelServiceMaterial(type,index);
804  rmax = rmin + CalculateThickness(rtmp, material);
805  }
806  return rmax;
807 }
808 
809 double DBPixelGeoManager::PixelServiceRMin2(const std::string & type, int index) {
811  return 0;
812  } else {
814  }
815 }
816 
817 double DBPixelGeoManager::PixelServiceRMax2(const std::string & type, int index) {
818  if (!getPixelServiceRecordTestField("ROUT2",type,index)) {
819  return 0;
820  } else {
822  }
823 }
824 
825 double DBPixelGeoManager::PixelServiceZMin(const std::string & type, int index) {
826  return getPixelServiceRecordDouble("ZIN",type,index) * mmcm();
827 }
828 
829 double DBPixelGeoManager::PixelServiceZMax(const std::string & type, int index) {
830  double zout = getPixelServiceRecordDouble("ZOUT",type,index);
831  double zmin = PixelServiceZMin(type,index);
832  double zmax = 0;
833  // If zin and zout are opposite sign then zout is the thickness of the cyl in % of r.l.
834  if(zmin * zout > -0.000000001) {
835  zmax = zout * mmcm();
836  } else {
837  string material = PixelServiceMaterial(type,index);
838  double sign = (zmin > 0) ? 1: -1;
839  zmax = zmin + sign*CalculateThickness(zout, material);
840  }
841  return zmax;
842 }
843 
844 double DBPixelGeoManager::PixelServicePhiLoc(const std::string & type, int index) {
846  return 0;
847  } else {
849  }
850 }
851 
852 double DBPixelGeoManager::PixelServiceWidth(const std::string & type, int index) {
853  if (!getPixelServiceRecordTestField("WIDTH",type,index)) {
854  return 0;
855  } else {
856  // Can be in degree or Gaudi::Units::mm. Leave it to GeoPixelServices to interpret.
857  return getPixelServiceRecordDouble("WIDTH",type,index);
858  }
859 }
860 
861 int DBPixelGeoManager::PixelServiceRepeat(const std::string & type, int index) {
862  if (!getPixelServiceRecordTestField("REPEAT",type,index)) {
863  return 0;
864  } else {
865  return getPixelServiceRecordInt("REPEAT",type,index);
866  }
867 }
868 
869 std::string DBPixelGeoManager::PixelServiceShape(const std::string & type, int index) {
870  if (type == "simple") return "TUBE";
871  if (!getPixelServiceRecordTestField("SHAPE",type,index)) {
872  return "TUBE";
873  } else {
874  return getPixelServiceRecordString("SHAPE",type,index);
875  }
876 }
877 
878 
879 int DBPixelGeoManager::PixelServiceShift(const std::string & type, int index) {
880  if (!getPixelServiceRecordTestField("SHIFT",type,index)) {
881  return 0;
882  } else {
883  return getPixelServiceRecordInt("SHIFT",type,index);
884  }
885 }
886 
887 
888 int DBPixelGeoManager::PixelServiceLD(const std::string & type, int index) {
889  return getPixelServiceRecordInt("LAYERNUM",type,index)-1;
890 }
891 
892 string DBPixelGeoManager::PixelServiceMaterial(const std::string & type, int index) {
893 
894  int imat = 0;
895  if (type != "simple") {
896  imat = getPixelServiceRecordInt("MATERIAL",type,index);
897  }
898  std::string materialName;
899  if (!imat) {
900  materialName = getPixelServiceRecordString("MATERIALNAME",type,index);
901  } else {
902  // Old
903  if(type == "barrel") {
904  string mat[11] = {
905  "std::Berillia",
906  "std::Carbon",
907  "pix::Services",
908  "pix::Titanium",
909  "pix::MatPP11",
910  "pix::MatPP12",
911  "pix::MatPP13",
912  "pix::MatPP14",
913  "pix::MatPP15",
914  "pix::MatPP16",
915  "pix::MatPP17"};
916  materialName = mat[imat-1];
917  }
918  if(type == "endcap") {
919  string mat[4] = {
920  "std::Berillia",
921  "std::Carbon",
922  "pix::ECServices",
923  "pix::Disk"};
924  materialName = mat[imat-1];
925  }
926  }
927  return materialName;
928 }
929 
930 
931 int DBPixelGeoManager::PixelServiceFrameNum(const std::string & type, int index) {
932  // In older version frame num indicated "inside" or "outside"
933  // 0-999: Inside
934  // >=1000: Outside
935  // No frame number in simple table.
936  if (type == "simple") return index+1;
937  int framenum = getPixelServiceRecordInt("FRAMENUM",type,index);
938  if (framenum <= 0) return index+1;
939  if (dbVersion() < 3) {
940  if(type == "barrel") {
941  if (index >= m_barrelInFrames) framenum += 1000;
942  }
943  if(type == "endcap") {
944  if (index >= m_endcapInFrames) framenum += 1000;
945  }
946  }
947  return framenum;
948  // FIXME
949  /*
950  if (dbVersion() < 3) return framenum;
951  if (type == "Inside" && framenum < 1000) return framenum;
952  if (type == "Outside" && framenum >= 1000) return framenum%1000;
953  return -1;
954  */
955 }
956 
957 // Access child/envelope service parameters
959 
960  if (type != "envelope") return 0;
961 
962  try{
963  int envnum = getPixelServiceRecordInt("ENVNUM",type,index);
964  return envnum;
965  }
966  catch(...)
967  {}
968 
969  return 0;
970 }
971 
973 
974  // if (type == "envelope") return 0;
975 
976  if (type == "envelope"){
977  try{
978  int envnum = getPixelServiceRecordInt("ENVPARENT",type,index);
979  return envnum;
980  }
981  catch(...)
982  {}
983  }
984  else {
985 
986  try{
987  int envnum = getPixelServiceRecordInt("ENVELOPE",type,index);
988  return envnum;
989  }
990  catch(...)
991  {
992  }
993  }
994 
995 
996  return 0;
997 }
998 
999 std::string DBPixelGeoManager::getPixelServiceRecordString(const std::string & name, const std::string & type, int index) {
1001  return db()->getString(recordSet, name, index);
1002 }
1003 
1004 int DBPixelGeoManager::getPixelServiceRecordInt(const std::string & name, const std::string & type, int index) {
1006  return db()->getInt(recordSet, name, index);
1007 }
1008 
1009 
1010 double DBPixelGeoManager::getPixelServiceRecordDouble(const std::string & name, const std::string & type, int index) {
1012  return db()->getDouble(recordSet, name, index);
1013 }
1014 
1015 bool DBPixelGeoManager::getPixelServiceRecordTestField(const std::string & name, const std::string & type, int index) {
1016  try {
1018  return db()->testField(recordSet, name, index);
1019  }
1020  catch(...){}
1021  return false;
1022 }
1023 
1024 
1025 // Returns IRDBRecordset
1027  // m_barrelInFrames and m_endcapInFrames should be zero in dbVersion >= 3
1028  IRDBRecordset_ptr recordSet;
1029  if (type == "simple") {
1030  recordSet = m_PixelSimpleService;
1031  } else if(type == "barrel") {
1032  recordSet = m_PixelBarrelService;
1033  //if(type != "Inside") index += m_barrelInFrames;
1034  } else if(type == "endcap") {
1035  recordSet = m_PixelEndcapService;
1036  //if(type != "Inside") index += m_endcapInFrames;
1037  } else if(type == "envelope") {
1038  recordSet = m_PixelEnvelopeService;
1039  //if(type != "Inside") index += m_endcapInFrames;
1040  } else {
1041  msg(MSG::ERROR) << "ERROR: getPixelServiceRecord(), neither Barrel of Endcap selected!" << endmsg;
1042  }
1043  return recordSet;
1044 }
1045 
1047 {
1048  double tck = db()->getDouble(m_PixelDisk,"CABLETHICK",m_currentLD);
1049  if( tck > 0.) {
1050  return tck*mmcm();
1051  } else {
1052  std::string matName = getMaterialName("DiskCable", m_currentLD);
1053  return CalculateThickness(tck,matName);
1054  }
1055 }
1056 
1057 int
1059 {
1060  if (dbVersion() < 3) return m_legacyManager->PixelCableElements();
1061  return db()->getTableSize(m_PixelBarrelCable);
1062 }
1063 
1064 int
1066 {
1067  if (dbVersion() < 3) return 0;
1068  return db()->getInt(m_PixelBarrelCable,"LAYER",index);
1069 }
1070 
1071 int
1073 {
1074  if (dbVersion() < 3) return 0;
1075  return db()->getInt(m_PixelBarrelCable,"BISTAVE",index);
1076 }
1077 
1078 
1079 double
1081 {
1082  if (dbVersion() < 3) return m_legacyManager->PixelCableZStart(index);
1083  return db()->getDouble(m_PixelBarrelCable,"ZSTART",index) * Gaudi::Units::mm;
1084 }
1085 
1086 double
1088 {
1089  if (dbVersion() < 3) return m_legacyManager->PixelCableZEnd(index);
1091 }
1092 
1093 double
1095 {
1096  if (dbVersion() < 3) return m_legacyManager->PixelCableWidth(index);
1097  return db()->getDouble(m_PixelBarrelCable,"WIDTH",index) * Gaudi::Units::mm;
1098 }
1099 
1100 double
1102 {
1103  if (dbVersion() < 3) return m_legacyManager->PixelCableThickness(index);
1104  return db()->getDouble(m_PixelBarrelCable,"THICK",index) * Gaudi::Units::mm;
1105 }
1106 
1107 double
1109 {
1111  return db()->getDouble(m_PixelBarrelCable,"STACKPOS",index) * Gaudi::Units::mm;
1112 }
1113 
1114 double
1116 {
1117  if (dbVersion() < 3) return 0;
1119 }
1120 
1121 std::string
1123 {
1124  if (dbVersion() < 3) return m_legacyManager->PixelCableLabel(index);
1125  return db()->getString(m_PixelBarrelCable,"LABEL",index);
1126 }
1127 
1128 
1129 //
1130 // Version of the Geometry
1131 //
1132 
1134  // This determines a version depending on various changes in the database;
1135  int version = 0;
1136 
1137  if (!(*m_PixelLayer)[0]->isFieldNull("PHIOFMODULEZERO")) version = 1;
1138  if (m_PixelReadout->size() != 0) version = 2;
1139  if (m_weightTable->size() != 0) version = 3;
1140  if (m_PixelTMT->size() != 0) version = 4; // Removed all legacy tables
1141 
1142  return version;
1143 }
1144 
1145 
1146 
1147 std::string DBPixelGeoManager::getMaterialName(const std::string & volumeName, int layerdisk, int typenum) {
1148  return m_materialMap->getMaterial(layerdisk, typenum, volumeName);
1149 }
1150 
1151 
1153  // This is for backward compatibilty. Newer geometies get the
1154  // gets them from the database.
1155  m_materialMap->addMaterial(0,0,"Sensor","std::Silicon");
1156  m_materialMap->addMaterial(0,0,"Chip","pix::Chip");
1157  m_materialMap->addMaterial(0,0,"Hybrid","pix::Hybrid");
1158  m_materialMap->addMaterial(0,0,"Omega","pix::MatOmega");
1159  m_materialMap->addMaterial(0,0,"AlTube","pix::MatAlTube");
1160  m_materialMap->addMaterial(1,0,"AlTube","pix::MatAlTube");
1161  m_materialMap->addMaterial(2,0,"AlTube","pix::MatAlTubeFix");
1162  m_materialMap->addMaterial(0,1,"Fluid","pix::MatCap1");
1163  m_materialMap->addMaterial(0,2,"Fluid","pix::MatCap2");
1164  m_materialMap->addMaterial(0,0,"TMT","pix::MatTMT");
1165  m_materialMap->addMaterial(0,0,"GlueOmegaStave","pix::MatGlue");
1166  m_materialMap->addMaterial(0,0,"Connector","pix::MatConn");
1167  m_materialMap->addMaterial(0,0,"PigtailCyl","pix::MatPigtail");
1168  m_materialMap->addMaterial(0,0,"PigtailFlat","pix::MatPigtail");
1169  m_materialMap->addMaterial(0,0,"Cable","pix::MatT0");
1170  m_materialMap->addMaterial(0,0,"DiskCable","pix::ECCables");
1171  m_materialMap->addMaterial(0,0,"DiskSupport","pix::Disk");
1172  m_materialMap->addMaterial(0,0,"Frame","std::Carbon");
1173  m_materialMap->addMaterial(0,0,"EndCone","std::Carbon");
1174 }
1175 
1177 {
1178  std::ostringstream o;
1179  if(isBarrel()) {
1180  if (m_currentLD == 0) {
1181  o << "BL";
1182  } else {
1183  o << "L" << m_currentLD;
1184  }
1185  } else {
1186  o << "D" << m_currentLD;
1187  }
1188  return o.str();
1189 }
1190 
1192 {
1193  return static_cast<int>((*m_PixelBarrelGeneral)[0]->getDouble("VERSION"));
1194 }
1195 
1197 {
1198  return static_cast<int>(((*m_PixelBarrelGeneral)[0]->getDouble("VERSION") - PixelBarrelMajorVersion())*10 + 0.5);
1199 }
1200 
1202 {
1203  return static_cast<int>((*m_PixelEndcapGeneral)[0]->getDouble("VERSION"));
1204 }
1205 
1207 {
1208  return static_cast<int>(((*m_PixelEndcapGeneral)[0]->getDouble("VERSION") - PixelEndcapMajorVersion())*10 + 0.5);
1209 }
1210 
1211 
1213 {
1214  std::string description;
1215  if (db()->testField(m_PixelSwitches,"DESCRIPTION")) {
1216  description = db()->getString(m_PixelSwitches,"DESCRIPTION");
1217  }
1218  return description;
1219 }
1220 
1222 {
1223  std::string name;
1224  if (db()->testField(m_PixelSwitches,"VERSIONNAME")) {
1225  name = db()->getString(m_PixelSwitches,"VERSIONNAME");
1226  }
1227  return name;
1228 }
1229 
1231 {
1232  std::string layout;
1233  if (db()->testField(m_PixelSwitches,"LAYOUT")) {
1234  layout = db()->getString(m_PixelSwitches,"LAYOUT");
1235  }
1236  return layout;
1237 }
1238 
1239 
1241 {
1242  if (db()->getTableSize(m_PixelEnvelope)) {
1243  double rmin = PixelEnvelopeRMin(0);
1244  for (unsigned int i = 1; i < db()->getTableSize(m_PixelEnvelope); i++) {
1245  rmin = std::min(rmin, PixelEnvelopeRMin(i));
1246  }
1247  return rmin;
1248  } else {
1249  return db()->getDouble(m_PixelCommon,"RMIN")*mmcm();
1250  }
1251 }
1252 
1254 {
1255  if (db()->getTableSize(m_PixelEnvelope)) {
1256  double rmax = PixelEnvelopeRMax(0);
1257  for (unsigned int i = 1; i < db()->getTableSize(m_PixelEnvelope); i++) {
1258  rmax = std::max(rmax, PixelEnvelopeRMax(i));
1259  }
1260  return rmax;
1261  } else {
1262  return db()->getDouble(m_PixelCommon,"RMAX")*mmcm();
1263  }
1264 }
1265 
1267 {
1268 
1269  if (db()->getTableSize(m_PixelEnvelope)) {
1270  // The table should contain only +ve z values.
1271  return PixelEnvelopeZ(db()->getTableSize(m_PixelEnvelope) - 1);
1272  } else {
1273  return db()->getDouble(m_PixelCommon,"HALFLENGTH")*mmcm();
1274  }
1275 }
1276 
1278 {
1279  // Return true if the envelope can be built as a simple tube.
1280  // otherwise it will be built as a PCON.
1281  // True if size is 0 or 1.
1282  return (!(db()->getTableSize(m_PixelEnvelope) > 1));
1283 }
1284 
1286 {
1287  return db()->getTableSize(m_PixelEnvelope);
1288 }
1289 
1291 {
1292  double zmin = db()->getDouble(m_PixelEnvelope,"Z",i) * Gaudi::Units::mm;
1293  if (zmin < 0) msg(MSG::ERROR) << "PixelEnvelope table should only contain +ve z values" << endmsg;
1294  return std::abs(zmin);
1295 }
1296 
1298 {
1299  return db()->getDouble(m_PixelEnvelope,"RMIN",i) * Gaudi::Units::mm;
1300 }
1301 
1303 {
1304  return db()->getDouble(m_PixelEnvelope,"RMAX",i) * Gaudi::Units::mm;
1305 }
1306 
1307 
1309 {
1310  return db()->getInt(m_PixelBarrelGeneral,"NLAYER");
1311 }
1312 
1313 // m_PixelBarrelGeneral
1315 {
1316  return db()->getDouble(m_PixelBarrelGeneral,"RMIN")*mmcm();
1317 }
1318 
1320 {
1321  return db()->getDouble(m_PixelBarrelGeneral,"RMAX")*mmcm();
1322 }
1323 
1325 {
1326  return db()->getDouble(m_PixelBarrelGeneral,"HALFLENGTH")*mmcm();
1327 }
1328 
1329 // Described in general services for later geometries.
1331 {
1332  if (useLegacy()) return m_legacyManager->oldFrame();
1333  return false;
1334 }
1335 
1336 // For new geometry a detailed frame is built.
1338 {
1339  return db()->getTableSize(m_PixelFrame);
1340 }
1341 
1343 {
1344  return db()->getTableSize(m_PixelFrame);
1345 }
1346 
1348 {
1349  return db()->getDouble(m_PixelFrame, "RMINSIDE", sectionIndex) * Gaudi::Units::mm;
1350 }
1351 
1353 {
1354  return db()->getDouble(m_PixelFrame, "RMAXSIDE", sectionIndex) * Gaudi::Units::mm;
1355 }
1356 
1358 {
1359  return db()->getDouble(m_PixelFrame, "SIDEWIDTH", sectionIndex) * Gaudi::Units::mm;
1360 }
1361 
1362 double DBPixelGeoManager::PixelFrameZMin(int sectionIndex)
1363 {
1364  return db()->getDouble(m_PixelFrame, "ZMIN", sectionIndex) * Gaudi::Units::mm;
1365 }
1366 
1367 double DBPixelGeoManager::PixelFrameZMax(int sectionIndex)
1368 {
1369  return db()->getDouble(m_PixelFrame, "ZMAX", sectionIndex) * Gaudi::Units::mm;
1370 }
1371 
1373 {
1374  return db()->getDouble(m_PixelFrame, "PHISTART", sectionIndex) * Gaudi::Units::deg;
1375 }
1376 
1378 {
1379  return db()->getInt(m_PixelFrame, "NUMSIDES", sectionIndex);
1380 }
1381 
1383 {
1384  return db()->getInt(m_PixelFrame, "MIRRORSIDES", sectionIndex);
1385 }
1386 
1387 std::string DBPixelGeoManager::PixelFrameSideMaterial(int sectionIndex)
1388 {
1389  return db()->getString(m_PixelFrame, "SIDEMATERIAL", sectionIndex);
1390 }
1391 
1392 std::string DBPixelGeoManager::PixelFrameCornerMaterial(int sectionIndex)
1393 {
1394  return db()->getString(m_PixelFrame, "CORNERMATERIAL", sectionIndex);
1395 }
1396 
1398 {
1399  return db()->getInt(m_PixelFrame,"SECTION",sectionIndex);
1400 }
1401 
1402 void
1404 {
1405  if (!m_frameElementMap) {
1406  m_frameElementMap = new std::map<int,std::vector<int> >;
1407  for (unsigned int i = 0; i < db()->getTableSize(m_PixelFrameSect); ++i) {
1408  int section = db()->getInt(m_PixelFrameSect,"SECTION",i);
1409  (*m_frameElementMap)[section].push_back(i);
1410  }
1411  }
1412 }
1413 
1414 int DBPixelGeoManager::getFrameElementIndex(int sectionIndex, int element)
1415 {
1416  // make map if it is not already made.
1418 
1419  int section = PixelFrameSectionFromIndex(sectionIndex);
1420 
1421  int newIndex = -1;
1422  std::map<int,std::vector<int> >::const_iterator iter = m_frameElementMap->find(section);
1423  if (iter == m_frameElementMap->end()) {
1424  // Should never be the case as PixelFrameNumSideElements should generally be called first
1425  msg(MSG::ERROR) << "Frame section " << section << " has no elements." << endmsg;
1426  } else {
1427  const std::vector<int> & vec = iter->second;
1428  if (static_cast<unsigned int>(element) >= vec.size()) {
1429  msg(MSG::ERROR) << "Element index " << element << " for section " << section << " out of range." << endmsg;
1430  } else {
1431  newIndex = vec[element];
1432  }
1433  }
1434  return newIndex;
1435 }
1436 
1437 
1439 {
1440  // make map if it is not already made.
1442 
1443  int section = PixelFrameSectionFromIndex(sectionIndex);
1444  int numElements = 0;
1445 
1446  std::map<int,std::vector<int> >::const_iterator iter = m_frameElementMap->find(section);
1447  if (iter == m_frameElementMap->end()) {
1448  msg(MSG::DEBUG) << "Frame section " << section << " has no elements." << endmsg;
1449  } else {
1450  numElements = iter->second.size();
1451  }
1452  return numElements;
1453 }
1454 
1455 double DBPixelGeoManager::PixelFrameElementZMin1(int sectionIndex, int element)
1456 {
1457  int index = getFrameElementIndex(sectionIndex, element);
1458  if (index < 0) return 0; // Error message already printed in getFrameElementIndex.
1459  return db()->getDouble(m_PixelFrameSect, "ZMIN1", index) * Gaudi::Units::mm;
1460 }
1461 
1462 double DBPixelGeoManager::PixelFrameElementZMin2(int sectionIndex, int element)
1463 {
1464  int index = getFrameElementIndex(sectionIndex, element);
1465  if (index < 0) return 0; // Error message already printed in getFrameElementIndex.
1466  return db()->getDouble(m_PixelFrameSect, "ZMIN2", index) * Gaudi::Units::mm;
1467 }
1468 
1469 double DBPixelGeoManager::PixelFrameElementZMax1(int sectionIndex, int element)
1470 {
1471  int index = getFrameElementIndex(sectionIndex, element);
1472  if (index < 0) return 0; // Error message already printed in getFrameElementIndex.
1473  return db()->getDouble(m_PixelFrameSect, "ZMAX1", index) * Gaudi::Units::mm;
1474 }
1475 
1476 double DBPixelGeoManager::PixelFrameElementZMax2(int sectionIndex, int element)
1477 {
1478  int index = getFrameElementIndex(sectionIndex, element);
1479  if (index < 0) return 0; // Error message already printed in getFrameElementIndex.
1480  return db()->getDouble(m_PixelFrameSect, "ZMAX2", index) * Gaudi::Units::mm;
1481 }
1482 
1484 {
1485  if (!ibl()) return 0;
1486  if (!db()->testField(m_PixelLayer,"STAVEINDEX",layer)) return 0;
1487  return db()->getInt(m_PixelLayer,"STAVEINDEX",layer);
1488 }
1489 
1491 {
1492  if (!ibl()) return 0;
1493  int defaultLayout = 0;
1495 
1496  if (!db()->testField(m_PixelStave,"LAYOUT",index)) return defaultLayout;
1497  return db()->getInt(m_PixelStave,"LAYOUT",index);
1498 }
1499 
1501 {
1502  if (!ibl()) return 0;
1504 
1505  if (db()->testField(m_PixelStave,"STAVEAXE",index))
1506  return db()->getInt(m_PixelStave,"STAVEAXE",index);
1507  return 0;
1508 }
1509 
1511 {
1512  double radius = db()->getDouble(m_PixelLayer,"RLAYER",m_currentLD)*mmcm();
1513  if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) << "PixelLayerRadius for layer " << m_currentLD
1514  << " is " << radius
1515  << endmsg;
1516  return radius;
1517 }
1518 
1520 {
1521  if (db()->testField(m_PixelLayer,"GBLSHIFT",m_currentLD))
1522  return db()->getDouble(m_PixelLayer,"GBLSHIFT",m_currentLD);
1523  return 0.;
1524 }
1525 
1527 {
1528  if (useLegacy()) return m_legacyManager->PixelLadderLength();
1530  return db()->getDouble(m_PixelStave,"ENVLENGTH",index)*Gaudi::Units::mm;
1531 }
1532 
1534 {
1535  if (useLegacy()) return 0.9*Gaudi::Units::mm;
1537  return db()->getDouble(m_PixelStave,"CLEARANCEY",index)*Gaudi::Units::mm;
1538 }
1539 
1540 // Only used if ladder thickness is automatically calculated it, ie ENVTHICK = 0
1541 // IBL only
1543 {
1545  if (db()->testField(m_PixelStave,"CLEARANCEX",index)) {
1546  return db()->getDouble(m_PixelStave,"CLEARANCEX",index)*Gaudi::Units::mm;
1547  }
1548  return 0.1*Gaudi::Units::mm;
1549 }
1550 
1552 {
1553  if (useLegacy()) return m_legacyManager->PixelLadderThickness(); // 2*1.48972 mm
1555  return db()->getDouble(m_PixelStave,"ENVTHICK",index)*Gaudi::Units::mm;
1556 }
1557 
1559 {
1560  return db()->getDouble(m_PixelLayer,"STAVETILT",m_currentLD)*Gaudi::Units::deg;
1561 }
1562 
1564 {
1565  if (useLegacy()) return m_legacyManager->PixelLadderServicesX(); // 1.48972 mm
1567  return db()->getDouble(m_PixelStave,"SERVICEOFFSETX",index) * Gaudi::Units::mm;
1568 }
1569 
1571 {
1572  if (useLegacy()) return m_legacyManager->PixelLadderServicesY(); // 3mm
1574  return db()->getDouble(m_PixelStave,"SERVICEOFFSETY",index) * Gaudi::Units::mm;
1575 }
1576 
1578 {
1579  if (useLegacy()) return m_legacyManager->PixelLadderCableOffsetX(); // 0
1581  return db()->getDouble(m_PixelStave,"CABLEOFFSETX",index) * Gaudi::Units::mm;
1582 }
1583 
1585 {
1586  if (useLegacy()) return m_legacyManager->PixelLadderCableOffsetY(); // 4mm
1588  return db()->getDouble(m_PixelStave,"CABLEOFFSETY",index) * Gaudi::Units::mm;
1589 }
1590 
1591 // IBL only
1593 {
1595  return db()->getDouble(m_PixelStave,"SUPPORTTHICK",index) * Gaudi::Units::mm;
1596 }
1597 
1598 // IBL only
1600 {
1602  return db()->getDouble(m_PixelStave,"SUPPORTWIDTH",index) * Gaudi::Units::mm;
1603 }
1604 
1605 
1606 
1607 
1608 
1609 // IBL only
1611 {
1612  if (!db()->testFieldTxt(m_PixelConicalStave,"BENTSTAVEANGLE")) return 0;
1614  return db()->getDouble(m_PixelConicalStave,"BENTSTAVEANGLE",index);
1615 }
1616 
1617 // IBL only
1619 {
1620  if (!db()->testFieldTxt(m_PixelConicalStave,"BENTSTAVENMODULE")) return 0;
1622  return db()->getInt(m_PixelConicalStave,"BENTSTAVENMODULE",index);
1623 }
1624 
1626 {
1628  return db()->getDouble(m_PixelStave,"MODULEDZ",index);
1629 }
1630 
1631 // IBL only
1633 {
1635  if (db()->testField(m_PixelStave,"SUPPORTHLENGTH",index)) {
1636  double halflength = db()->getDouble(m_PixelStave,"SUPPORTHLENGTH",index) * Gaudi::Units::mm;
1637  if (halflength > 0) return 2 * halflength;
1638  }
1639  double safety = 0.01*Gaudi::Units::mm;
1640  return PixelLadderLength() - safety;
1641 }
1642 
1643 // IBL detailed stave support only
1644 
1646 {
1647  // set layer to 0 (in order to read read IBL data)
1648  int currentLD_tmp = m_currentLD;
1649  m_currentLD = 0;
1650 
1651  double boardThick = PixelBoardThickness();
1652  double chipThick = PixelChipThickness();
1653  double chipGap = PixelChipGap();
1654 
1655  double xCenterCoolingPipe = boardThick*.5+chipThick+chipGap+ // from sensor sensor to plate
1656  IBLStaveFacePlateThickness() + IBLStaveFacePlateGreaseThickness() + // plate thickness (grease + plate)
1657  IBLStaveTubeMiddlePos(); // from plate to colling pipe center
1658  double yCenterCoolingPipe = IBLStaveMechanicalStaveOffset();
1659  GeoTrf::Vector3D centerCoolingPipe(xCenterCoolingPipe, yCenterCoolingPipe, 0.);
1660 
1661  m_currentLD = currentLD_tmp;
1662  return centerCoolingPipe;
1663 }
1664 
1665 
1667 {
1668  // set layer to 0 (in order to read read IBL data)
1669  int currentLD_tmp = m_currentLD;
1670  m_currentLD = 0;
1671 
1672  // Point that defines the center of the cooling pipe
1673  GeoTrf::Vector3D centerCoolingPipe_inv = -IBLStaveRotationAxis();
1674  GeoTrf::Vector3D origin(0.,0.,0.);
1675  double layerRadius = PixelLayerRadius();
1676  double ladderTilt = PixelLadderTilt();
1677 
1678  // Transforms
1679  GeoTrf::Transform3D staveTrf = GeoTrf::RotateZ3D(ladderTilt)*GeoTrf::Translate3D(centerCoolingPipe_inv.x(),centerCoolingPipe_inv.y(),centerCoolingPipe_inv.z());
1680  GeoTrf::Vector3D sensorPos = staveTrf*origin;
1681 
1682  double yPos = sensorPos.y();
1683  GeoTrf::Vector3D sensorPos_layer(sqrt(layerRadius*layerRadius-yPos*yPos),yPos,0.);
1684 
1685  double staveRadius = sensorPos_layer.x()-sensorPos.x();
1686 
1687  m_currentLD = currentLD_tmp;
1688  return staveRadius;
1689 }
1690 
1691 
1693 {
1694  // int index = PixelStaveIndex(m_currentLD);
1695  int index=0;
1696  if (db()->testField(m_PixelIBLStave,"FACEPLATETHICK",index)) {
1697  double thickness = db()->getDouble(m_PixelIBLStave,"FACEPLATETHICK",index) * Gaudi::Units::mm;
1698  if (thickness > 0) return thickness ;
1699  }
1700  return 0.0;
1701 }
1702 
1704 {
1705  // int index = PixelStaveIndex(m_currentLD);
1706  int index=0;
1707  if (db()->testField(m_PixelIBLStave,"STAVEWIDTH",index)) {
1708  double value = db()->getDouble(m_PixelIBLStave,"STAVEWIDTH",index) * Gaudi::Units::mm;
1709  if (value > 0) return value ;
1710  }
1711  return 0.0;
1712 }
1713 
1715 {
1716  // int index = PixelStaveIndex(m_currentLD);
1717  int index=0;
1718  if (db()->testField(m_PixelIBLStave,"ENDBLOCKLENGTH",index)) {
1719  double value = db()->getDouble(m_PixelIBLStave,"ENDBLOCKLENGTH",index) * Gaudi::Units::mm;
1720  if (value > 0) return value ;
1721  }
1722  return 0.0;
1723 }
1724 
1726 {
1727  // int index = PixelStaveIndex(m_currentLD);
1728  int index=0;
1729  if (db()->testField(m_PixelIBLStave,"ENDBLOCKFIXINGPOS",index)) {
1730  double value = db()->getDouble(m_PixelIBLStave,"ENDBLOCKFIXINGPOS",index) * Gaudi::Units::mm;
1731  return value ;
1732  }
1733  return 0.0;
1734 }
1735 
1737 {
1738  // try and catch (param availbale only if db tag > IBL-03-00-00)
1739  try{
1740  int index=0;
1741  if (db()->testField(m_PixelIBLStave,"ENDBLOCKOMEGAOVERLAP",index)) {
1742  double value = db()->getDouble(m_PixelIBLStave,"ENDBLOCKOMEGAOVERLAP",index) * Gaudi::Units::mm;
1743  return value ;
1744  }
1745  return 0.0;
1746  }
1747  catch(...){}
1748  return 0.;
1749 }
1750 
1752 {
1753  // try and catch (param availbale only if db tag > IBL-03-00-00)
1754  try
1755  {
1756  int index=0;
1757  if (db()->testField(m_PixelIBLStave,"STAVELENGTH",index)) {
1758  double value = db()->getDouble(m_PixelIBLStave,"STAVELENGTH",index) * Gaudi::Units::mm;
1759  return value ;
1760  }
1761  }
1762  catch(...)
1763  {
1764  // FIXME : patch for initial IBL geometry (SES)
1765  // IBL stave length not eqal to other stave length
1766  }
1767 
1768  return 748.0 * Gaudi::Units::mm;
1769 }
1770 
1772 {
1773  // int index = PixelStaveIndex(m_currentLD);
1774  int index=0;
1775  if (!isModule3D&&db()->testField(m_PixelIBLStave,"MODULELATERALOFFSET",index)) {
1776  double value = db()->getDouble(m_PixelIBLStave,"MODULELATERALOFFSET",index) * Gaudi::Units::mm;
1777  return value ;
1778  }
1779  if (isModule3D&&db()->testField(m_PixelIBLStave,"MODULELATERALOFFSET3D",index)) {
1780  double value = db()->getDouble(m_PixelIBLStave,"MODULELATERALOFFSET3D",index) * Gaudi::Units::mm;
1781  return value ;
1782  }
1783  return 0.0;
1784 }
1785 
1787 {
1788  // int index = PixelStaveIndex(m_currentLD);
1789  int index=0;
1790  if (db()->testField(m_PixelIBLStave,"STAVETOMODULEGAP",index)) {
1791  double value = db()->getDouble(m_PixelIBLStave,"STAVETOMODULEGAP",index) * Gaudi::Units::mm;
1792  return value ;
1793  }
1794  return 0.0;
1795 }
1796 
1798 {
1799  // int index = PixelStaveIndex(m_currentLD);
1800  int index=0;
1801  if (db()->testField(m_PixelIBLStave,"TUBEOUTERDIAM",index)) {
1802  double value = db()->getDouble(m_PixelIBLStave,"TUBEOUTERDIAM",index) * Gaudi::Units::mm;
1803  if (value > 0) return value ;
1804  }
1805  return 0.0;
1806 }
1807 
1809 {
1810  // int index = PixelStaveIndex(m_currentLD);
1811  int index=0;
1812  if (db()->testField(m_PixelIBLStave,"TUBEINNERDIAM",index)) {
1813  double value = db()->getDouble(m_PixelIBLStave,"TUBEINNERDIAM",index) * Gaudi::Units::mm;
1814  if (value > 0) return value ;
1815  }
1816  return 0.0;
1817 }
1818 
1820 {
1821  // int index = PixelStaveIndex(m_currentLD);
1822  int index=0;
1823  if (db()->testField(m_PixelIBLStave,"TUBEMIDDLEPOS",index)) {
1824  double value = db()->getDouble(m_PixelIBLStave,"TUBEMIDDLEPOS",index) * Gaudi::Units::mm;
1825  return value ;
1826  }
1827  return 0.0;
1828 }
1829 
1831 {
1832  // int index = PixelStaveIndex(m_currentLD);
1833  int index=0;
1834  if (db()->testField(m_PixelIBLStave,"FLEXLAYERTHICK",index)) {
1835  double value = db()->getDouble(m_PixelIBLStave,"FLEXLAYERTHICK",index) * Gaudi::Units::mm;
1836  if (value > 0) return value ;
1837  }
1838  return 0.0;
1839 }
1840 
1842 {
1843  // int index = PixelStaveIndex(m_currentLD);
1844  int index=0;
1845  if (db()->testField(m_PixelIBLStave,"FLEXBASETHICK",index)) {
1846  double value = db()->getDouble(m_PixelIBLStave,"FLEXBASETHICK",index) * Gaudi::Units::mm;
1847  if (value > 0) return value ;
1848  }
1849  return 0.0;
1850 }
1851 
1853 {
1854  // int index = PixelStaveIndex(m_currentLD);
1855  int index=0;
1856  if (db()->testField(m_PixelIBLStave,"FLEXWIDTH",index)) {
1857  double value = db()->getDouble(m_PixelIBLStave,"FLEXWIDTH",index) * Gaudi::Units::mm;
1858  if (value > 0) return value ;
1859  }
1860  return 0.0;
1861 }
1862 
1864 {
1865  // int index = PixelStaveIndex(m_currentLD);
1866  int index=0;
1867  if (db()->testField(m_PixelIBLStave,"FLEXOFFSET",index)) {
1868  double value = db()->getDouble(m_PixelIBLStave,"FLEXOFFSET",index) * Gaudi::Units::mm;
1869  return value ;
1870  }
1871  return 0.0;
1872 }
1873 
1874 
1876 {
1877  // int index = PixelStaveIndex(m_currentLD);
1878  int index=0;
1879  if (db()->testField(m_PixelIBLStave,"OMEGATHICK",index)) {
1880  double value = db()->getDouble(m_PixelIBLStave,"OMEGATHICK",index) * Gaudi::Units::mm;
1881  return value ;
1882  }
1883  return 0.0;
1884 }
1885 
1887 {
1888  // int index = PixelStaveIndex(m_currentLD);
1889  int index=0;
1890  if (db()->testField(m_PixelIBLStave,"OMEGAENDCENTERX",index)) {
1891  double value = db()->getDouble(m_PixelIBLStave,"OMEGAENDCENTERX",index) * Gaudi::Units::mm;
1892  return value ;
1893  }
1894  return 0.0;
1895 }
1897 {
1898  // int index = PixelStaveIndex(m_currentLD);
1899  int index=0;
1900  if (db()->testField(m_PixelIBLStave,"OMEGAENDCENTERY",index)) {
1901  double value = db()->getDouble(m_PixelIBLStave,"OMEGAENDCENTERY",index) * Gaudi::Units::mm;
1902  return value ;
1903  }
1904  return 0.0;
1905 }
1907 {
1908  // int index = PixelStaveIndex(m_currentLD);
1909  int index=0;
1910  if (db()->testField(m_PixelIBLStave,"OMEGAENDRADIUS",index)) {
1911  double value = db()->getDouble(m_PixelIBLStave,"OMEGAENDRADIUS",index) * Gaudi::Units::mm;
1912  return value ;
1913  }
1914  return 0.0;
1915 }
1917 {
1918  // int index = PixelStaveIndex(m_currentLD);
1919  int index=0;
1920  if (db()->testField(m_PixelIBLStave,"OMEGAENDANGLE",index)) {
1921  double value = db()->getDouble(m_PixelIBLStave,"OMEGAENDANGLE",index) * Gaudi::Units::deg;
1922  return value ;
1923  }
1924  return 0.0;
1925 }
1926 
1928 {
1929  // int index = PixelStaveIndex(m_currentLD);
1930  int index=0;
1931  if (db()->testField(m_PixelIBLStave,"OMEGAMIDCENTERX",index)) {
1932  double value = db()->getDouble(m_PixelIBLStave,"OMEGAMIDCENTERX",index) * Gaudi::Units::mm;
1933  return value ;
1934  }
1935  return 0.0;
1936 }
1937 
1939 {
1940  // int index = PixelStaveIndex(m_currentLD);
1941  int index=0;
1942  if (db()->testField(m_PixelIBLStave,"OMEGAMIDRADIUS",index)) {
1943  double value = db()->getDouble(m_PixelIBLStave,"OMEGAMIDRADIUS",index) * Gaudi::Units::mm;
1944  return value ;
1945  }
1946  return 0.0;
1947 }
1949 {
1950  // int index = PixelStaveIndex(m_currentLD);
1951  int index=0;
1952  if (db()->testField(m_PixelIBLStave,"OMEGAOPENINGANGLE",index)) {
1953  double value = db()->getDouble(m_PixelIBLStave,"OMEGAOPENINGANGLE",index) * Gaudi::Units::deg;
1954  return value ;
1955  }
1956  return 0.0;
1957 }
1958 
1960 {
1961  // int index = PixelStaveIndex(m_currentLD);
1962  int index=0;
1963  if (db()->testField(m_PixelIBLStave,"NMODULE",index)) {
1964  int value = db()->getInt(m_PixelIBLStave,"NMODULE",index);
1965  if (value > 0) return value ;
1966  }
1967  return 0;
1968 }
1969 
1971 {
1973 
1974 }
1975 
1977 {
1978  // int index = PixelStaveIndex(m_currentLD);
1979  int index=0;
1980  if (db()->testField(m_PixelIBLStave,"MODULEGAP",index)) {
1981  double value = db()->getDouble(m_PixelIBLStave,"MODULEGAP",index) * Gaudi::Units::mm;
1982  if (value > 0) return value ;
1983  }
1984  return 0.0;
1985 }
1986 
1988 {
1989  // int index = PixelStaveIndex(m_currentLD);
1990  int index=0;
1991  if (db()->testField(m_PixelIBLStave,"MODULETYPE",index)) {
1992  int value = db()->getInt(m_PixelIBLStave,"MODULETYPE",index) * Gaudi::Units::mm;
1993  if (value > 0) return value ;
1994  }
1995  return 0;
1996 }
1997 
1999 {
2000  // try and catch (param availbale only if db tag > IBL-03-00-00)
2001  try{
2002  int index=0;
2003  if (db()->testField(m_PixelIBLGlueGrease,"FACEPLATEGREASETHICK",index)) {
2004  double value = db()->getDouble(m_PixelIBLGlueGrease,"FACEPLATEGREASETHICK",index) * Gaudi::Units::mm;
2005  return value ;
2006  }
2007  return 0.;
2008  }
2009  catch(...){}
2010  return 0.;
2011 }
2012 
2014 {
2015  // try and catch (param availbale only if db tag > IBL-03-00-00)
2016  try{
2017  int index=0;
2018  if (db()->testField(m_PixelIBLGlueGrease,"FACEPLATEGLUETHICK",index)) {
2019  double value = db()->getDouble(m_PixelIBLGlueGrease,"FACEPLATEGLUETHICK",index) * Gaudi::Units::mm;
2020  return value ;
2021  }
2022  return 0.;
2023  }
2024  catch(...) {}
2025  return 0.;
2026 }
2027 
2029 {
2030  // try and catch (param availbale only if db tag > IBL-03-00-00)
2031  try{
2032  int index=0;
2033  if (db()->testField(m_PixelIBLGlueGrease,"TUBEGLUETHICK",index)) {
2034  double value = db()->getDouble(m_PixelIBLGlueGrease,"TUBEGLUETHICK",index) * Gaudi::Units::mm;
2035  return value ;
2036  }
2037  return 0.;
2038  }
2039  catch(...) {}
2040  return 0.;
2041 }
2042 
2044 {
2045  // try and catch (param availbale only if db tag > IBL-03-00-00)
2046  try{
2047  int index=0;
2048  if (db()->testField(m_PixelIBLGlueGrease,"OMEGAGLUETHICK",index)) {
2049  double value = db()->getDouble(m_PixelIBLGlueGrease,"OMEGAGLUETHICK",index) * Gaudi::Units::mm;
2050  return value ;
2051  }
2052  return 0.;
2053  }
2054  catch(...){}
2055  return 0.;
2056 }
2057 
2058 
2060 {
2061  // int index = PixelStaveIndex(m_currentLD);
2062  int index=0;
2063  if (db()->testField(m_PixelIBLSupport,"STAVERINGWIDTH",index)) {
2064  double value = db()->getDouble(m_PixelIBLSupport,"STAVERINGWIDTH",index) * Gaudi::Units::mm;
2065  if (value > 0) return value ;
2066  }
2067  return 0.0;
2068 }
2069 
2071 {
2072  // int index = PixelStaveIndex(m_currentLD);
2073  int index=0;
2074  if (db()->testField(m_PixelIBLSupport,"STAVERINGINNERRADIUS",index)) {
2075  double value = db()->getDouble(m_PixelIBLSupport,"STAVERINGINNERRADIUS",index) * Gaudi::Units::mm;
2076  if (value > 0) return value ;
2077  }
2078  return 0.0;
2079 }
2080 
2082 {
2083  // int index = PixelStaveIndex(m_currentLD);
2084  int index=0;
2085  if (db()->testField(m_PixelIBLSupport,"STAVERINGOUTERRADIUS",index)) {
2086  double value = db()->getDouble(m_PixelIBLSupport,"STAVERINGOUTERRADIUS",index) * Gaudi::Units::mm;
2087  if (value > 0) return value ;
2088  }
2089  return 0.0;
2090 }
2091 
2092 
2094 {
2095  // int index = PixelStaveIndex(m_currentLD);
2096  int index=0;
2097  if (db()->testField(m_PixelIBLSupport,"STAVERINGFIXINGPOS",index)) {
2098  double value = db()->getDouble(m_PixelIBLSupport,"STAVERINGFIXINGPOS",index) * Gaudi::Units::mm;
2099  if (value > 0) return value ;
2100  }
2101  return 0.0;
2102 }
2103 
2105 {
2106  // int index = PixelStaveIndex(m_currentLD);
2107  int index=0;
2108  if (db()->testField(m_PixelIBLSupport,"STAVEMIDRINGWIDTH",index)) {
2109  double value = db()->getDouble(m_PixelIBLSupport,"STAVEMIDRINGWIDTH",index) * Gaudi::Units::mm;
2110  if (value > 0) return value ;
2111  }
2112  return 0.0;
2113 }
2114 
2116 {
2117  // int index = PixelStaveIndex(m_currentLD);
2118  int index=0;
2119  if (db()->testField(m_PixelIBLSupport,"STAVEMIDRINGINNERRADIUS",index)) {
2120  double value = db()->getDouble(m_PixelIBLSupport,"STAVEMIDRINGINNERRADIUS",index) * Gaudi::Units::mm;
2121  if (value > 0) return value;
2122  }
2123  return 0.0;
2124 }
2125 
2127 {
2128  // int index = PixelStaveIndex(m_currentLD);
2129  int index=0;
2130  if (db()->testField(m_PixelIBLSupport,"STAVEMIDRINGOUTERRADIUS",index)) {
2131  double value = db()->getDouble(m_PixelIBLSupport,"STAVEMIDRINGOUTERRADIUS",index) * Gaudi::Units::mm;
2132  if (value > 0) return value ;
2133  }
2134  return 0.0;
2135 }
2136 
2138 {
2139  // int index = PixelStaveIndex(m_currentLD);
2140  int index=0;
2141  if (db()->testField(m_PixelIBLFlex,"FLEXMIDGAP",index)) {
2142  double value = db()->getDouble(m_PixelIBLFlex,"FLEXMIDGAP",index) * Gaudi::Units::mm;
2143  return value ;
2144  }
2145  return 0.0;
2146 }
2147 
2149 {
2150  // int index = PixelStaveIndex(m_currentLD);
2151  int index=0;
2152  return db()->testField(m_PixelIBLFlex,"FLEXMIDGAP",index);
2153 }
2154 
2155 
2157 {
2158  // int index = PixelStaveIndex(m_currentLD);
2159  int index=0;
2160  if (db()->testField(m_PixelIBLFlex,"FLEXDOGLEGLENGTH",index)) {
2161  double value = db()->getDouble(m_PixelIBLFlex,"FLEXDOGLEGLENGTH",index) * Gaudi::Units::mm;
2162  return value ;
2163  }
2164  return 0.0;
2165 }
2166 
2167 
2169 {
2170  // int index = PixelStaveIndex(m_currentLD);
2171  int index=0;
2172  if (db()->testField(m_PixelIBLFlex,"FLEXWINGWIDTH",index)) {
2173  double value = db()->getDouble(m_PixelIBLFlex,"FLEXWINGWIDTH",index) * Gaudi::Units::mm;
2174  return value ;
2175  }
2176  return 0.0;
2177 }
2178 
2180 {
2181  // int index = PixelStaveIndex(m_currentLD);
2182  int index=0;
2183  if (db()->testField(m_PixelIBLFlex,"FLEXWINGTHICK",index)) {
2184  double value = db()->getDouble(m_PixelIBLFlex,"FLEXWINGTHICK",index) * Gaudi::Units::mm;
2185  return value ;
2186  }
2187  return 0.0;
2188 }
2189 
2191 {
2192  // int index = PixelStaveIndex(m_currentLD);
2193  int index=0;
2194  if (db()->testField(m_PixelIBLFlex,"FLEXDOGLEGRATIO",index)) {
2195  double value = db()->getDouble(m_PixelIBLFlex,"FLEXDOGLEGRATIO",index) * Gaudi::Units::mm;
2196  return value ;
2197  }
2198  return 0.0;
2199 }
2200 
2202 {
2203  std::ostringstream lname;
2204  lname << "FLEXDOGLEGHEIGHT"<<iHeight;
2205 
2206  // int index = PixelStaveIndex(m_currentLD);
2207  int index=0;
2208  if (db()->testField(m_PixelIBLFlex,lname.str(),index)) {
2209  double value = db()->getDouble(m_PixelIBLFlex,lname.str(),index) * Gaudi::Units::mm;
2210  return value ;
2211  }
2212  return 0.0;
2213 }
2214 
2216 {
2217  // int index = PixelStaveIndex(m_currentLD);
2218  int index=0;
2219  if (db()->testField(m_PixelIBLFlex,"FLEXDOGLEGDY",index)) {
2220  double value = db()->getDouble(m_PixelIBLFlex,"FLEXDOGLEGDY",index) * Gaudi::Units::mm;
2221  return value ;
2222  }
2223  return 0.0;
2224 }
2225 
2227 {
2228  std::ostringstream lname;
2229  lname << "FLEXPP0_Z"<<iPos;
2230 
2231  // int index = PixelStaveIndex(m_currentLD);
2232  int index=0;
2233  if (db()->testField(m_PixelIBLFlex,lname.str(),index)) {
2234  double value = db()->getDouble(m_PixelIBLFlex,lname.str(),index) * Gaudi::Units::mm;
2235  return value ;
2236  }
2237  return 0.0;
2238 }
2239 
2240 
2242 {
2243  std::ostringstream lname;
2244  lname << "FLEXPP0_S"<<iPos<<"RMIN";
2245 
2246  // int index = PixelStaveIndex(m_currentLD);
2247  int index=0;
2248  if (db()->testField(m_PixelIBLFlex,lname.str(),index)) {
2249  double value = db()->getDouble(m_PixelIBLFlex,lname.str(),index) * Gaudi::Units::mm;
2250  return value ;
2251  }
2252  return 0.0;
2253 }
2254 
2256 {
2257  std::ostringstream lname;
2258  lname << "FLEXPP0_S"<<iPos<<"RMAX";
2259 
2260  // int index = PixelStaveIndex(m_currentLD);
2261  int index=0;
2262  if (db()->testField(m_PixelIBLFlex,lname.str(),index)) {
2263  double value = db()->getDouble(m_PixelIBLFlex,lname.str(),index) * Gaudi::Units::mm;
2264  return value ;
2265  }
2266  return 0.0;
2267 }
2268 
2269 
2270 std::string DBPixelGeoManager::IBLFlexMaterial(int iPos, const std::string& flexType)
2271 {
2272 
2273  int nbMaterial=db()->getTableSize(m_PixelIBLFlexMaterial);
2274  int cmptType=0;
2275 
2276  for(int index=0; index<nbMaterial; index++)
2277  {
2278  std::string flexTypeIdx = db()->getString(m_PixelIBLFlexMaterial,"TYPE",index);
2279  if(flexTypeIdx.compare(flexType)==0)
2280  {
2281  cmptType++;
2282  if(iPos==cmptType){
2283  std::string matTypeIdx = db()->getString(m_PixelIBLFlexMaterial,"MATERIALNAME",index);
2284  return matTypeIdx;
2285  }
2286  }
2287  }
2288  return std::string("noMat");
2289 
2290 }
2291 
2292 
2293 double DBPixelGeoManager:: IBLServiceGetMinRadialPosition(const std::string& srvName, const std::string& srvType,
2294  double srvZmin, double srvZmax)
2295 {
2296 
2297  double rmin=99999.;
2298 
2299  int numServices = PixelServiceElements(srvType);
2300  int nbSrv=0;
2301  for(int ii = 0; ii < numServices; ii++) {
2302  // Retrieve/calculate the parameters for the volume.
2303  //
2304  std::string name;
2305  if(srvType=="simple")
2306  name=db()->getString(m_PixelSimpleService,"NAME",ii);
2307  else
2308  name=PixelServiceName(srvType,ii);
2309 
2310  if(name.find(srvName)!=std::string::npos){
2311  double zmin, zmax, r;
2312  int symm;
2313  if(srvType=="simple"){
2316  symm=db()->getInt(m_PixelSimpleService,"ZSYMM",ii);
2318  }
2319  else {
2320  zmin=PixelServiceZMin(srvType, ii);
2321  zmax=PixelServiceZMax(srvType, ii);
2322  symm=PixelServiceZsymm(srvType, ii);
2323  r=PixelServiceRMin(srvType, ii);
2324  }
2325 
2326  bool bZintervalle = false;
2327  if( (srvZmin-zmin)*(srvZmin-zmax)<0 || (srvZmax-zmin)*(srvZmax-zmax)<0 ) bZintervalle=true;
2328  if( symm==1 && ((-srvZmin-zmin)*(-srvZmin-zmax)<0 || (-srvZmax-zmin)*(-srvZmax-zmax)<0) ) bZintervalle=true;
2329 
2330  if(bZintervalle){
2331  if(r<rmin) rmin=r;
2332  nbSrv++;
2333  }
2334  }
2335  }
2336 
2337  if(nbSrv<1)return -1;
2338  return rmin;
2339 
2340 }
2341 
2342 double DBPixelGeoManager:: IBLServiceGetMaxRadialPosition(const std::string& srvName, const std::string& srvType,
2343  double srvZmin, double srvZmax)
2344 {
2345 
2346  double rmax=-1.;
2347  int numServices = PixelServiceElements(srvType);
2348 
2349  int nbSrv=0;
2350  for(int ii = 0; ii < numServices; ii++) {
2351  // Retrieve/calculate the parameters for the volume.
2352  //
2353  std::string name;
2354  if(srvType=="simple")
2355  name=db()->getString(m_PixelSimpleService,"NAME",ii);
2356  else
2357  name=PixelServiceName(srvType,ii);
2358 
2359  if(name.find(srvName)!=std::string::npos){
2360 
2361  double zmin, zmax, r;
2362  int symm;
2363  if(srvType=="simple"){
2366  symm=db()->getInt(m_PixelSimpleService,"ZSYMM",ii);
2368  }
2369  else {
2370  zmin=PixelServiceZMin(srvType, ii);
2371  zmax=PixelServiceZMax(srvType, ii);
2372  symm=PixelServiceZsymm(srvType, ii);
2373  r=PixelServiceRMax(srvType, ii);
2374  }
2375 
2376  bool bZintervalle = false;
2377  if( (srvZmin-zmin)*(srvZmin-zmax)<0 || (srvZmax-zmin)*(srvZmax-zmax)<0 ) bZintervalle=true;
2378  if( symm==1 && ((-srvZmin-zmin)*(-srvZmin-zmax)<0 || (-srvZmax-zmin)*(-srvZmax-zmax)<0) ) bZintervalle=true;
2379 
2380  if(bZintervalle && r>rmax){
2381  rmax=r;
2382  nbSrv++;
2383  }
2384  }
2385  }
2386 
2387  if(nbSrv<1)return -1;
2388  return rmax;
2389 
2390 }
2391 
2393 {
2394  if (m_staveTypeTable->size() == 0) return phi % 2;
2395  return m_pixelStaveTypes->getBiStaveType(layer, phi) % 2;
2396 }
2397 
2399 {
2400  return db()->getInt(m_PixelLayer,"NSECTORS",m_currentLD);
2401 }
2402 
2404 {
2405  // For backward compatibilty first module is at 1/2 a module division
2406  if (!db()->testField(m_PixelLayer,"PHIOFMODULEZERO",m_currentLD)){
2407  if(NPixelSectors()>0) return 180.0*Gaudi::Units::degree/NPixelSectors();
2408  return 0.;
2409  } else {
2410  return db()->getDouble(m_PixelLayer,"PHIOFMODULEZERO",m_currentLD) * Gaudi::Units::degree;
2411  }
2412 }
2413 
2414 
2416 {
2417  int staveIndex = PixelStaveIndex(m_currentLD);
2418  if(ibl() && PixelStaveLayout()>3 && PixelStaveLayout()<7 && m_currentLD==0)
2419  return IBLStaveModuleNumber();
2420  else
2421  return db()->getInt(m_PixelStave,"NMODULE",staveIndex);
2422 
2423 }
2424 
2426 {
2427  int staveIndex = PixelStaveIndex(m_currentLD);
2428  return db()->getDouble(m_PixelStave,"MODULETILT",staveIndex)*Gaudi::Units::deg;
2429 }
2430 
2432 {
2433  int staveIndex = PixelStaveIndex(m_currentLD);
2434  return db()->getDouble(m_PixelStave,"CENTRMODULESHIFT",staveIndex)*mmcm();
2435 }
2436 
2438 {
2439  // ZPOSTYPE 0. Means equi-distant modules.
2440  // ZPOSTYPE != 0. Means tabulated z positions.
2441  int staveIndex = PixelStaveIndex(m_currentLD);
2442  int zPosType = 0;
2443  if (ibl() && db()->testField(m_PixelStave,"ZPOSTYPE",staveIndex)) {
2444  zPosType = db()->getInt(m_PixelStave,"ZPOSTYPE",staveIndex);
2445  }
2446  if (zPosType) {
2447  // Z positions from table
2448  return PixelModuleZPositionTabulated(etaModule, zPosType);
2449  } else {
2450  // Equi-distant modules
2451  int moduleIndex = PixelModuleIndexFromEta(etaModule);
2452  return db()->getDouble(m_PixelStave,"MODULEDZ",staveIndex)*mmcm() * (moduleIndex - 0.5*(PixelNModule()-1));
2453  }
2454 }
2455 
2457 {
2458  if (!m_zPositionMap) {
2460  for (unsigned int indexTmp = 0; indexTmp < db()->getTableSize(m_PixelStaveZ); ++indexTmp) {
2461  int eta_module = db()->getInt(m_PixelStaveZ,"ETAMODULE",indexTmp);
2462  int type_tmp = db()->getInt(m_PixelStaveZ,"TYPE",indexTmp);
2463  m_zPositionMap->add(type_tmp,eta_module,indexTmp);
2464  }
2465  }
2466  int index = m_zPositionMap->find(type, etaModule);
2467  if (index < 0) {
2468  msg(MSG::ERROR) << "Z position not found for etaModule,type = " << etaModule << ", " << type << endmsg;
2469  return 0;
2470  }
2471  return db()->getDouble(m_PixelStaveZ,"ZPOS",index) * Gaudi::Units::mm;
2472 }
2473 
2475 {
2476  if (centerModule(etaModule)) return 1;
2477  return 0.;
2478 }
2479 
2481 {
2482  int staveIndex = PixelStaveIndex(m_currentLD);
2483  if (!ibl() || !db()->testField(m_PixelStave,"STAGGERDIST",staveIndex)) return 0;
2484  return db()->getDouble(m_PixelStave,"STAGGERDIST",staveIndex) * Gaudi::Units::mm;
2485 }
2486 
2488 {
2489  int staveIndex = PixelStaveIndex(m_currentLD);
2490  if (!ibl() || !db()->testField(m_PixelStave,"FIRSTSTAGGER",staveIndex)) return 0;
2491  // FIRSTSTAGGER refers to whether the first module (lowest etavalue) is staggered up (+1) or down(-1)
2492  int firstStagger = db()->getInt(m_PixelStave,"FIRSTSTAGGER",staveIndex);
2493  int moduleIndex = PixelModuleIndexFromEta(etaModule);
2494  return firstStagger * (moduleIndex%2 ? -1 : 1);
2495 }
2496 
2498 {
2499  bool allowSkip = true;
2500  if (ibl()){
2501  int staveIndex = PixelStaveIndex(m_currentLD);
2502  if (db()->testField(m_PixelStave,"NOSKIPZERO",staveIndex)) {
2503  if (db()->getInt(m_PixelStave,"NOSKIPZERO",staveIndex)) allowSkip = false;
2504  }
2505  }
2506  return allowSkip;
2507 }
2508 
2510 {
2511  // There is only a center module if there are an odd number
2512  // of modules. In that case it will be etaModule = 0.
2513  return (etaModule == 0 && PixelNModule()%2);
2514 }
2515 
2517 {
2518  int nModules = PixelNModule();
2519  int etaModule = index-nModules/2;
2520  // If even number of modules skip eta = 0.
2521  // For IBL this behaviour can be disabled.
2522  if (allowSkipEtaZero() && (etaModule >= 0) && !(nModules%2)) etaModule++;
2523  return etaModule;
2524 }
2525 
2527 {
2528  int nModules = PixelNModule();
2529  int index = etaModule + nModules/2;
2530  // If even number of modules skip eta = 0.
2531  // For IBL this behaviour can be disabled.
2532  if (allowSkipEtaZero() && (etaModule >= 0) && (nModules%2 == 0)) index--;
2533  return index;
2534 }
2535 
2536 
2538 {
2539  if (centerModule(etaModule)) return 0;
2540  if(etaModule < 0) return 1.;
2541  return -1.;
2542 }
2543 
2545 {
2546  return db()->getInt(m_PixelEndcapGeneral,"NDISK");
2547 }
2548 
2549 // Endcap container
2551 {
2552  return db()->getDouble(m_PixelEndcapGeneral,"RMIN")*mmcm();
2553 }
2554 
2556 {
2557  return db()->getDouble(m_PixelEndcapGeneral,"RMAX")*mmcm();
2558 }
2559 
2561 {
2562  return db()->getDouble(m_PixelEndcapGeneral,"ZMIN")*mmcm();
2563 }
2564 
2566 {
2567  return db()->getDouble(m_PixelEndcapGeneral,"ZMAX")*mmcm();
2568 }
2569 
2571 {
2572  // Obsolete - retus 0 in recent versions
2573  return (int) db()->getDouble(m_PixelEndcapGeneral,"NFRAME");
2574 }
2575 
2576 // Endcap Inner
2578 {
2579  return db()->getDouble(m_PixelDisk,"ZDISK",m_currentLD)*mmcm();
2580 }
2581 
2583 {
2584  return db()->getDouble(m_PixelDisk,"DZCOUNTER",m_currentLD)*mmcm();
2585 }
2586 
2588 {
2589  return PixelECSiDz1();
2590 }
2591 
2593 {
2594  return db()->getInt(m_PixelDisk,"NMODULE",m_currentLD);
2595 }
2596 
2598 {
2599  return PixelECNSectors1();
2600 }
2601 
2602 // Endcap Cables
2604 {
2605  return db()->getDouble(m_PixelDisk,"RMINCABLE",m_currentLD)*mmcm();
2606 }
2607 
2609 {
2610  return db()->getDouble(m_PixelDisk,"RMAXCABLE",m_currentLD)*mmcm();
2611 }
2612 
2613 
2615 {
2616  return db()->getDouble(m_PixelDisk,"ZCABLE",m_currentLD)*mmcm();
2617 }
2618 
2619 //
2621 //
2623 {
2624  if (useLegacy()) return m_legacyManager->PixelTMTNumParts();
2625  return db()->getTableSize(m_PixelTMT);
2626 }
2627 
2629 {
2630  if (useLegacy()) return m_legacyManager->PixelTMTWidthX1(iPart);
2631  return db()->getDouble(m_PixelTMT,"WIDTHX1",iPart) * Gaudi::Units::mm;
2632 }
2633 
2635 {
2636  if (useLegacy()) return m_legacyManager->PixelTMTWidthX2(iPart);
2637  return db()->getDouble(m_PixelTMT,"WIDTHX2",iPart) * Gaudi::Units::mm;
2638 }
2639 
2641 {
2642  if (useLegacy()) return m_legacyManager->PixelTMTWidthY(iPart);
2643  return db()->getDouble(m_PixelTMT,"WIDTHY",iPart) * Gaudi::Units::mm;
2644 }
2645 
2647 {
2648  if (useLegacy()) return m_legacyManager->PixelTMTBaseX1(iPart);
2649  return db()->getDouble(m_PixelTMT,"BASEX1",iPart) * Gaudi::Units::mm;
2650 }
2651 
2653 {
2654  if (useLegacy()) return m_legacyManager->PixelTMTBaseX2(iPart);
2655  return db()->getDouble(m_PixelTMT,"BASEX2",iPart) * Gaudi::Units::mm;
2656 }
2657 
2659 {
2660  if (useLegacy()) return m_legacyManager->PixelTMTPosY(iPart);
2661  return db()->getDouble(m_PixelTMT,"Y",iPart) * Gaudi::Units::mm;
2662 }
2663 
2665 {
2666  if (useLegacy()) return m_legacyManager->PixelTMTPosZ1(iPart);
2667  return db()->getDouble(m_PixelTMT,"Z1",iPart) * Gaudi::Units::mm;
2668 }
2669 
2671 {
2672  if (useLegacy()) return m_legacyManager->PixelTMTPosZ2(iPart);
2673  return db()->getDouble(m_PixelTMT,"Z2",iPart) * Gaudi::Units::mm;
2674 }
2675 
2677 {
2678  if (useLegacy()) return m_legacyManager->PixelTMTPerModule(iPart);
2679  return db()->getInt(m_PixelTMT,"PERMODULE",iPart);
2680 }
2681 
2682 //
2683 // Omega parameters
2684 //
2686 {
2688  return db()->getDouble(m_PixelOmega,"UPPERBENDX") * Gaudi::Units::mm;
2689 }
2690 
2692 {
2694  return db()->getDouble(m_PixelOmega,"UPPERBENDY") * Gaudi::Units::mm;
2695 }
2696 
2698 {
2700  return db()->getDouble(m_PixelOmega,"UPPERBENDR") * Gaudi::Units::mm;
2701 }
2702 
2704 {
2706  return db()->getDouble(m_PixelOmega,"LOWERBENDX") * Gaudi::Units::mm;
2707 }
2708 
2710 {
2712  return db()->getDouble(m_PixelOmega,"LOWERBENDY") * Gaudi::Units::mm;
2713 }
2714 
2716 {
2718  return db()->getDouble(m_PixelOmega,"LOWERBENDR") * Gaudi::Units::mm;
2719 }
2720 
2722 {
2724  return db()->getDouble(m_PixelOmega,"THICK") * Gaudi::Units::mm;
2725 }
2726 
2728 {
2729  if (useLegacy()) return m_legacyManager->PixelOmegaLength();
2730  return db()->getDouble(m_PixelOmega,"LENGTH") * Gaudi::Units::mm;
2731 }
2732 
2734 {
2735  if (useLegacy()) return m_legacyManager->PixelOmegaStartY();
2736  return db()->getDouble(m_PixelOmega,"STARTY") * Gaudi::Units::mm;
2737 }
2738 
2740 {
2741  if (useLegacy()) return m_legacyManager->PixelOmegaEndY();
2742  return db()->getDouble(m_PixelOmega,"ENDY") * Gaudi::Units::mm;
2743 }
2744 
2745 //
2746 // Al Tube
2747 //
2748 
2750 {
2752  return db()->getDouble(m_PixelAlTube,"UPPERBENDX") * Gaudi::Units::mm;
2753 }
2754 
2756 {
2758  return db()->getDouble(m_PixelAlTube,"UPPERBENDY") * Gaudi::Units::mm;
2759 }
2760 
2762 {
2764  return db()->getDouble(m_PixelAlTube,"UPPERBENDR") * Gaudi::Units::mm;
2765 }
2766 
2768 {
2770  return db()->getDouble(m_PixelAlTube,"LOWERBENDX") * Gaudi::Units::mm;
2771 }
2772 
2774 {
2776  return db()->getDouble(m_PixelAlTube,"LOWERBENDY") * Gaudi::Units::mm;
2777 }
2778 
2780 {
2782  return db()->getDouble(m_PixelAlTube,"LOWERBENDR") * Gaudi::Units::mm;
2783 }
2784 
2786 {
2788  return db()->getDouble(m_PixelAlTube,"THICK") * Gaudi::Units::mm;
2789 }
2790 
2792 {
2793  if (useLegacy()) return m_legacyManager->PixelAlTubeLength();
2794  return db()->getDouble(m_PixelAlTube,"LENGTH") * Gaudi::Units::mm;
2795 }
2796 
2797 //
2798 // Glue
2799 //
2800 
2802 {
2804  return db()->getTableSize(m_PixelOmegaGlue);
2805 }
2806 
2808 {
2810  return db()->getDouble(m_PixelOmegaGlue,"STARTX",index) * Gaudi::Units::mm;
2811 }
2812 
2814 {
2816  return db()->getDouble(m_PixelOmegaGlue,"THICK",index) * Gaudi::Units::mm;
2817 }
2818 
2820 {
2822  return db()->getDouble(m_PixelOmegaGlue,"STARTY",index) * Gaudi::Units::mm;
2823 }
2824 
2826 {
2828  return db()->getDouble(m_PixelOmegaGlue,"ENDY",index) * Gaudi::Units::mm;
2829 }
2830 
2832 {
2834  return db()->getDouble(m_PixelOmegaGlue,"LENGTH",index) * Gaudi::Units::mm;
2835 }
2836 
2838 {
2841 }
2842 
2844 {
2846  return db()->getInt(m_PixelOmegaGlue,"TYPENUM",index);
2847 }
2848 
2849 
2850 //
2851 // Fluid
2852 //
2854 {
2855  if (useLegacy()) return m_legacyManager->PixelFluidZ1(index);
2856  return db()->getDouble(m_PixelFluid,"Z1",index) * Gaudi::Units::mm;
2857 }
2858 
2860 {
2861  if (useLegacy()) return m_legacyManager->PixelFluidZ2(index);
2862  return db()->getDouble(m_PixelFluid,"Z2",index) * Gaudi::Units::mm;
2863 }
2864 
2866 {
2868  return db()->getDouble(m_PixelFluid,"THICK1",index) * Gaudi::Units::mm;
2869 }
2870 
2871 
2873 {
2875  return db()->getDouble(m_PixelFluid,"THICK2",index) * Gaudi::Units::mm;
2876 }
2877 
2879 {
2881  return db()->getDouble(m_PixelFluid,"WIDTH",index) * Gaudi::Units::mm;
2882 }
2883 
2884 
2886 {
2887  if (useLegacy()) return m_legacyManager->PixelFluidX(index);
2888  return db()->getDouble(m_PixelFluid,"X",index) * Gaudi::Units::mm;
2889 }
2890 
2892 {
2893  if (useLegacy()) return m_legacyManager->PixelFluidY(index);
2894  return db()->getDouble(m_PixelFluid,"Y",index) * Gaudi::Units::mm;
2895 }
2896 
2898 {
2900  return db()->getInt(m_PixelFluid,"TYPE",index);
2901 }
2902 
2904 {
2905  if (useLegacy()) return m_legacyManager->PixelFluidNumTypes();
2906  return db()->getTableSize(m_PixelFluid);
2907 }
2908 
2910 {
2911  for (int i = 0; i < PixelFluidNumTypes(); i++) {
2912  if (type == PixelFluidType(i)) return i;
2913  }
2914  msg(MSG::ERROR) << "Unrecognized fluid volume type: " << type << endmsg;
2915  return -1;
2916 }
2917 
2919  int matType = 0;
2920  if (useLegacy()) {
2922  } else {
2923  matType = db()->getInt(m_PixelFluid,"MATTYPE",index);
2924  }
2925  return getMaterialName("Fluid", 0, matType);
2926 }
2927 
2929 {
2932 }
2933 
2934 //
2935 // Pigtail
2936 //
2938 {
2940  return db()->getDouble(m_PixelPigtail,"THICK") * Gaudi::Units::mm;
2941 }
2942 
2944 {
2945  if (useLegacy()) return m_legacyManager->PixelPigtailStartY();
2946  return db()->getDouble(m_PixelPigtail,"STARTY") * Gaudi::Units::mm;
2947 }
2948 
2950 {
2951  if (useLegacy()) return m_legacyManager->PixelPigtailEndY();
2952  return db()->getDouble(m_PixelPigtail,"ENDY") * Gaudi::Units::mm;
2953 }
2954 
2956 {
2957  if (useLegacy()) return m_legacyManager->PixelPigtailWidthZ();
2958  return db()->getDouble(m_PixelPigtail,"WIDTHZ") * Gaudi::Units::mm;
2959 }
2960 
2961 // Different width from the curved section in old geometry
2963 {
2965  return PixelPigtailWidthZ();
2966 }
2967 
2969 {
2970  if (useLegacy()) return m_legacyManager->PixelPigtailPosX();
2971  return db()->getDouble(m_PixelPigtail,"X") * Gaudi::Units::mm;
2972 }
2973 
2975 {
2976  if (useLegacy()) return m_legacyManager->PixelPigtailPosZ();
2977  return db()->getDouble(m_PixelPigtail,"Z") * Gaudi::Units::mm;
2978 }
2979 
2981 {
2982  if (useLegacy()) return m_legacyManager->PixelPigtailBendX();
2983  return db()->getDouble(m_PixelPigtail,"BENDX") * Gaudi::Units::mm;
2984 }
2985 
2987 {
2988  if (useLegacy()) return m_legacyManager->PixelPigtailBendY();
2989  return db()->getDouble(m_PixelPigtail,"BENDY") * Gaudi::Units::mm;
2990 }
2991 
2993 {
2995  return db()->getDouble(m_PixelPigtail,"BENDRMIN") * Gaudi::Units::mm;
2996 }
2997 
2999 {
3002 }
3003 
3005 {
3007  return db()->getDouble(m_PixelPigtail,"BENDPHIMIN") * Gaudi::Units::deg;
3008 }
3009 
3011 {
3013  return db()->getDouble(m_PixelPigtail,"BENDPHIMAX") * Gaudi::Units::deg;
3014 }
3015 
3017 {
3019  return db()->getDouble(m_PixelPigtail,"ENVLENGTH") * Gaudi::Units::mm;
3020 }
3021 
3022 //
3023 // Connector
3024 //
3026 {
3028  return db()->getTableSize(m_PixelConnector);
3029 }
3030 
3032 {
3034  return db()->getDouble(m_PixelConnector,"WIDTHX",index) * Gaudi::Units::mm;
3035 }
3036 
3038 {
3040  return db()->getDouble(m_PixelConnector,"WIDTHY",index) * Gaudi::Units::mm;
3041 }
3042 
3044 {
3046  return db()->getDouble(m_PixelConnector,"WIDTHZ",index) * Gaudi::Units::mm;
3047 }
3048 
3050 {
3053 }
3054 
3056 {
3059 }
3060 
3062 {
3065 }
3066 
3067 //
3068 // Design
3069 //
3070 
3071 
3072 int DBPixelGeoManager::designType(bool isModule3D)
3073 {
3074 
3075  if(isModule3D) return designType3D();
3076 
3077  if (dbVersion() < 2) {
3078  return 0; // Not used
3079  } else {
3080  if (m_PixelReadout->size() == 0) {
3081  msg(MSG::ERROR) << "ERROR in PixelReadout size. Should not occur!" << endmsg;
3082  return 0;
3083  } else if (m_PixelReadout->size() == 1 && !ibl()) {
3084  return 0;
3085  } else { // Only in IBL
3086  return db()->getInt(m_PixelModule,"DESIGNTYPE",moduleType());
3087  }
3088  }
3089 }
3090 
3091 
3093 {
3094 
3095  if (dbVersion() < 2) {
3096  return 0; // Not used
3097  }
3098  else {
3099  if (m_PixelReadout->size() == 0) {
3100  msg(MSG::ERROR) << "ERROR in PixelReadout size. Should not occur!" << endmsg;
3101  return 0;
3102  } else if (m_PixelReadout->size() == 1 && !ibl()) {
3103  return 0;
3104  } else { // Only in IBL
3105  int type = db()->getInt(m_PixelModule,"DESIGNTYPE",moduleType3D());
3106  return type;
3107  }
3108  }
3109 }
3110 
3112 {
3113  if (dbVersion() < 2) {
3114  return -1;
3115  } else {
3116  int type = designType((ibl()&&isModule3D));
3117 
3118  return db()->getInt(m_PixelReadout,"READOUTSIDE",type);
3119  }
3120 }
3121 
3123 {
3124  if (dbVersion() < 2) {
3126  } else {
3127  int type = designType((ibl()&&isModule3D));
3128 
3129  return db()->getInt(m_PixelReadout,"NCHIPSPHI",type);
3130  }
3131 }
3132 
3133 
3135  {
3136  if (dbVersion() < 2) {
3138  } else {
3139  int type = designType((ibl()&&isModule3D));
3140 
3141  return db()->getInt(m_PixelReadout,"NCHIPSETA",type);
3142  }
3143 }
3144 
3146 {
3147  if (dbVersion() < 2) {
3149  } else {
3150  int type = designType((ibl()&&isModule3D));
3151 
3152  return db()->getInt(m_PixelReadout,"ROWSPERCHIP",type);
3153  }
3154 }
3155 
3157 {
3158  if (dbVersion() < 2) {
3160  } else {
3161  int type = designType((ibl()&&isModule3D));
3162 
3163  return db()->getInt(m_PixelReadout,"COLSPERCHIP",type);
3164  }
3165 }
3166 
3167 
3169 {
3170  if (dbVersion() < 2) {
3172  } else {
3173  return DesignNumChipsPhi(isModule3D) * (DesignNumRowsPerChip(isModule3D)+DesignNumEmptyRowsInGap(isModule3D)) - DesignNumEmptyRowsInGap(isModule3D);
3174  }
3175 }
3176 
3178 {
3179  if (dbVersion() < 2) {
3181  } else {
3182  return DesignNumChipsEta(isModule3D) * DesignNumColsPerChip(isModule3D);
3183  }
3184 }
3185 
3186 
3188 {
3189  return DesignNumChipsPhi(isModule3D) * DesignNumRowsPerChip(isModule3D);
3190 }
3191 
3193 {
3194  return DesignNumColsPerChip(isModule3D);
3195 }
3196 
3198 {
3199  return DesignDiodesPhiTotal(isModule3D);
3200 }
3201 
3203 {
3204  return DesignNumColsPerChip(isModule3D);
3205 }
3206 
3208 {
3209  // Could determine it from m_gangedIndexMap but expect it to be filled correctly in PixelReadoutTable
3210  if (dbVersion() < 2) {
3212  } else {
3213  int type=designType((ibl()&&isModule3D));
3214 
3215  return db()->getInt(m_PixelReadout,"EMPTYROWS",type);
3216  }
3217 }
3218 
3219 // Ganged Pixels
3221 {
3222  // type 0 means no ganged pixels
3223  if (!ibl()) return 1;
3224  if (ibl()) {
3225  return db()->getInt(m_PixelReadout,"GANGEDTYPE",designType());
3226  } else {
3227  int type = 1;
3228  if (db()->testField(m_PixelReadout,"GANGEDTYPE",designType())) {
3229  type = db()->getInt(m_PixelReadout,"GANGEDTYPE",designType());
3230  }
3231  return type;
3232  }
3233 }
3234 
3235 
3237 {
3238  // There is only one type for standard ATLAS so we just return the index.
3239  if (!ibl()) return index;
3240 
3241  if (!m_gangedIndexMap) {
3242  // First time we create the map
3243  m_gangedIndexMap = new std::map<int,std::vector<int> >;
3244  for (unsigned int i = 0; i < db()->getTableSize(m_PixelGangedPixels); i++){
3245  int testType = 1;
3246  if (db()->testField(m_PixelGangedPixels,"TYPE",i)) {
3247  testType = db()->getInt(m_PixelGangedPixels,"TYPE",i);
3248  }
3249  (*m_gangedIndexMap)[testType].push_back(i);
3250  }
3251  }
3252 
3253  int newIndex = -1;
3254  std::map<int,std::vector<int> >::const_iterator iter = m_gangedIndexMap->find(type);
3255  if (iter == m_gangedIndexMap->end()) {
3256  msg(MSG::ERROR) << "Ganged pixel type " << type << " not found." << endmsg;
3257  } else {
3258  const std::vector<int> & vec = iter->second;
3259  if (index < 0 || static_cast<unsigned int>(index) >= vec.size()) {
3260  msg(MSG::ERROR) << "Ganged pixel index " << index << " for type " << type << " out of range." << endmsg;
3261  } else {
3262  newIndex = vec[index];
3263  }
3264  }
3265  return newIndex;
3266 }
3267 
3269 {
3270  return DesignNumEmptyRowsInGap(isModule3D);
3271 }
3272 
3274 {
3275  if (dbVersion() < 2) {
3276  return m_legacyManager->EmptyRows(index);
3277  } else {
3278  int newIndex = GangedTableIndex(index, GangedType());
3279  if (newIndex >= 0) {
3280  return db()->getInt(m_PixelGangedPixels,"EMPTYROW",newIndex);
3281  } else {
3282  return 0;
3283  }
3284  }
3285 }
3286 
3288 {
3289  if (dbVersion() < 2) {
3291  } else {
3292  int newIndex = GangedTableIndex(index, GangedType());
3293  if (newIndex >= 0) {
3294  return db()->getInt(m_PixelGangedPixels,"CONNECTROW",newIndex);
3295  } else {
3296  return 0;
3297  }
3298  }
3299 }
3300 
3301 
3303 {
3304  if (dbVersion() < 2) {
3306  } else {
3307  // All layers assumed to be the same.
3308  return DesignPitchRP(isModule3D) * ((DesignNumRowsPerChip(isModule3D)+DesignNumEmptyRowsInGap(isModule3D)) * DesignNumChipsPhi(isModule3D) - DesignNumEmptyRowsInGap(isModule3D));
3309  }
3310 }
3311 
3313 {
3314  if (dbVersion() < 2) {
3316  } else {
3317  // All layers assumed to be the same.
3318  return (DesignPitchZ(isModule3D) * (DesignNumColsPerChip(isModule3D) - 2) + 2 * DesignPitchZLong(isModule3D)) * DesignNumChipsEta(isModule3D) + 2 * (DesignPitchZLongEnd(isModule3D) - DesignPitchZLong(isModule3D));
3319  }
3320 }
3321 
3322 double DBPixelGeoManager::DesignPitchRP(bool isModule3D)
3323 {
3324  if (dbVersion() < 2) {
3326  } else {
3327  int type = designType((ibl()&&isModule3D));
3328  return db()->getDouble(m_PixelReadout,"PITCHPHI",type) * Gaudi::Units::mm;
3329  }
3330 }
3331 
3332 double DBPixelGeoManager::DesignPitchZ(bool isModule3D)
3333 {
3334  if (dbVersion() < 2) {
3336  } else {
3337  int type = designType((ibl()&&isModule3D));
3338  return db()->getDouble(m_PixelReadout,"PITCHETA",type) * Gaudi::Units::mm;
3339  }
3340 }
3341 
3343 {
3344  // Defaults to DesignPitchZ if not specified or is zero.
3345  if (dbVersion() < 2) {
3347  } else {
3348  int type = designType((ibl()&&isModule3D));
3349  double pitch = db()->getDouble(m_PixelReadout,"PITCHETALONG",type) * Gaudi::Units::mm;
3350  if (pitch == 0) pitch = DesignPitchZ(isModule3D);
3351  return pitch;
3352  }
3353 }
3354 
3356 {
3357  // Defaults to DesignPitchZLongEnd if not specified or is zero.
3358  if (!ibl()) { // This check is not really needed once the field is in the database.
3359  return DesignPitchZLong(isModule3D);
3360  } else {
3361  int type = designType((ibl()&&isModule3D));
3362  double pitch = 0;
3363  if (db()->testField(m_PixelReadout,"PITCHETAEND",type)) {
3364  pitch = db()->getDouble(m_PixelReadout,"PITCHETAEND",type) * Gaudi::Units::mm;
3365  }
3366  if (pitch == 0) pitch = DesignPitchZLong(isModule3D);
3367  return pitch;
3368  }
3369 }
3370 
3371 
3372 double DBPixelGeoManager::DesignGapRP(bool isModule3D)
3373 {
3374  if (dbVersion() < 2) {
3375  return m_legacyManager->DesignGapRP();
3376  } else {
3377  return DesignNumEmptyRowsInGap(isModule3D) * DesignPitchRP(isModule3D);
3378  }
3379 }
3380 
3381 double DBPixelGeoManager::DesignGapZ(bool isModule3D)
3382 {
3383  if (dbVersion() < 2) {
3384  return m_legacyManager->DesignGapZ();
3385  } else {
3386  return 2. * (DesignPitchZLong(isModule3D) - DesignPitchZ(isModule3D));
3387  }
3388 }
3389 
3390 int DBPixelGeoManager::DesignCircuitsPhi(bool /* isModule3D */)
3391 {
3392  //
3393  // This should be (*pdch)[0]->getDouble("NRPCHIP"), but in the current
3394  // design we prefer to have one chip in the rphi direction
3395  // and define the connections for the pixels in the gap
3396  return 1;
3397 }
3398 
3400 {
3401  return DesignNumChipsEta(isModule3D);
3402 }
3403 
3404 
3405 
3406 // Endcap
3408 {
3409  return db()->getDouble(m_PixelDisk,"RIDISK",m_currentLD)*mmcm();
3410 }
3411 
3413 
3414 //
3415 // endcap rings
3416 //
3418  // Hardwire for now
3419  return 3;
3420 }
3421 
3423  std::ostringstream field;
3424  field <<"SUP"<< isup+1 <<"RMIN";
3425  return db()->getDouble(m_PixelDisk,field.str(),m_currentLD)*mmcm();
3426 }
3427 
3429  std::ostringstream field;
3430  field <<"SUP"<< isup+1 <<"RMAX";
3431  return db()->getDouble(m_PixelDisk,field.str(),m_currentLD)*mmcm();
3432 }
3433 
3434 
3435 // SLHC only (TODO: does not look like it)
3437 
3438  std::ostringstream prefix;
3439  prefix <<"SUP"<< isup+1 <<"THICK";
3440 
3441  bool found = false;
3442  double tck = 0;
3443 
3444  // First check text file
3445  // default support thickness
3446  if (db()->testFieldTxt(m_PixelDisk,"SUP_THICK")) {
3447  tck = db()->getDouble(m_PixelDisk,"SUP_THICK");
3448  found = true;
3449  }
3450  // overwrites if found
3451  if (db()->testFieldTxt(m_PixelDisk,prefix.str(),m_currentLD)) {
3452  tck = db()->getDouble(m_PixelDisk,prefix.str(),m_currentLD);
3453  found = true;
3454  }
3455 
3456  // Now check database
3457  if (!found) tck = db()->getDouble(m_PixelDisk,prefix.str(),m_currentLD);
3458 
3459  if(tck>0.) {
3460  return tck * mmcm();
3461  } else { // radlen
3463  std::string matName = getMaterialName("DiskSupport", m_currentLD, typeNum);
3464  return CalculateThickness(tck, matName);
3465  }
3466 }
3467 
3468 // SLHC only (TODO: does not look like it)
3470 
3471  if (dbVersion() < 3) return 0;
3472 
3473  std::ostringstream prefix;
3474  prefix <<"SUP"<< isup+1 <<"MAT";
3475 
3476  int imat = 0;
3477  bool found = false;
3478  // default material type
3479  if (db()->testFieldTxt(m_PixelDisk,"SUP_MAT")) {
3480  imat = db()->getInt(m_PixelDisk,"SUP_MAT");
3481  found = true;
3482  }
3483  // overwrites if found
3484  if (db()->testFieldTxt(m_PixelDisk,prefix.str(),m_currentLD)) {
3485  imat = db()->getInt(m_PixelDisk,prefix.str(),m_currentLD);
3486  found = true;
3487  }
3488 
3489  if (!found) {
3490  imat = db()->getInt(m_PixelDisk,prefix.str(),m_currentLD);
3491  }
3492  return imat;
3493 }
3494 
3495 
3496 //
3497 //*** DBM Parameters with local database ***//
3498 //
3499 
3500 // return angle of the telescope
3502  return db()->getDouble(m_DBMTelescope,"ANGLE")*Gaudi::Units::deg;
3503 }
3504 
3505 // return dimension of the DBM telescope
3507  return db()->getDouble(m_DBMTelescope,"WIDTH")*Gaudi::Units::mm;
3508 }
3510  return db()->getDouble(m_DBMTelescope,"HEIGHT")*Gaudi::Units::mm;
3511 }
3513  return db()->getDouble(m_DBMTelescope,"LENGTH")*Gaudi::Units::mm;
3514 }
3515 
3516 // return height and length of the module cage having a 3-layers structure
3518  return db()->getDouble(m_DBMTelescope,"CAGE_HEIGHT")*Gaudi::Units::mm;
3519 }
3521  return db()->getDouble(m_DBMTelescope,"CAGE_LENGTH")*Gaudi::Units::mm;
3522 }
3523 
3524 // return layer spacing
3526  return db()->getDouble(m_DBMCage,"ZSPACING")*Gaudi::Units::mm;
3527 }
3529  if (m_currentLD == 0)
3530  return db()->getDouble(m_DBMCage,"RADIAL_SPACE_0")*Gaudi::Units::mm;
3531  else if (m_currentLD == 1)
3532  return db()->getDouble(m_DBMCage,"RADIAL_SPACE_1")*Gaudi::Units::mm;
3533  else if (m_currentLD == 2)
3534  return db()->getDouble(m_DBMCage,"RADIAL_SPACE_2")*Gaudi::Units::mm;
3535  else {
3536  msg(MSG::WARNING) << "DBMSpacingRadial() is not found" << endmsg;
3537  return 0.;
3538  }
3539 }
3540 // return dimension of bracket unit
3542  return db()->getDouble(m_DBMBracket,"WIDTH")*Gaudi::Units::mm;
3543 }
3545  return db()->getDouble(m_DBMBracket,"HEIGHT")*Gaudi::Units::mm;
3546 }
3548  return db()->getDouble(m_DBMBracket,"THICKNESS")*Gaudi::Units::mm;
3549 }
3551  return db()->getDouble(m_DBMBracket,"TRAPEZBACK_THETA")*Gaudi::Units::deg;
3552 }
3554  return db()->getDouble(m_DBMBracket,"TRAPEZBACK_WIDTH")*Gaudi::Units::mm;
3555 }
3557  return db()->getDouble(m_DBMBracket,"TRAPEZBACK_HEIGHT")*Gaudi::Units::mm;
3558 }
3560  return db()->getDouble(m_DBMBracket,"TRAPEZBACK_ZSHORT")*Gaudi::Units::mm;
3561 }
3563  return db()->getDouble(m_DBMBracket,"WINDOW_WIDTH")*Gaudi::Units::mm;
3564 }
3566  return db()->getDouble(m_DBMBracket,"WINDOW_HEIGHT")*Gaudi::Units::mm;
3567 }
3569  return db()->getDouble(m_DBMBracket,"WINDOW_OFFSET")*Gaudi::Units::mm;
3570 }
3572  return db()->getDouble(m_DBMBracket,"WINDOW_CENTERZ")*Gaudi::Units::mm;
3573 }
3575  return db()->getDouble(m_DBMBracket,"TOPBLOCK_THICK")*Gaudi::Units::mm;
3576 }
3578  return db()->getDouble(m_DBMBracket,"SIDEBLOCK_WIDTH")*Gaudi::Units::mm;
3579 }
3581  return db()->getDouble(m_DBMBracket,"SIDEBLOCK_HEIGHT")*Gaudi::Units::mm;
3582 }
3584  return db()->getDouble(m_DBMBracket,"LOCK_THICK")*Gaudi::Units::mm;
3585 }
3587  return db()->getDouble(m_DBMBracket,"LOCK_HEIGHT")*Gaudi::Units::mm;
3588 }
3590  return db()->getDouble(m_DBMBracket,"COOLINGFIN_ZLONG")*Gaudi::Units::mm;
3591 }
3593  return db()->getDouble(m_DBMBracket,"COOLINGFIN_HEIGHT")*Gaudi::Units::mm;
3594 }
3596  return db()->getDouble(m_DBMBracket,"COOLINGFIN_THICK")*Gaudi::Units::mm;
3597 }
3599  return db()->getDouble(m_DBMBracket,"COOLINGFIN_POS")*Gaudi::Units::mm;
3600 }
3601 
3602 // return spacing between V-slide and first layer
3604  return db()->getDouble(m_DBMCage,"SPACING1")*Gaudi::Units::mm;
3605 }
3606 
3607 // return dimensions of the main plate
3609  return db()->getDouble(m_DBMCage,"MAINPLATE_WIDTH")*Gaudi::Units::mm;
3610 }
3612  return db()->getDouble(m_DBMCage,"MAINPLATE_HEIGHT")*Gaudi::Units::mm;
3613 }
3615  return db()->getDouble(m_DBMCage,"MAINPLATE_THICK")*Gaudi::Units::mm;
3616 }
3618  return db()->getDouble(m_DBMCage,"MPWINDOW_WIDTH")*Gaudi::Units::mm;
3619 }
3621  return db()->getDouble(m_DBMCage,"MPWINDOW_HEIGHT")*Gaudi::Units::mm;
3622 }
3624  return db()->getDouble(m_DBMCage,"MPWINDOW_POS")*Gaudi::Units::mm;
3625 }
3626 // return dimensions of aluminium side plates
3628  return db()->getDouble(m_DBMCage,"SIDEPLATE_THICK")*Gaudi::Units::mm;
3629 }
3631  return db()->getDouble(m_DBMCage,"SIDEPLATE_HEIGHT")*Gaudi::Units::mm;
3632 }
3634  return db()->getDouble(m_DBMCage,"SIDEPLATE_LENGTH")*Gaudi::Units::mm;
3635 }
3637  return db()->getDouble(m_DBMCage,"SIDEPLATE_POS")*Gaudi::Units::mm;
3638 }
3639 
3640 // return dimension of sensor, chip and ceramic
3642  return db()->getDouble(m_DBMModule,"DIAMOND_WIDTH")*Gaudi::Units::mm;
3643 }
3645  return db()->getDouble(m_DBMModule,"DIAMOND_HEIGHT")*Gaudi::Units::mm;
3646 }
3648  return db()->getDouble(m_DBMModule,"DIAMOND_THICK")*Gaudi::Units::mm;
3649 }
3651  return db()->getDouble(m_DBMModule,"FEI4_WIDTH")*Gaudi::Units::mm;
3652 }
3654  return db()->getDouble(m_DBMModule,"FEI4_HEIGHT")*Gaudi::Units::mm;
3655 }
3657  return db()->getDouble(m_DBMModule,"FEI4_THICK")*Gaudi::Units::mm;
3658 }
3660  return db()->getDouble(m_DBMModule,"CERAMIC_WIDTH")*Gaudi::Units::mm;
3661 }
3663  return db()->getDouble(m_DBMModule,"CERAMIC_HEIGHT")*Gaudi::Units::mm;
3664 }
3666  return db()->getDouble(m_DBMModule,"CERAMIC_THICK")*Gaudi::Units::mm;
3667 }
3669  return db()->getDouble(m_DBMModule,"AIR_GAP")*Gaudi::Units::mm;
3670 }
3672  return db()->getDouble(m_DBMModule,"KAPTONZ")*Gaudi::Units::mm;
3673 }
3674 
3675 // flex support
3677  return db()->getDouble(m_DBMCage,"FLEXSUPP_WIDTH")*Gaudi::Units::mm;
3678 }
3680  return db()->getDouble(m_DBMCage,"FLEXSUPP_HEIGHT")*Gaudi::Units::mm;
3681 }
3683  return db()->getDouble(m_DBMCage,"FLEXSUPP_THICK")*Gaudi::Units::mm;
3684 }
3686  return db()->getDouble(m_DBMCage, "FLEXSUPP_OFFSET")*Gaudi::Units::mm;
3687 }
3688 
3689 // return radius of supporting rod
3691  return db()->getDouble(m_DBMCage,"ROD_RADIUS")*Gaudi::Units::mm;
3692 }
3693 // return distance between center of rods
3695  return db()->getDouble(m_DBMCage,"ROD2ROD_VERT")*Gaudi::Units::mm;
3696 }
3698  return db()->getDouble(m_DBMCage,"ROD2ROD_HOR")*Gaudi::Units::mm;
3699 }
3700 
3701 // radius and thickness of PP0 board
3703  return db()->getDouble(m_DBMTelescope,"PP0_RIN")*Gaudi::Units::mm;
3704 }
3706  return db()->getDouble(m_DBMTelescope,"PP0_ROUT")*Gaudi::Units::mm;
3707 }
3709  return db()->getDouble(m_DBMTelescope,"PP0_THICK")*Gaudi::Units::mm;
3710 }
3711 
3712 
DBPixelGeoManager::PixelPigtailFlatWidthZ
virtual double PixelPigtailFlatWidthZ() override
Definition: DBPixelGeoManager.cxx:2962
DBPixelGeoManager::DBMBrcktFinLongZ
virtual double DBMBrcktFinLongZ() override
Definition: DBPixelGeoManager.cxx:3589
DBPixelGeoManager::PixelConnectorPosZ
virtual double PixelConnectorPosZ(int index) override
Definition: DBPixelGeoManager.cxx:3061
PixelLegacyManager::DesignDiodesPhiTotal
int DesignDiodesPhiTotal(bool isBLayer)
Definition: PixelLegacyManager.cxx:866
DBPixelGeoManager::PixelBoardActiveLength
virtual double PixelBoardActiveLength(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:511
PixelLegacyManager::PixelTMTWidthY
double PixelTMTWidthY(int iPart)
Definition: PixelLegacyManager.cxx:447
DBPixelGeoManager::PixelECCarbonRMin
virtual double PixelECCarbonRMin(std::string) override
Definition: DBPixelGeoManager.cxx:669
PixelStaveTypes::getBiStaveType
int getBiStaveType(int layer, int phiModule) const
Definition: PixelStaveTypes.cxx:57
DBPixelGeoManager::IBLSupportMidRingInnerRadius
virtual double IBLSupportMidRingInnerRadius() override
Definition: DBPixelGeoManager.cxx:2115
DBPixelGeoManager::PixelOmegaUpperBendY
virtual double PixelOmegaUpperBendY() override
Definition: DBPixelGeoManager.cxx:2691
DBPixelGeoManager::PixelStaveLayout
virtual int PixelStaveLayout() override
Definition: DBPixelGeoManager.cxx:1490
DBPixelGeoManager::DBMTelescopeY
virtual double DBMTelescopeY() override
Definition: DBPixelGeoManager.cxx:3509
PixelLegacyManager::PixelPigtailPosX
double PixelPigtailPosX()
Definition: PixelLegacyManager.cxx:744
DBPixelGeoManager::PixelAlTubeLowerBendX
virtual double PixelAlTubeLowerBendX() override
Definition: DBPixelGeoManager.cxx:2767
DBPixelGeoManager::PixelECCablesThickness
virtual double PixelECCablesThickness() override
Definition: DBPixelGeoManager.cxx:1046
DBPixelGeoManager::DBMTrapezBackTheta
virtual double DBMTrapezBackTheta() override
Definition: DBPixelGeoManager.cxx:3550
DBPixelGeoManager::DesignDiodeColumnsPerCircuit
virtual int DesignDiodeColumnsPerCircuit(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3202
InDetMaterialManager::addWeightTable
void addWeightTable(const IRDBRecordset_ptr &weightTable, const std::string &space="")
Definition: InDetMaterialManager.cxx:321
beamspotman.r
def r
Definition: beamspotman.py:676
DBPixelGeoManager::designType
int designType(bool isModule3D=false)
Definition: DBPixelGeoManager.cxx:3072
DBPixelGeoManager::PixelModuleZPositionTabulated
double PixelModuleZPositionTabulated(int etaModule, int type)
Definition: DBPixelGeoManager.cxx:2456
PixelLegacyManager::PixelOmegaLength
double PixelOmegaLength()
Definition: PixelLegacyManager.cxx:532
DBPixelGeoManager::PixelModuleServiceName
virtual std::string PixelModuleServiceName(int svc) override
Definition: DBPixelGeoManager.cxx:652
DBPixelGeoManager::PixelFrameElementZMax1
virtual double PixelFrameElementZMax1(int sectionIndex, int element) override
Definition: DBPixelGeoManager.cxx:1469
DBPixelGeoManager::IBLStaveMechanicalStaveEndBlockFixPoint
virtual double IBLStaveMechanicalStaveEndBlockFixPoint() override
Definition: DBPixelGeoManager.cxx:1725
DBPixelGeoManager::DBMPP0ROut
virtual double DBMPP0ROut() override
Definition: DBPixelGeoManager.cxx:3705
DBPixelGeoManager::IBLStaveModuleType
virtual int IBLStaveModuleType() override
Definition: DBPixelGeoManager.cxx:1987
DBPixelGeoManager::PixelModuleServiceOffsetY
virtual double PixelModuleServiceOffsetY(int svc) override
Definition: DBPixelGeoManager.cxx:632
DBPixelGeoManager::PixelOmegaGlueLength
virtual double PixelOmegaGlueLength(int index) override
Definition: DBPixelGeoManager.cxx:2831
DBPixelGeoManager::m_barrelInFrames
int m_barrelInFrames
Definition: DBPixelGeoManager.h:100
DBPixelGeoManager::PixelOmegaGlueTypeNum
virtual int PixelOmegaGlueTypeNum(int index) override
Definition: DBPixelGeoManager.cxx:2843
DBPixelGeoManager::PixelFluidType
virtual int PixelFluidType(int index) override
Definition: DBPixelGeoManager.cxx:2897
DBPixelGeoManager::PixelECNSectors2
virtual int PixelECNSectors2() override
Definition: DBPixelGeoManager.cxx:2597
DBPixelGeoManager::centerModule
virtual bool centerModule(int etaModule) override
Definition: DBPixelGeoManager.cxx:2509
DBPixelGeoManager::IBLSupportMidRingOuterRadius
virtual double IBLSupportMidRingOuterRadius() override
Definition: DBPixelGeoManager.cxx:2126
DBPixelGeoManager::NumberOfEmptyRows
virtual int NumberOfEmptyRows(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3268
DBPixelGeoManager::PixelEndcapNDisk
virtual int PixelEndcapNDisk() override
Definition: DBPixelGeoManager.cxx:2544
DBPixelGeoManager::IBLStaveTubeMiddlePos
virtual double IBLStaveTubeMiddlePos() override
Definition: DBPixelGeoManager.cxx:1819
DBPixelGeoManager::IBLStaveFlexWingWidth
virtual double IBLStaveFlexWingWidth() override
Definition: DBPixelGeoManager.cxx:2168
DBPixelGeoManager::PixelEndcapRMin
virtual double PixelEndcapRMin() override
Definition: DBPixelGeoManager.cxx:2550
DBPixelGeoManager::PixelBarrelRMax
virtual double PixelBarrelRMax() override
Definition: DBPixelGeoManager.cxx:1319
DBPixelGeoManager::PixelLadderBentStaveAngle
virtual double PixelLadderBentStaveAngle() override
Definition: DBPixelGeoManager.cxx:1610
DBPixelGeoManager::IBLFlexDoglegDY
virtual double IBLFlexDoglegDY() override
Definition: DBPixelGeoManager.cxx:2215
DBPixelGeoManager::PixelConnectorWidthZ
virtual double PixelConnectorWidthZ(int index) override
Definition: DBPixelGeoManager.cxx:3043
DBPixelGeoManager::makeFrameIndexMap
void makeFrameIndexMap()
Definition: DBPixelGeoManager.cxx:1403
DBPixelGeoManager::DBMFlexSupportX
virtual double DBMFlexSupportX() override
Definition: DBPixelGeoManager.cxx:3676
DBPixelGeoManager::m_diskRingIndexMap
InDetDD::PairIndexMap * m_diskRingIndexMap
Definition: DBPixelGeoManager.h:161
DBPixelGeoManager::PixelTMTNumParts
virtual int PixelTMTNumParts() override
TMT.
Definition: DBPixelGeoManager.cxx:2622
PixelMaterialMap::addMaterial
void addMaterial(int layerdisk, int typenum, const std::string &volumeName, const std::string &materialName)
Definition: PixelMaterialMap.cxx:63
DBPixelGeoManager::PixelTMTWidthX2
virtual double PixelTMTWidthX2(int iPart) override
Definition: DBPixelGeoManager.cxx:2634
PixelLegacyManager::DesignGapRP
double DesignGapRP()
Definition: PixelLegacyManager.cxx:944
DBPixelGeoManager::IBLFlexPP0Rmax
virtual double IBLFlexPP0Rmax(int iPos) override
Definition: DBPixelGeoManager.cxx:2255
DBPixelGeoManager::m_PixelConnector
IRDBRecordset_ptr m_PixelConnector
Definition: DBPixelGeoManager.h:64
PixelLegacyManager::PixelOmegaStartY
double PixelOmegaStartY()
Definition: PixelLegacyManager.cxx:537
DBPixelGeoManager::legacyManager
virtual PixelLegacyManager * legacyManager() override
Definition: DBPixelGeoManager.cxx:225
DBPixelGeoManager::m_PixelTMT
IRDBRecordset_ptr m_PixelTMT
Definition: DBPixelGeoManager.h:59
PixelLegacyManager::PixelAlTubeLowerBendRadius
double PixelAlTubeLowerBendRadius()
Definition: PixelLegacyManager.cxx:576
DBPixelGeoManager::IBLFlexMiddleGap
virtual double IBLFlexMiddleGap() override
Definition: DBPixelGeoManager.cxx:2137
phi
Scalar phi() const
phi method
Definition: AmgMatrixBasePlugin.h:67
IGeometryDBSvc.h
DBPixelGeoManager::PixelServiceMaterial
virtual std::string PixelServiceMaterial(const std::string &, int) override
Definition: DBPixelGeoManager.cxx:892
DBPixelGeoManager::PixelOmegaUpperBendX
virtual double PixelOmegaUpperBendX() override
Definition: DBPixelGeoManager.cxx:2685
IRDBAccessSvc::getRecordsetPtr
virtual IRDBRecordset_ptr getRecordsetPtr(const std::string &node, const std::string &tag, const std::string &tag2node="", const std::string &connName="ATLASDD")=0
Provides access to the Recordset object containing HVS-tagged data.
PixelLegacyManager::DesignNumChipsEta
int DesignNumChipsEta()
Definition: PixelLegacyManager.cxx:845
PixelLegacyManager::PixelFluidThick2
double PixelFluidThick2(int index)
Definition: PixelLegacyManager.cxx:663
DBPixelGeoManager::m_PixelEnvelope
IRDBRecordset_ptr m_PixelEnvelope
Definition: DBPixelGeoManager.h:43
DBPixelGeoManager::PixelECSiDz2
virtual double PixelECSiDz2() override
Definition: DBPixelGeoManager.cxx:2587
PixelGeometryManager
Definition: PixelGeometryManager.h:28
DBPixelGeoManager::PixelChipLength
virtual double PixelChipLength(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:560
DBPixelGeoManager::versionDescription
virtual std::string versionDescription() const override
Definition: DBPixelGeoManager.cxx:1212
PixelLegacyManager::PixelLadderThickness
double PixelLadderThickness()
Definition: PixelLegacyManager.cxx:299
DBPixelGeoManager::DesignDiodesPhiTotal
virtual int DesignDiodesPhiTotal(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3168
PixelGeometryManager::msg
MsgStream & msg(MSG::Level lvl) const
Definition: PixelGeometryManager.h:611
DBPixelGeoManager::m_PixelFrame
IRDBRecordset_ptr m_PixelFrame
Definition: DBPixelGeoManager.h:66
TopLevelPlacements
Definition: TopLevelPlacements.h:18
DBPixelGeoManager::determineDbVersion
int determineDbVersion()
Definition: DBPixelGeoManager.cxx:1133
PixelLegacyManager::PixelLadderLength
double PixelLadderLength()
Definition: PixelLegacyManager.cxx:304
DBPixelGeoManager::PixelFrameRMinSide
virtual double PixelFrameRMinSide(int sectionIndex) override
Definition: DBPixelGeoManager.cxx:1347
PixelLegacyManager::PixelAlTubeWallThickness
double PixelAlTubeWallThickness()
Definition: PixelLegacyManager.cxx:581
DBPixelGeoManager::m_PixelBarrelService
IRDBRecordset_ptr m_PixelBarrelService
Definition: DBPixelGeoManager.h:40
DBPixelGeoManager::PixelAlTubeLowerBendY
virtual double PixelAlTubeLowerBendY() override
Definition: DBPixelGeoManager.cxx:2773
PixelLegacyManager::PixelTMTPosZ1
double PixelTMTPosZ1(int iPart)
Definition: PixelLegacyManager.cxx:477
DBPixelGeoManager::NPixelSectors
virtual int NPixelSectors() override
Definition: DBPixelGeoManager.cxx:2398
TopLevelPlacements::transform
const GeoTrf::Transform3D & transform(const std::string &partName) const
Definition: TopLevelPlacements.cxx:26
DBPixelGeoManager::PixelDiskNumSupports
virtual int PixelDiskNumSupports() override
Definition: DBPixelGeoManager.cxx:3417
DBPixelGeoManager::PixelNumOmegaGlueElements
virtual int PixelNumOmegaGlueElements() override
Definition: DBPixelGeoManager.cxx:2801
DBPixelGeoManager::m_pixelStaveTypes
PixelStaveTypes * m_pixelStaveTypes
Definition: DBPixelGeoManager.h:151
PixelLegacyManager::PixelLadderCableOffsetY
double PixelLadderCableOffsetY()
Definition: PixelLegacyManager.cxx:325
DBPixelGeoManager::PixelServiceWidth
virtual double PixelServiceWidth(const std::string &a, int _n) override
Definition: DBPixelGeoManager.cxx:852
DBPixelGeoManager::PixelLadderThickness
virtual double PixelLadderThickness() override
Definition: DBPixelGeoManager.cxx:1551
DBPixelGeoManager::PixelLadderServicesX
virtual double PixelLadderServicesX() override
Definition: DBPixelGeoManager.cxx:1563
DBPixelGeoManager::PixelFluidZ1
virtual double PixelFluidZ1(int index) override
Definition: DBPixelGeoManager.cxx:2853
DBPixelGeoManager::commonItems
virtual InDetDD::SiCommonItems * commonItems() override
Definition: DBPixelGeoManager.cxx:247
DBPixelGeoManager::IBLServiceGetMaxRadialPosition
virtual double IBLServiceGetMaxRadialPosition(const std::string &srvName, const std::string &srvType, double srvZmin, double srvZmax) override
Definition: DBPixelGeoManager.cxx:2342
PixelLegacyManager::PixelAlTubeLowerBendX
double PixelAlTubeLowerBendX()
Definition: PixelLegacyManager.cxx:566
DBPixelGeoManager::PixelBarrelRMin
virtual double PixelBarrelRMin() override
Definition: DBPixelGeoManager.cxx:1314
DBPixelGeoManager::m_PixelIBLGlueGrease
IRDBRecordset_ptr m_PixelIBLGlueGrease
Definition: DBPixelGeoManager.h:72
PixelAthClusterMonAlgCfg.zmin
zmin
Definition: PixelAthClusterMonAlgCfg.py:169
index
Definition: index.py:1
DBPixelGeoManager::PixelFrameSideMaterial
virtual std::string PixelFrameSideMaterial(int sectionIndex) override
Definition: DBPixelGeoManager.cxx:1387
PixelLegacyManager::PixelCableStackOffset
double PixelCableStackOffset(int index)
Definition: PixelLegacyManager.cxx:379
max
constexpr double max()
Definition: ap_fixedTest.cxx:33
DBPixelGeoManager::PixelAlTubeLength
virtual double PixelAlTubeLength() override
Definition: DBPixelGeoManager.cxx:2791
PixelLegacyManager::PixelLadderServicesY
double PixelLadderServicesY()
Definition: PixelLegacyManager.cxx:314
DBPixelGeoManager::PixelLadderCableOffsetY
virtual double PixelLadderCableOffsetY() override
Definition: DBPixelGeoManager.cxx:1584
DBPixelGeoManager::GangedTableIndex
int GangedTableIndex(int index, int type)
Definition: DBPixelGeoManager.cxx:3236
DBPixelGeoManager::DBMCeramicY
virtual double DBMCeramicY() override
Definition: DBPixelGeoManager.cxx:3662
PixelLegacyManager::PixelCableZStart
double PixelCableZStart(int index)
Definition: PixelLegacyManager.cxx:351
mat
GeoMaterial * mat
Definition: LArDetectorConstructionTBEC.cxx:55
DBPixelGeoManager::m_staveTypeTable
IRDBRecordset_ptr m_staveTypeTable
Definition: DBPixelGeoManager.h:77
min
constexpr double min()
Definition: ap_fixedTest.cxx:26
PixelLegacyManager::PixelOmegaEndY
double PixelOmegaEndY()
Definition: PixelLegacyManager.cxx:542
DBPixelGeoManager::PixelCableLayerNum
virtual int PixelCableLayerNum(int index) override
Definition: DBPixelGeoManager.cxx:1065
DBPixelGeoManager::m_PixelSwitches
IRDBRecordset_ptr m_PixelSwitches
Definition: DBPixelGeoManager.h:38
DBPixelGeoManager::PixelPigtailBendPhiMax
virtual double PixelPigtailBendPhiMax() override
Definition: DBPixelGeoManager.cxx:3010
DBPixelGeoManager::IBLStaveMechanicalStaveWidth
virtual double IBLStaveMechanicalStaveWidth() override
Definition: DBPixelGeoManager.cxx:1703
DBPixelGeoManager::partPresent
virtual bool partPresent(const std::string &partName) const override
Definition: DBPixelGeoManager.cxx:282
DBPixelGeoManager::SetBarrel
virtual void SetBarrel() override
Definition: DBPixelGeoManager.cxx:334
InDetDD::DistortedMaterialManager
Definition: DistortedMaterialManager.h:15
PixelLegacyManager::PixelTMTWidthX1
double PixelTMTWidthX1(int iPart)
Definition: PixelLegacyManager.cxx:442
DBPixelGeoManager::DoServicesOnLadder
virtual bool DoServicesOnLadder() override
Definition: DBPixelGeoManager.cxx:389
PixelLegacyManager::PixelCableThickness
double PixelCableThickness(int index)
Definition: PixelLegacyManager.cxx:373
DBPixelGeoManager::DesignZActiveArea
virtual double DesignZActiveArea(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3312
PixelLegacyManager::PixelTMTNumParts
int PixelTMTNumParts()
TMT.
Definition: PixelLegacyManager.cxx:398
DBPixelGeoManager::PixelOmegaGluePosZ
virtual double PixelOmegaGluePosZ(int index) override
Definition: DBPixelGeoManager.cxx:2837
DBPixelGeoManager::PixelEndcapNSupportFrames
virtual int PixelEndcapNSupportFrames() override
Definition: DBPixelGeoManager.cxx:2570
DBPixelGeoManager::DBMBrcktSideBlockY
virtual double DBMBrcktSideBlockY() override
Definition: DBPixelGeoManager.cxx:3580
DBPixelGeoManager::PixelECCarbonMaterialTypeNum
virtual int PixelECCarbonMaterialTypeNum(std::string) override
Definition: DBPixelGeoManager.cxx:709
DBPixelGeoManager::m_PixelModule
IRDBRecordset_ptr m_PixelModule
Definition: DBPixelGeoManager.h:51
DBPixelGeoManager::DBMTelescopeZ
virtual double DBMTelescopeZ() override
Definition: DBPixelGeoManager.cxx:3512
DBPixelGeoManager::IBLStaveMechanicalStaveEndBlockLength
virtual double IBLStaveMechanicalStaveEndBlockLength() override
Definition: DBPixelGeoManager.cxx:1714
PixelLegacyManager::PixelPigtailEndY
double PixelPigtailEndY()
Definition: PixelLegacyManager.cxx:725
DBPixelGeoManager::PixelServiceZMin
virtual double PixelServiceZMin(const std::string &, int) override
Definition: DBPixelGeoManager.cxx:825
DBPixelGeoManager::PixelServiceRMin
virtual double PixelServiceRMin(const std::string &, int) override
Definition: DBPixelGeoManager.cxx:791
DBPixelGeoManager::PixelTMTWidthY
virtual double PixelTMTWidthY(int iPart) override
Definition: DBPixelGeoManager.cxx:2640
DBPixelGeoManager::PixelFluidMat
virtual std::string PixelFluidMat(int index) override
Definition: DBPixelGeoManager.cxx:2918
DBPixelGeoManager::m_PixelConicalStave
IRDBRecordset_ptr m_PixelConicalStave
Definition: DBPixelGeoManager.h:73
PixelModuleFeMask_create_db.nModules
nModules
Definition: PixelModuleFeMask_create_db.py:47
DBPixelGeoManager::DBMTrapezBackX
virtual double DBMTrapezBackX() override
Definition: DBPixelGeoManager.cxx:3553
DBPixelGeoManager::DBMModuleCageY
virtual double DBMModuleCageY() override
Definition: DBPixelGeoManager.cxx:3517
deg
#define deg
Definition: SbPolyhedron.cxx:17
DBPixelGeoManager::DBMBrcktWindowY
virtual double DBMBrcktWindowY() override
Definition: DBPixelGeoManager.cxx:3565
PixelMaterialMap::getMaterial
std::string getMaterial(int layerdisk, int typenum, const std::string &volumeName) const
Definition: PixelMaterialMap.cxx:39
DBPixelGeoManager::PixelDiskSupportThickness
virtual double PixelDiskSupportThickness(int isup) override
Definition: DBPixelGeoManager.cxx:3436
DBPixelGeoManager::EmptyRowConnections
virtual int EmptyRowConnections(int index) override
Definition: DBPixelGeoManager.cxx:3287
DBPixelGeoManager::PixelDiskSupportRMax
virtual double PixelDiskSupportRMax(int isup) override
Definition: DBPixelGeoManager.cxx:3428
DBPixelGeoManager::PixelPigtailEndY
virtual double PixelPigtailEndY() override
Definition: DBPixelGeoManager.cxx:2949
PixelLegacyManager::PixelPigtailBendY
double PixelPigtailBendY()
Definition: PixelLegacyManager.cxx:759
DBPixelGeoManager::PixelOmegaStartY
virtual double PixelOmegaStartY() override
Definition: DBPixelGeoManager.cxx:2733
DBPixelGeoManager::PixelOmegaUpperBendRadius
virtual double PixelOmegaUpperBendRadius() override
Definition: DBPixelGeoManager.cxx:2697
DBPixelGeoManager::m_PixelEndcapService
IRDBRecordset_ptr m_PixelEndcapService
Definition: DBPixelGeoManager.h:48
PixelGeometryManager::msgLvl
bool msgLvl(MSG::Level lvl) const
Definition: PixelGeometryManager.h:614
DBPixelGeoManager::m_weightTable
IRDBRecordset_ptr m_weightTable
Definition: DBPixelGeoManager.h:74
PixelLegacyManager::PixelOmegaLowerBendRadius
double PixelOmegaLowerBendRadius()
Definition: PixelLegacyManager.cxx:522
DBPixelGeoManager::DesignNumColsPerChip
virtual int DesignNumColsPerChip(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3156
athena.value
value
Definition: athena.py:124
DBPixelGeoManager::DBMCeramicX
virtual double DBMCeramicX() override
Definition: DBPixelGeoManager.cxx:3659
DBPixelGeoManager::PixelOmegaLength
virtual double PixelOmegaLength() override
Definition: DBPixelGeoManager.cxx:2727
DBPixelGeoManager::PixelServiceZMax
virtual double PixelServiceZMax(const std::string &, int) override
Definition: DBPixelGeoManager.cxx:829
DecodeVersionKey::node
const std::string & node() const
Return the version node.
Definition: DecodeVersionKey.cxx:97
DBPixelGeoManager::PixelTMTPosY
virtual double PixelTMTPosY(int iPart) override
Definition: DBPixelGeoManager.cxx:2658
DBPixelGeoManager::SetCurrentLD
virtual void SetCurrentLD(int i) override
Definition: DBPixelGeoManager.cxx:303
DBPixelGeoManager::m_DBMBracket
IRDBRecordset_ptr m_DBMBracket
Definition: DBPixelGeoManager.h:82
PixelLegacyManager::PixelTMTPerModule
bool PixelTMTPerModule(int iPart)
Definition: PixelLegacyManager.cxx:487
DBPixelGeoManager::PixelFrameCornerMaterial
virtual std::string PixelFrameCornerMaterial(int sectionIndex) override
Definition: DBPixelGeoManager.cxx:1392
DBPixelGeoManager::PixelEndcapZMax
virtual double PixelEndcapZMax() override
Definition: DBPixelGeoManager.cxx:2565
DBPixelGeoManager::m_PixelLayer
IRDBRecordset_ptr m_PixelLayer
Definition: DBPixelGeoManager.h:50
DBPixelGeoManager::getPixelServiceRecordString
std::string getPixelServiceRecordString(const std::string &name, const std::string &type, int index)
Definition: DBPixelGeoManager.cxx:999
vec
std::vector< size_t > vec
Definition: CombinationsGeneratorTest.cxx:12
DBPixelGeoManager::PixelChipOffset
virtual double PixelChipOffset(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:576
DBPixelGeoManager::DBPixelGeoManager
DBPixelGeoManager(PixelGeoModelAthenaComps *athenaComps)
Definition: DBPixelGeoManager.cxx:44
DBPixelGeoManager::DBMFEI4X
virtual double DBMFEI4X() override
Definition: DBPixelGeoManager.cxx:3650
DBPixelGeoManager::allowSkipEtaZero
virtual bool allowSkipEtaZero() override
Definition: DBPixelGeoManager.cxx:2497
DBPixelGeoManager::detailedFrame
virtual bool detailedFrame() override
Definition: DBPixelGeoManager.cxx:1337
DBPixelGeoManager::m_PixelEnvelopeService
IRDBRecordset_ptr m_PixelEnvelopeService
Definition: DBPixelGeoManager.h:49
PixelLegacyManager.h
DBPixelGeoManager::IBLStaveOmegaEndRadius
virtual double IBLStaveOmegaEndRadius() override
Definition: DBPixelGeoManager.cxx:1906
DBPixelGeoManager::PixelLadderSupportThickness
virtual double PixelLadderSupportThickness() override
Definition: DBPixelGeoManager.cxx:1592
DBPixelGeoManager::DBMTrapezBackY
virtual double DBMTrapezBackY() override
Definition: DBPixelGeoManager.cxx:3556
DBPixelGeoManager::DBMPP0RIn
virtual double DBMPP0RIn() override
Definition: DBPixelGeoManager.cxx:3702
DBPixelGeoManager::init
void init()
Definition: DBPixelGeoManager.cxx:76
ReadOfcFromCool.field
field
Definition: ReadOfcFromCool.py:48
DBPixelGeoManager::PixelFrameZMin
virtual double PixelFrameZMin(int sectionIndex) override
Definition: DBPixelGeoManager.cxx:1362
DBPixelGeoManager::PixelModuleAngleSign
virtual double PixelModuleAngleSign(int) override
Definition: DBPixelGeoManager.cxx:2537
DBPixelGeoManager::versionName
virtual std::string versionName() const override
Definition: DBPixelGeoManager.cxx:1221
DBPixelGeoManager::PixelModuleDrDistance
virtual double PixelModuleDrDistance() override
Definition: DBPixelGeoManager.cxx:2431
DBPixelGeoManager::isEndcap
virtual bool isEndcap() override
Definition: DBPixelGeoManager.cxx:378
DBPixelGeoManager::DBMMainPlateZ
virtual double DBMMainPlateZ() override
Definition: DBPixelGeoManager.cxx:3614
DBPixelGeoManager::PixelPigtailPosZ
virtual double PixelPigtailPosZ() override
Definition: DBPixelGeoManager.cxx:2974
DBPixelGeoManager::DesignGapRP
virtual double DesignGapRP(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3372
PixelLegacyManager::PixelOmegaGlueStartY
double PixelOmegaGlueStartY(int index)
Definition: PixelLegacyManager.cxx:610
DBPixelGeoManager::PixelServiceName
virtual std::string PixelServiceName(const std::string &, int) override
Definition: DBPixelGeoManager.cxx:766
DBPixelGeoManager::m_PixelStaveZ
IRDBRecordset_ptr m_PixelStaveZ
Definition: DBPixelGeoManager.h:54
IGeometryDBSvc::getTableSize
virtual unsigned int getTableSize(IRDBRecordset_ptr recordSet) const =0
DBPixelGeoManager::PixelAlTubeUpperBendY
virtual double PixelAlTubeUpperBendY() override
Definition: DBPixelGeoManager.cxx:2755
DBPixelGeoManager::IBLServiceGetMinRadialPosition
virtual double IBLServiceGetMinRadialPosition(const std::string &srvName, const std::string &srvType, double srvZmin, double srvZmax) override
Definition: DBPixelGeoManager.cxx:2293
DBPixelGeoManager::PixelRMax
virtual double PixelRMax() override
Definition: DBPixelGeoManager.cxx:1253
DBPixelGeoManager::DBMModuleCageZ
virtual double DBMModuleCageZ() override
Definition: DBPixelGeoManager.cxx:3520
PixelLegacyManager::PixelConnectorPosX
double PixelConnectorPosX(int index)
Definition: PixelLegacyManager.cxx:813
DBPixelGeoManager::PixelECNSectors1
virtual int PixelECNSectors1() override
Definition: DBPixelGeoManager.cxx:2592
DBPixelGeoManager::PixelFrameSections
virtual int PixelFrameSections() override
Definition: DBPixelGeoManager.cxx:1342
PixelLegacyManager::PixelOmegaWallThickness
double PixelOmegaWallThickness()
Definition: PixelLegacyManager.cxx:527
DBPixelGeoManager::PixelCableWeight
virtual double PixelCableWeight(int index) override
Definition: DBPixelGeoManager.cxx:1115
DBPixelGeoManager::PixelModuleEtaFromIndex
virtual int PixelModuleEtaFromIndex(int index) override
Definition: DBPixelGeoManager.cxx:2516
DBPixelGeoManager::dbVersion
virtual int dbVersion() override
Definition: DBPixelGeoManager.h:291
DBPixelGeoManager::DesignGapZ
virtual double DesignGapZ(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3381
PixelLegacyManager::PixelOmegaGlueThickness
double PixelOmegaGlueThickness(int index)
Definition: PixelLegacyManager.cxx:605
DBPixelGeoManager::PixelFrameElementZMin2
virtual double PixelFrameElementZMin2(int sectionIndex, int element) override
Definition: DBPixelGeoManager.cxx:1462
TopLevelPlacements::present
bool present(const std::string &partName) const
Definition: TopLevelPlacements.cxx:35
DBPixelGeoManager::PixelModuleServiceNumber
virtual int PixelModuleServiceNumber() override
Definition: DBPixelGeoManager.cxx:603
DBPixelGeoManager::PixelServiceLD
virtual int PixelServiceLD(const std::string &, int) override
Definition: DBPixelGeoManager.cxx:888
DBPixelGeoManager::DBMCoolingSidePlatePos
virtual double DBMCoolingSidePlatePos() override
Definition: DBPixelGeoManager.cxx:3636
DBPixelGeoManager::mmcm
double mmcm()
Definition: DBPixelGeoManager.h:810
DBPixelGeoManager::m_legacyManager
PixelLegacyManager * m_legacyManager
Definition: DBPixelGeoManager.h:139
DBPixelGeoManager::moduleType
virtual int moduleType() override
Definition: DBPixelGeoManager.cxx:443
DBPixelGeoManager::DBMSpacingZ
virtual double DBMSpacingZ() override
Definition: DBPixelGeoManager.cxx:3525
DBPixelGeoManager::IBLStaveModuleNumber
virtual int IBLStaveModuleNumber() override
Definition: DBPixelGeoManager.cxx:1970
DBPixelGeoManager::moduleType3D
virtual int moduleType3D() override
Definition: DBPixelGeoManager.cxx:457
DBPixelGeoManager::DBMFlexSupportZ
virtual double DBMFlexSupportZ() override
Definition: DBPixelGeoManager.cxx:3682
DBPixelGeoManager::m_PixelTopLevel
IRDBRecordset_ptr m_PixelTopLevel
Definition: DBPixelGeoManager.h:55
DBPixelGeoManager::PixelServiceElements
virtual int PixelServiceElements(const std::string &) override
Definition: DBPixelGeoManager.cxx:741
DBPixelGeoManager::PixelLadderSupportWidth
virtual double PixelLadderSupportWidth() override
Definition: DBPixelGeoManager.cxx:1599
DBPixelGeoManager::PixelOmegaEndY
virtual double PixelOmegaEndY() override
Definition: DBPixelGeoManager.cxx:2739
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
DBPixelGeoManager::DesignNumChipsEta
virtual int DesignNumChipsEta(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3134
PixelMaterialMap.h
DBPixelGeoManager::DBMBrcktSideBlockX
virtual double DBMBrcktSideBlockX() override
Definition: DBPixelGeoManager.cxx:3577
DBPixelGeoManager::isLDPresent
virtual bool isLDPresent() override
Definition: DBPixelGeoManager.cxx:354
DBPixelGeoManager::m_PixelStave
IRDBRecordset_ptr m_PixelStave
Definition: DBPixelGeoManager.h:53
DBPixelGeoManager::PixelServiceShift
virtual int PixelServiceShift(const std::string &type, int index) override
Definition: DBPixelGeoManager.cxx:879
DBPixelGeoManager::IBLStaveTubeGlueThickness
virtual double IBLStaveTubeGlueThickness() override
Definition: DBPixelGeoManager.cxx:2028
DBPixelGeoManager::PixelLadderSupportLength
virtual double PixelLadderSupportLength() override
Definition: DBPixelGeoManager.cxx:1632
PixelLegacyManager::PixelOmegaUpperBendX
double PixelOmegaUpperBendX()
Definition: PixelLegacyManager.cxx:497
PixelLegacyManager::PixelFluidZ1
double PixelFluidZ1(int index)
Definition: PixelLegacyManager.cxx:639
DBPixelGeoManager::DBMBrcktLockY
virtual double DBMBrcktLockY() override
Definition: DBPixelGeoManager.cxx:3586
DBPixelGeoManager::PixelTMTWidthX1
virtual double PixelTMTWidthX1(int iPart) override
Definition: DBPixelGeoManager.cxx:2628
DBPixelGeoManager::isInnermostPixelLayer
bool isInnermostPixelLayer()
Definition: DBPixelGeoManager.h:277
DBPixelGeoManager::PixelPigtailEnvelopeLength
virtual double PixelPigtailEnvelopeLength() override
Definition: DBPixelGeoManager.cxx:3016
DBPixelGeoManager::DesignNumRowsPerChip
virtual int DesignNumRowsPerChip(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3145
DBPixelGeoManager::addDefaultMaterials
void addDefaultMaterials()
Definition: DBPixelGeoManager.cxx:1152
DBPixelGeoManager::PixelAlTubeLowerBendRadius
virtual double PixelAlTubeLowerBendRadius() override
Definition: DBPixelGeoManager.cxx:2779
DBPixelGeoManager::PixelFluidIndex
virtual int PixelFluidIndex(int type) override
Definition: DBPixelGeoManager.cxx:2909
DBPixelGeoManager::db
const IGeometryDBSvc * db() const
Definition: DBPixelGeoManager.h:790
DBPixelGeoManager::PixelModuleServiceFullSize
virtual int PixelModuleServiceFullSize(int svc) override
Definition: DBPixelGeoManager.cxx:642
DBPixelGeoManager::m_PixelGangedPixels
IRDBRecordset_ptr m_PixelGangedPixels
Definition: DBPixelGeoManager.h:57
DBPixelGeoManager::PixelCableElements
virtual int PixelCableElements() override
Definition: DBPixelGeoManager.cxx:1058
DBPixelGeoManager::PixelServiceFrameNum
virtual int PixelServiceFrameNum(const std::string &, int) override
Definition: DBPixelGeoManager.cxx:931
DBPixelGeoManager::PixelEndcapZMin
virtual double PixelEndcapZMin() override
Definition: DBPixelGeoManager.cxx:2560
dqt_zlumi_alleff_HIST.A
A
Definition: dqt_zlumi_alleff_HIST.py:110
PixelLegacyManager::PixelTMTBaseX2
double PixelTMTBaseX2(int iPart)
Definition: PixelLegacyManager.cxx:462
IGeometryDBSvc::testField
virtual bool testField(IRDBRecordset_ptr recordSet, const std::string &name, int index=0) const =0
PixelLegacyManager::PixelFluidNumTypes
int PixelFluidNumTypes()
Definition: PixelLegacyManager.cxx:693
DBPixelGeoManager::DBMCoolingSidePlateX
virtual double DBMCoolingSidePlateX() override
Definition: DBPixelGeoManager.cxx:3627
DBPixelGeoManager::DesignNumChipsPhi
virtual int DesignNumChipsPhi(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3122
DBPixelGeoManager::DBMBrcktWindowX
virtual double DBMBrcktWindowX() override
Definition: DBPixelGeoManager.cxx:3562
DBPixelGeoManager::IBLSupportRingOuterRadius
virtual double IBLSupportRingOuterRadius() override
Definition: DBPixelGeoManager.cxx:2081
DBPixelGeoManager::PixelFrameSideWidth
virtual double PixelFrameSideWidth(int sectionIndex) override
Definition: DBPixelGeoManager.cxx:1357
DBPixelGeoManager::PixelServiceZsymm
virtual bool PixelServiceZsymm(const std::string &, int) override
Definition: DBPixelGeoManager.cxx:778
DBPixelGeoManager::DBMRodRadius
virtual double DBMRodRadius() override
Definition: DBPixelGeoManager.cxx:3690
DBPixelGeoManager::PixelCableBiStaveNum
virtual int PixelCableBiStaveNum(int index) override
Definition: DBPixelGeoManager.cxx:1072
DBPixelGeoManager::PixelCableWidth
virtual double PixelCableWidth(int index) override
Definition: DBPixelGeoManager.cxx:1094
DBPixelGeoManager::DesignDiodeRowsPerCircuit
virtual int DesignDiodeRowsPerCircuit(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3197
cm
const double cm
Definition: Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimParametrization/tools/FCAL_ChannelMap.cxx:25
DBPixelGeoManager::PixelLadderThicknessClearance
virtual double PixelLadderThicknessClearance() override
Definition: DBPixelGeoManager.cxx:1542
DBPixelGeoManager::m_PlanarModuleNumber
int m_PlanarModuleNumber
Definition: DBPixelGeoManager.h:117
DBPixelGeoManager::IBLFlexPP0Z
virtual double IBLFlexPP0Z(int iPos) override
Definition: DBPixelGeoManager.cxx:2226
PixelLegacyManager::PixelFluidX
double PixelFluidX(int index)
Definition: PixelLegacyManager.cxx:678
DBPixelGeoManager::m_PixelRing
IRDBRecordset_ptr m_PixelRing
Definition: DBPixelGeoManager.h:46
PixelLegacyManager::PixelConnectorWidthX
double PixelConnectorWidthX(int index)
Definition: PixelLegacyManager.cxx:798
DBPixelGeoManager::PixelLayerRadius
virtual double PixelLayerRadius() override
Definition: DBPixelGeoManager.cxx:1510
DBPixelGeoManager::PixelLayerGlobalShift
virtual double PixelLayerGlobalShift() override
Definition: DBPixelGeoManager.cxx:1519
DBPixelGeoManager::PixelDiskZPosition
virtual double PixelDiskZPosition() override
Definition: DBPixelGeoManager.cxx:2577
PixelGeometryManager::athenaComps
PixelGeoModelAthenaComps * athenaComps()
Definition: PixelGeometryManager.h:616
DBPixelGeoManager::designType3D
int designType3D()
Definition: DBPixelGeoManager.cxx:3092
DBPixelGeoManager::PixelModuleZPosition
virtual double PixelModuleZPosition(int) override
Definition: DBPixelGeoManager.cxx:2437
DBPixelGeoManager::getPixelServiceRecordTestField
bool getPixelServiceRecordTestField(const std::string &name, const std::string &type, int index)
Definition: DBPixelGeoManager.cxx:1015
DBPixelGeoManager::PixelModuleStaggerSign
virtual int PixelModuleStaggerSign(int etaModule) override
Definition: DBPixelGeoManager.cxx:2487
DBPixelGeoManager::PixelConnectorWidthY
virtual double PixelConnectorWidthY(int index) override
Definition: DBPixelGeoManager.cxx:3037
DBPixelGeoManager::IBLSupportRingInnerRadius
virtual double IBLSupportRingInnerRadius() override
Definition: DBPixelGeoManager.cxx:2070
PixelLegacyManager::PixelAlTubeLowerBendY
double PixelAlTubeLowerBendY()
Definition: PixelLegacyManager.cxx:571
DBPixelGeoManager::getPixelServiceRecordDouble
double getPixelServiceRecordDouble(const std::string &name, const std::string &type, int index)
Definition: DBPixelGeoManager.cxx:1010
A
DBPixelGeoManager::PixelModuleServiceModuleType
virtual int PixelModuleServiceModuleType(int svc) override
Definition: DBPixelGeoManager.cxx:647
DBPixelGeoManager::DBMBrcktWindowOffset
virtual double DBMBrcktWindowOffset() override
Definition: DBPixelGeoManager.cxx:3568
DBPixelGeoManager::PixelPigtailStartY
virtual double PixelPigtailStartY() override
Definition: DBPixelGeoManager.cxx:2943
DBPixelGeoManager::m_3DModuleNumber
int m_3DModuleNumber
Definition: DBPixelGeoManager.h:117
DBPixelGeoManager::PixelTMTPerModule
virtual bool PixelTMTPerModule(int iPart) override
Definition: DBPixelGeoManager.cxx:2676
DBPixelGeoManager::IBLFlexDoglegRatio
virtual double IBLFlexDoglegRatio() override
Definition: DBPixelGeoManager.cxx:2190
DBPixelGeoManager::~DBPixelGeoManager
~DBPixelGeoManager()
Definition: DBPixelGeoManager.cxx:231
DBPixelGeoManager::PixelDiskRMin
virtual double PixelDiskRMin() override
Definition: DBPixelGeoManager.cxx:3407
DBPixelGeoManager::IBLStaveOmegaEndAngle
virtual double IBLStaveOmegaEndAngle() override
Definition: DBPixelGeoManager.cxx:1916
PixelDetectorManager.h
DBPixelGeoManager::PixelLadderLength
virtual double PixelLadderLength() override
Definition: DBPixelGeoManager.cxx:1526
IRDBAccessSvc.h
Definition of the abstract IRDBAccessSvc interface.
PixelLegacyManager::PixelCableLabel
std::string PixelCableLabel(int index)
Definition: PixelLegacyManager.cxx:386
DBPixelGeoManager::PixelCableLabel
virtual std::string PixelCableLabel(int index) override
Definition: DBPixelGeoManager.cxx:1122
DBPixelGeoManager::partTransform
virtual const GeoTrf::Transform3D & partTransform(const std::string &partName) const override
Definition: DBPixelGeoManager.cxx:275
DBPixelGeoManager::PixelEndcapMinorVersion
virtual int PixelEndcapMinorVersion() override
Definition: DBPixelGeoManager.cxx:1206
IRDBAccessSvc::getChildTag
virtual std::string getChildTag(const std::string &childNode, const std::string &parentTag, const std::string &parentNode, const std::string &connName="ATLASDD")=0
Gets the tag name for the node by giving its parent node tag.
DBPixelGeoManager::PixelFrameNumSides
virtual int PixelFrameNumSides(int sectionIndex) override
Definition: DBPixelGeoManager.cxx:1377
PixelLegacyManager::PixelAlTubeUpperBendX
double PixelAlTubeUpperBendX()
Definition: PixelLegacyManager.cxx:551
DBPixelGeoManager::PixelCableZStart
virtual double PixelCableZStart(int index) override
Definition: DBPixelGeoManager.cxx:1080
DBPixelGeoManager::IBLStaveFacePlateGlueThickness
virtual double IBLStaveFacePlateGlueThickness() override
Definition: DBPixelGeoManager.cxx:2013
DBPixelGeoManager::m_zPositionMap
InDetDD::PairIndexMap * m_zPositionMap
Definition: DBPixelGeoManager.h:164
lumiFormat.i
int i
Definition: lumiFormat.py:85
DBPixelGeoManager::m_PixelPigtail
IRDBRecordset_ptr m_PixelPigtail
Definition: DBPixelGeoManager.h:65
DBPixelGeoManager::PixelLadderTilt
virtual double PixelLadderTilt() override
Definition: DBPixelGeoManager.cxx:1558
PixelLegacyManager::PixelFluidZ2
double PixelFluidZ2(int index)
Definition: PixelLegacyManager.cxx:646
DBPixelGeoManager::useLegacy
bool useLegacy()
Definition: DBPixelGeoManager.h:292
PixelStaveTypes.h
PixelMaterialMap
Definition: PixelMaterialMap.h:17
DBPixelGeoManager::m_PixelCommon
IRDBRecordset_ptr m_PixelCommon
Definition: DBPixelGeoManager.h:42
DBPixelGeoManager::PixelFrameSectionFromIndex
int PixelFrameSectionFromIndex(int sectionIndex)
Definition: DBPixelGeoManager.cxx:1397
DBPixelGeoManager::PixelLadderWidthClearance
virtual double PixelLadderWidthClearance() override
Definition: DBPixelGeoManager.cxx:1533
PixelGeoModelAthenaComps::getIdHelper
const PixelID * getIdHelper() const
Definition: PixelGeoModelAthenaComps.cxx:59
python.CaloCondTools.g
g
Definition: CaloCondTools.py:15
DBPixelGeoManager::DesignCellColumnsPerCircuit
virtual int DesignCellColumnsPerCircuit(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3192
DBPixelGeoManager::IBLStaveOmegaGlueThickness
virtual double IBLStaveOmegaGlueThickness() override
Definition: DBPixelGeoManager.cxx:2043
IRDBAccessSvc
IRDBAccessSvc is an abstract interface to the athena service that provides the following functionalit...
Definition: IRDBAccessSvc.h:42
DBPixelGeoManager::DBMBrcktTopBlockZ
virtual double DBMBrcktTopBlockZ() override
Definition: DBPixelGeoManager.cxx:3574
PixelLegacyManager::PixelLadderServicesX
double PixelLadderServicesX()
Definition: PixelLegacyManager.cxx:309
DBPixelGeoManager::PixelBentStaveNModule
virtual int PixelBentStaveNModule() override
Definition: DBPixelGeoManager.cxx:1618
DBPixelGeoManager::getFrameElementIndex
int getFrameElementIndex(int sectionIndex, int element)
Definition: DBPixelGeoManager.cxx:1414
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
DBPixelGeoManager::IBLStaveTubeOuterDiameter
virtual double IBLStaveTubeOuterDiameter() override
Definition: DBPixelGeoManager.cxx:1797
DBPixelGeoManager::DBMMPlateWindowWidth
virtual double DBMMPlateWindowWidth() override
Definition: DBPixelGeoManager.cxx:3617
DBPixelGeoManager::m_services
bool m_services
Definition: DBPixelGeoManager.h:104
DBPixelGeoManager::PixelBoardLength
virtual double PixelBoardLength(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:492
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
DBPixelGeoManager::InitialLayout
virtual bool InitialLayout() const override
Definition: DBPixelGeoManager.cxx:393
DBPixelGeoManager::IBLSupportMechanicalStaveRingFixPoint
virtual double IBLSupportMechanicalStaveRingFixPoint() override
Definition: DBPixelGeoManager.cxx:2093
DBPixelGeoManager::DBMKaptonZ
virtual double DBMKaptonZ() override
Definition: DBPixelGeoManager.cxx:3671
DBPixelGeoManager::PixelServicePhiLoc
virtual double PixelServicePhiLoc(const std::string &a, int _n) override
Definition: DBPixelGeoManager.cxx:844
DBPixelGeoManager::DoServices
virtual bool DoServices() override
Definition: DBPixelGeoManager.cxx:386
PixelLegacyManager::PixelTMTWidthX2
double PixelTMTWidthX2(int iPart)
Definition: PixelLegacyManager.cxx:437
DecodeVersionKey
This is a helper class to query the version tags from GeoModelSvc and determine the appropriate tag a...
Definition: DecodeVersionKey.h:18
DBPixelGeoManager::EmptyRows
virtual int EmptyRows(int index) override
Definition: DBPixelGeoManager.cxx:3273
DBPixelGeoManager::IBLStaveMechanicalStaveEndBlockOmegaOverlap
virtual double IBLStaveMechanicalStaveEndBlockOmegaOverlap() override
Definition: DBPixelGeoManager.cxx:1736
master.flag
bool flag
Definition: master.py:29
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition: GeoPrimitives.h:46
DBPixelGeoManager::m_PixelFrameSect
IRDBRecordset_ptr m_PixelFrameSect
Definition: DBPixelGeoManager.h:67
DBPixelGeoManager::PixelOmegaLowerBendX
virtual double PixelOmegaLowerBendX() override
Definition: DBPixelGeoManager.cxx:2703
PixelLegacyManager::PixelConnectorPosY
double PixelConnectorPosY(int index)
Definition: PixelLegacyManager.cxx:818
DBPixelGeoManager::IBLFlexPP0Rmin
virtual double IBLFlexPP0Rmin(int iPos) override
Definition: DBPixelGeoManager.cxx:2241
DBPixelGeoManager::IBLStaveFlexLayerThickness
virtual double IBLStaveFlexLayerThickness() override
Definition: DBPixelGeoManager.cxx:1830
DBPixelGeoManager::DesignReadoutSide
virtual int DesignReadoutSide(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3111
DBPixelGeoManager::DesignPitchZ
virtual double DesignPitchZ(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3332
DBPixelGeoManager::PixelEndcapRMax
virtual double PixelEndcapRMax() override
Definition: DBPixelGeoManager.cxx:2555
PixelLegacyManager::DesignPitchRP
double DesignPitchRP(bool isBLayer)
Definition: PixelLegacyManager.cxx:918
DBPixelGeoManager::PixelOmegaWallThickness
virtual double PixelOmegaWallThickness() override
Definition: DBPixelGeoManager.cxx:2721
DBPixelGeoManager::DesignCircuitsEta
virtual int DesignCircuitsEta(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3399
DBPixelGeoManager::PixelModuleShiftFlag
virtual double PixelModuleShiftFlag(int) override
Definition: DBPixelGeoManager.cxx:2474
checkCorrelInHIST.prefix
dictionary prefix
Definition: checkCorrelInHIST.py:391
DBPixelGeoManager::m_materialMap
PixelMaterialMap * m_materialMap
Definition: DBPixelGeoManager.h:148
PixelAthClusterMonAlgCfg.zmax
zmax
Definition: PixelAthClusterMonAlgCfg.py:169
DecodeVersionKey::tag
const std::string & tag() const
Return version tag.
Definition: DecodeVersionKey.cxx:91
sign
int sign(int a)
Definition: TRT_StrawNeighbourSvc.h:107
DBPixelGeoManager::oldFrame
virtual bool oldFrame() override
Definition: DBPixelGeoManager.cxx:1330
DBPixelGeoManager::PixelFrameElementZMin1
virtual double PixelFrameElementZMin1(int sectionIndex, int element) override
Definition: DBPixelGeoManager.cxx:1455
DBPixelGeoManager::IBLStaveRadius
virtual double IBLStaveRadius() override
Definition: DBPixelGeoManager.cxx:1666
PixelLegacyManager::PixelPigtailPosZ
double PixelPigtailPosZ()
Definition: PixelLegacyManager.cxx:749
DBPixelGeoManager::PixelModuleIndexFromEta
virtual int PixelModuleIndexFromEta(int etaModule) override
Definition: DBPixelGeoManager.cxx:2526
DBPixelGeoManager::PixelECCablesRMax
virtual double PixelECCablesRMax() override
Definition: DBPixelGeoManager.cxx:2608
DBPixelGeoManager::PixelHybridLength
virtual double PixelHybridLength(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:530
DBPixelGeoManager::PixelServiceParentEnvelopeNum
virtual int PixelServiceParentEnvelopeNum(const std::string &type, int index) override
Definition: DBPixelGeoManager.cxx:972
DBPixelGeoManager::PixelServiceRMin2
virtual double PixelServiceRMin2(const std::string &, int) override
Definition: DBPixelGeoManager.cxx:809
DBPixelGeoManager::m_defaultLengthUnit
double m_defaultLengthUnit
Definition: DBPixelGeoManager.h:170
PixelLegacyManager::PixelOmegaGlueStartX
double PixelOmegaGlueStartX(int index)
Definition: PixelLegacyManager.cxx:600
DBPixelGeoManager::IBLStaveLength
virtual double IBLStaveLength() override
Definition: DBPixelGeoManager.cxx:1751
DBPixelGeoManager::PixelFluidThick1
virtual double PixelFluidThick1(int index) override
Definition: DBPixelGeoManager.cxx:2865
DBPixelGeoManager::m_gangedIndexMap
std::map< int, std::vector< int > > * m_gangedIndexMap
Definition: DBPixelGeoManager.h:154
DBPixelGeoManager::DBMTelescopeX
virtual double DBMTelescopeX() override
Definition: DBPixelGeoManager.cxx:3506
DBPixelGeoManager::IBLStaveModuleNumber_AllPlanar
virtual int IBLStaveModuleNumber_AllPlanar() override
Definition: DBPixelGeoManager.cxx:1959
PixelLegacyManager::PixelNumConnectorElements
int PixelNumConnectorElements()
Definition: PixelLegacyManager.cxx:793
DBPixelGeoManager::PixelConnectorWidthX
virtual double PixelConnectorWidthX(int index) override
Definition: DBPixelGeoManager.cxx:3031
DBPixelGeoManager::getIdHelper
virtual const PixelID * getIdHelper() override
Definition: DBPixelGeoManager.cxx:268
DBPixelGeoManager::PixelAlTubeWallThickness
virtual double PixelAlTubeWallThickness() override
Definition: DBPixelGeoManager.cxx:2785
DBPixelGeoManager::PixelChipWidth
virtual double PixelChipWidth(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:552
PixelLegacyManager::PixelFluidMatType
int PixelFluidMatType(int index)
Definition: PixelLegacyManager.cxx:698
PixelLegacyManager::EmptyRows
int EmptyRows(int index)
Definition: PixelLegacyManager.cxx:893
PixelLegacyManager::DesignZActiveArea
double DesignZActiveArea()
Definition: PixelLegacyManager.cxx:913
DBPixelGeoManager::DBMSpacingRadial
virtual double DBMSpacingRadial() override
Definition: DBPixelGeoManager.cxx:3528
DBPixelGeoManager::IBLStaveMechanicalStaveOffset
virtual double IBLStaveMechanicalStaveOffset(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:1771
DBPixelGeoManager::SetDC1Geometry
virtual void SetDC1Geometry(bool flag) override
Definition: DBPixelGeoManager.cxx:397
DBPixelGeoManager::PixelBoardThickness
virtual double PixelBoardThickness(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:500
DBPixelGeoManager::m_PixelIBLSupport
IRDBRecordset_ptr m_PixelIBLSupport
Definition: DBPixelGeoManager.h:69
IGeoDbTagSvc
Definition: IGeoDbTagSvc.h:26
DBPixelGeoManager::PixelECCarbonThickness
virtual double PixelECCarbonThickness(std::string) override
Definition: DBPixelGeoManager.cxx:695
python.SystemOfUnits.micrometer
int micrometer
Definition: SystemOfUnits.py:71
DBPixelGeoManager::DBMPP0Thick
virtual double DBMPP0Thick() override
Definition: DBPixelGeoManager.cxx:3708
PixelLegacyManager::PixelFluidY
double PixelFluidY(int index)
Definition: PixelLegacyManager.cxx:683
PixelLegacyManager::DesignGapZ
double DesignGapZ()
Definition: PixelLegacyManager.cxx:949
DBPixelGeoManager::IBLStaveFlexWingThick
virtual double IBLStaveFlexWingThick() override
Definition: DBPixelGeoManager.cxx:2179
DBPixelGeoManager::PixelOmegaLowerBendRadius
virtual double PixelOmegaLowerBendRadius() override
Definition: DBPixelGeoManager.cxx:2715
Handler::svc
AthROOTErrorHandlerSvc * svc
Definition: AthROOTErrorHandlerSvc.cxx:10
DBPixelGeoManager::m_frameElementMap
std::map< int, std::vector< int > > * m_frameElementMap
Definition: DBPixelGeoManager.h:157
DBPixelGeoManager::DBMMPlateWindowPos
virtual double DBMMPlateWindowPos() override
Definition: DBPixelGeoManager.cxx:3623
DBPixelGeoManager::PixelBiStaveType
virtual int PixelBiStaveType(int layer, int phi) override
Definition: DBPixelGeoManager.cxx:2392
DBPixelGeoManager::PixelModuleServiceWidth
virtual double PixelModuleServiceWidth(int svc) override
Definition: DBPixelGeoManager.cxx:617
DBPixelGeoManager::PixelModuleAngle
virtual double PixelModuleAngle() override
Definition: DBPixelGeoManager.cxx:2425
DBPixelGeoManager::IBLSupportMidRingWidth
virtual double IBLSupportMidRingWidth() override
Definition: DBPixelGeoManager.cxx:2104
DBPixelGeoManager::PixelSimpleEnvelope
virtual bool PixelSimpleEnvelope() override
Definition: DBPixelGeoManager.cxx:1277
DBPixelGeoManager::SetEndcap
virtual void SetEndcap() override
Definition: DBPixelGeoManager.cxx:338
DBPixelGeoManager::PixelHybridThickness
virtual double PixelHybridThickness(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:538
DBPixelGeoManager::m_currentLD
int m_currentLD
Definition: DBPixelGeoManager.h:94
PixelLegacyManager::EmptyRowConnections
int EmptyRowConnections(int index)
Definition: PixelLegacyManager.cxx:900
InDetDD::AthenaComps::geoDbTagSvc
const IGeoDbTagSvc * geoDbTagSvc() const
Definition: InDetDDAthenaComps.h:58
DBPixelGeoManager::PixelFrameZMax
virtual double PixelFrameZMax(int sectionIndex) override
Definition: DBPixelGeoManager.cxx:1367
IRDBRecordset_ptr
std::shared_ptr< IRDBRecordset > IRDBRecordset_ptr
Definition: IRDBAccessSvc.h:25
DBPixelGeoManager::PixelPigtailWidthZ
virtual double PixelPigtailWidthZ() override
Definition: DBPixelGeoManager.cxx:2955
DBPixelGeoManager::m_dbmWeightTable
IRDBRecordset_ptr m_dbmWeightTable
Definition: DBPixelGeoManager.h:90
DBPixelGeoManager::PixelCableStackOffset
virtual double PixelCableStackOffset(int index) override
Definition: DBPixelGeoManager.cxx:1108
DBPixelGeoManager::PixelFrameElementZMax2
virtual double PixelFrameElementZMax2(int sectionIndex, int element) override
Definition: DBPixelGeoManager.cxx:1476
DBPixelGeoManager::IBLStaveOmegaEndCenterY
virtual double IBLStaveOmegaEndCenterY() override
Definition: DBPixelGeoManager.cxx:1896
DBPixelGeoManager::isDBM
virtual bool isDBM() override
Definition: DBPixelGeoManager.cxx:382
DBPixelGeoManager::DBMBrcktWindowCenterZ
virtual double DBMBrcktWindowCenterZ() override
Definition: DBPixelGeoManager.cxx:3571
DBPixelGeoManager::getPixelServiceRecordInt
int getPixelServiceRecordInt(const std::string &name, const std::string &type, int index)
Definition: DBPixelGeoManager.cxx:1004
DBPixelGeoManager::IBLStaveFacePlateThickness
virtual double IBLStaveFacePlateThickness() override
Definition: DBPixelGeoManager.cxx:1692
DBPixelGeoManager::getLD_Label
virtual std::string getLD_Label() override
Definition: DBPixelGeoManager.cxx:1176
DBPixelGeoManager::DBMBrcktFinHeight
virtual double DBMBrcktFinHeight() override
Definition: DBPixelGeoManager.cxx:3592
DBPixelGeoManager::DesignDiodesEtaTotal
virtual int DesignDiodesEtaTotal(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3177
IGeometryDBSvc::getDouble
virtual double getDouble(IRDBRecordset_ptr recordSet, const std::string &name, int index=0) const =0
The following methods will first look in the text file if provided and then look in the database.
DBPixelGeoManager::PixelFrameNumSideElements
virtual int PixelFrameNumSideElements(int sectionIndex) override
Definition: DBPixelGeoManager.cxx:1438
DBPixelGeoManager::PixelPigtailThickness
virtual double PixelPigtailThickness() override
Definition: DBPixelGeoManager.cxx:2937
PixelLegacyManager::PixelPigtailBendRMin
double PixelPigtailBendRMin()
Definition: PixelLegacyManager.cxx:764
DBPixelGeoManager::IBLStaveRotationAxis
virtual GeoTrf::Vector3D IBLStaveRotationAxis() override
Definition: DBPixelGeoManager.cxx:1645
DBPixelGeoManager::DBMBrcktFinPos
virtual double DBMBrcktFinPos() override
Definition: DBPixelGeoManager.cxx:3598
DBPixelGeoManager::m_PixelBarrelCable
IRDBRecordset_ptr m_PixelBarrelCable
Definition: DBPixelGeoManager.h:58
DBPixelGeoManager::m_PixelDisk
IRDBRecordset_ptr m_PixelDisk
Definition: DBPixelGeoManager.h:44
PixelLegacyManager::PixelOmegaGluePosZ
double PixelOmegaGluePosZ(int index)
Definition: PixelLegacyManager.cxx:625
DBPixelGeoManager::DBMDiamondX
virtual double DBMDiamondX() override
Definition: DBPixelGeoManager.cxx:3641
DBPixelGeoManager::PixelConnectorPosY
virtual double PixelConnectorPosY(int index) override
Definition: DBPixelGeoManager.cxx:3055
DBPixelGeoManager::PixelFluidThick2
virtual double PixelFluidThick2(int index) override
Definition: DBPixelGeoManager.cxx:2872
Athena::Units
Definition: Units.h:45
DBPixelGeoManager::IBLStaveFlexBaseThickness
virtual double IBLStaveFlexBaseThickness() override
Definition: DBPixelGeoManager.cxx:1841
DBPixelGeoManager::DBMFlexSupportOffset
virtual double DBMFlexSupportOffset() override
Definition: DBPixelGeoManager.cxx:3685
InDetMaterialManager
InDetMaterialManager.
Definition: InDetMaterialManager.h:34
InDetMaterialManager.h
DBPixelGeoManager::isBarrel
virtual bool isBarrel() override
Definition: DBPixelGeoManager.cxx:375
RCU::Check::typeNum
const int typeNum
Definition: Assert.h:75
DBPixelGeoManager::PixelFramePhiStart
virtual double PixelFramePhiStart(int sectionIndex) override
Definition: DBPixelGeoManager.cxx:1372
DBPixelGeoManager::DBMCeramicZ
virtual double DBMCeramicZ() override
Definition: DBPixelGeoManager.cxx:3665
InDetDD::PixelDetectorManager
Definition: PixelDetectorManager.h:47
DBPixelGeoManager::m_allPartsPresent
bool m_allPartsPresent
Definition: DBPixelGeoManager.h:123
PixelLegacyManager::DesignNumRowsPerChip
int DesignNumRowsPerChip(bool isBLayer)
Definition: PixelLegacyManager.cxx:849
DBPixelGeoManager::PixelFluidWidth
virtual double PixelFluidWidth(int index) override
Definition: DBPixelGeoManager.cxx:2878
PixelLegacyManager::PixelPigtailBendX
double PixelPigtailBendX()
Definition: PixelLegacyManager.cxx:754
DBPixelGeoManager::IBLStaveMechanicalStaveModuleOffset
virtual double IBLStaveMechanicalStaveModuleOffset() override
Definition: DBPixelGeoManager.cxx:1786
DBPixelGeoManager::PixelBarrelNLayer
virtual int PixelBarrelNLayer() override
Definition: DBPixelGeoManager.cxx:1308
DBPixelGeoManager::m_scalingTable
IRDBRecordset_ptr m_scalingTable
Definition: DBPixelGeoManager.h:75
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
InDetDD::SiCommonItems
Definition: SiCommonItems.h:45
IGeoDbTagSvc::getParamSvcName
virtual const std::string & getParamSvcName() const =0
DBPixelGeoManager::m_PixelIBLStave
IRDBRecordset_ptr m_PixelIBLStave
Definition: DBPixelGeoManager.h:68
PixelLegacyManager::PixelTMTPosY
double PixelTMTPosY(int iPart)
Definition: PixelLegacyManager.cxx:472
PixelLegacyManager::PixelFluidThick1
double PixelFluidThick1(int index)
Definition: PixelLegacyManager.cxx:653
PixelLegacyManager
Definition: PixelLegacyManager.h:19
DBPixelGeoManager::PixelBarrelMinorVersion
virtual int PixelBarrelMinorVersion() override
Definition: DBPixelGeoManager.cxx:1196
DBPixelGeoManager::ibl
virtual bool ibl() const override
Definition: DBPixelGeoManager.h:230
DBPixelGeoManager::DBMBracketZ
virtual double DBMBracketZ() override
Definition: DBPixelGeoManager.cxx:3547
DBPixelGeoManager::PixelECCablesDistance
virtual double PixelECCablesDistance() override
Definition: DBPixelGeoManager.cxx:2614
DBPixelGeoManager::m_servicesOnLadder
bool m_servicesOnLadder
Definition: DBPixelGeoManager.h:103
DBPixelGeoManager::PixelStaveAxe
virtual int PixelStaveAxe() override
Definition: DBPixelGeoManager.cxx:1500
DBPixelGeoManager::m_PixelOmegaGlue
IRDBRecordset_ptr m_PixelOmegaGlue
Definition: DBPixelGeoManager.h:61
DBPixelGeoManager::PixelConnectorPosX
virtual double PixelConnectorPosX(int index) override
Definition: DBPixelGeoManager.cxx:3049
DBPixelGeoManager::PixelFrameRMaxSide
virtual double PixelFrameRMaxSide(int sectionIndex) override
Definition: DBPixelGeoManager.cxx:1352
DBPixelGeoManager::PixelAlTubeUpperBendRadius
virtual double PixelAlTubeUpperBendRadius() override
Definition: DBPixelGeoManager.cxx:2761
PairIndexMap.h
InDetDD::PairIndexMap::find
int find(int first, int second) const
Definition: PairIndexMap.cxx:14
DBPixelGeoManager::IBLStaveTubeInnerDiameter
virtual double IBLStaveTubeInnerDiameter() override
Definition: DBPixelGeoManager.cxx:1808
DBPixelGeoManager::distortedMatManager
virtual InDetDD::DistortedMaterialManager * distortedMatManager() override
Definition: DBPixelGeoManager.cxx:426
DBPixelGeoManager::PixelPigtailPosX
virtual double PixelPigtailPosX() override
Definition: DBPixelGeoManager.cxx:2968
DBPixelGeoManager::IBLFlexDoglegLength
virtual double IBLFlexDoglegLength() override
Definition: DBPixelGeoManager.cxx:2156
PixelLegacyManager::PixelConnectorPosZ
double PixelConnectorPosZ(int index)
Definition: PixelLegacyManager.cxx:823
DBPixelGeoManager::m_PixelReadout
IRDBRecordset_ptr m_PixelReadout
Definition: DBPixelGeoManager.h:56
DBPixelGeoManager::GetPixelDDManager
virtual InDetDD::PixelDetectorManager * GetPixelDDManager() override
Definition: DBPixelGeoManager.cxx:411
DBPixelGeoManager::PixelTMTPosZ2
virtual double PixelTMTPosZ2(int iPart) override
Definition: DBPixelGeoManager.cxx:2670
DBPixelGeoManager::m_PixelIBLFlexMaterial
IRDBRecordset_ptr m_PixelIBLFlexMaterial
Definition: DBPixelGeoManager.h:71
DBPixelGeoManager::PixelServiceShape
virtual std::string PixelServiceShape(const std::string &a, int _n) override
Definition: DBPixelGeoManager.cxx:869
DBPixelGeoManager::PixelEnvelopeRMax
virtual double PixelEnvelopeRMax(int i) override
Definition: DBPixelGeoManager.cxx:1302
PixelLegacyManager::PixelPigtailBendPhiMax
double PixelPigtailBendPhiMax()
Definition: PixelLegacyManager.cxx:779
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
DBPixelGeoManager::PixelModuleServiceThick
virtual double PixelModuleServiceThick(int svc) override
Definition: DBPixelGeoManager.cxx:622
InDetMaterialManager::addScalingTable
void addScalingTable(const IRDBRecordset_ptr &scalingTable)
Definition: InDetMaterialManager.cxx:431
DBPixelGeoManager::PixelModuleServiceOffsetZ
virtual double PixelModuleServiceOffsetZ(int svc) override
Definition: DBPixelGeoManager.cxx:637
DBPixelGeoManager::PixelPigtailBendY
virtual double PixelPigtailBendY() override
Definition: DBPixelGeoManager.cxx:2986
DBPixelGeoManager.h
DecodeVersionKey.h
PixelStaveTypes::getFluidType
int getFluidType(int layer, int phiModule) const
Definition: PixelStaveTypes.cxx:51
DBPixelGeoManager::setCommonItems
virtual void setCommonItems(InDetDD::SiCommonItems *commonItems) override
Definition: DBPixelGeoManager.cxx:261
ParticleGun_SamplingFraction.radius
radius
Definition: ParticleGun_SamplingFraction.py:96
DBPixelGeoManager::m_versionTag
std::string m_versionTag
Definition: DBPixelGeoManager.h:142
DBPixelGeoManager::PixelECSiDz1
virtual double PixelECSiDz1() override
Definition: DBPixelGeoManager.cxx:2582
DBPixelGeoManager::PixelChipGap
virtual double PixelChipGap(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:568
DBPixelGeoManager::m_distortedMatManager
InDetDD::DistortedMaterialManager * m_distortedMatManager
Definition: DBPixelGeoManager.h:136
PixelLegacyManager::PixelPigtailBendPhiMin
double PixelPigtailBendPhiMin()
Definition: PixelLegacyManager.cxx:774
DBPixelGeoManager::IBLStaveOmegaThickness
virtual double IBLStaveOmegaThickness() override
Definition: DBPixelGeoManager.cxx:1875
DBPixelGeoManager::PixelPigtailBendRMax
virtual double PixelPigtailBendRMax() override
Definition: DBPixelGeoManager.cxx:2998
DBPixelGeoManager::PixelPigtailBendPhiMin
virtual double PixelPigtailBendPhiMin() override
Definition: DBPixelGeoManager.cxx:3004
PlotCalibFromCool.rl
rl
Definition: PlotCalibFromCool.py:529
PixelLegacyManager::DesignPitchZLong
double DesignPitchZLong(bool isBLayer)
Definition: PixelLegacyManager.cxx:938
DBPixelGeoManager::PixelOmegaGlueStartX
virtual double PixelOmegaGlueStartX(int index) override
Definition: DBPixelGeoManager.cxx:2807
DBPixelGeoManager::PixelFrameMirrorSides
virtual bool PixelFrameMirrorSides(int sectionIndex) override
Definition: DBPixelGeoManager.cxx:1382
DBPixelGeoManager::PixelChipThickness
virtual double PixelChipThickness(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:588
PixelLegacyManager::PixelOmegaLowerBendX
double PixelOmegaLowerBendX()
Definition: PixelLegacyManager.cxx:512
PixelLegacyManager::PixelOmegaUpperBendRadius
double PixelOmegaUpperBendRadius()
Definition: PixelLegacyManager.cxx:507
DBPixelGeoManager::DBMAngle
double DBMAngle() override
Definition: DBPixelGeoManager.cxx:3501
DBPixelGeoManager::m_dc1Geometry
bool m_dc1Geometry
Definition: DBPixelGeoManager.h:110
DBPixelGeoManager::PixelHybridWidth
virtual double PixelHybridWidth(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:522
python.SystemOfUnits.mm
int mm
Definition: SystemOfUnits.py:83
DBPixelGeoManager::m_dbVersion
int m_dbVersion
Definition: DBPixelGeoManager.h:167
DBPixelGeoManager::PixelModuleServiceLength
virtual double PixelModuleServiceLength(int svc) override
Definition: DBPixelGeoManager.cxx:612
PixelLegacyManager::PixelPigtailFlatWidthZ
double PixelPigtailFlatWidthZ()
Definition: PixelLegacyManager.cxx:730
PixelLegacyManager::PixelOmegaLowerBendY
double PixelOmegaLowerBendY()
Definition: PixelLegacyManager.cxx:517
get_generator_info.version
version
Definition: get_generator_info.py:33
PixelGeoModelAthenaComps
Class to hold various Athena components.
Definition: PixelGeoModelAthenaComps.h:16
PixelLegacyManager::SetDC1Geometry
void SetDC1Geometry(bool flag)
Definition: PixelLegacyManager.h:70
DBPixelGeoManager::m_PixelIBLFlex
IRDBRecordset_ptr m_PixelIBLFlex
Definition: DBPixelGeoManager.h:70
PixelLegacyManager::PixelCableElements
int PixelCableElements()
Definition: PixelLegacyManager.cxx:345
DBPixelGeoManager::m_PixelOmega
IRDBRecordset_ptr m_PixelOmega
Definition: DBPixelGeoManager.h:60
DBPixelGeoManager::PixelOmegaLowerBendY
virtual double PixelOmegaLowerBendY() override
Definition: DBPixelGeoManager.cxx:2709
PixelLegacyManager::PixelLadderCableOffsetX
double PixelLadderCableOffsetX()
Definition: PixelLegacyManager.cxx:320
DBPixelGeoManager::DBMBrcktFinThick
virtual double DBMBrcktFinThick() override
Definition: DBPixelGeoManager.cxx:3595
DBPixelGeoManager::PixelEnvelopeZ
virtual double PixelEnvelopeZ(int i) override
Definition: DBPixelGeoManager.cxx:1290
DBPixelGeoManager::PixelLadderModuleDeltaZ
virtual double PixelLadderModuleDeltaZ() override
Definition: DBPixelGeoManager.cxx:1625
DeMoScan.index
string index
Definition: DeMoScan.py:364
DBPixelGeoManager::PixelDiskSupportRMin
virtual double PixelDiskSupportRMin(int isup) override
Definition: DBPixelGeoManager.cxx:3422
PixelLegacyManager::PixelConnectorWidthY
double PixelConnectorWidthY(int index)
Definition: PixelLegacyManager.cxx:803
DBPixelGeoManager::DBMSpace
virtual double DBMSpace() override
Definition: DBPixelGeoManager.cxx:3603
DBPixelGeoManager::PixelServiceEnvelopeNum
virtual int PixelServiceEnvelopeNum(const std::string &type, int index) override
Definition: DBPixelGeoManager.cxx:958
DBPixelGeoManager::IBLFlexMaterial
virtual std::string IBLFlexMaterial(int iPos, const std::string &flexType) override
Definition: DBPixelGeoManager.cxx:2270
DBPixelGeoManager::m_pDDmgr
InDetDD::PixelDetectorManager * m_pDDmgr
Definition: DBPixelGeoManager.h:129
DBPixelGeoManager::PixelFluidY
virtual double PixelFluidY(int index) override
Definition: DBPixelGeoManager.cxx:2891
PixelLegacyManager::PixelPigtailThickness
double PixelPigtailThickness()
Definition: PixelLegacyManager.cxx:715
a
TList * a
Definition: liststreamerinfos.cxx:10
DBPixelGeoManager::PixelAlTubeUpperBendX
virtual double PixelAlTubeUpperBendX() override
Definition: DBPixelGeoManager.cxx:2749
DBPixelGeoManager::DC1Geometry
virtual bool DC1Geometry() const override
Definition: DBPixelGeoManager.cxx:402
PixelLegacyManager::PixelFluidWidth
double PixelFluidWidth(int index)
Definition: PixelLegacyManager.cxx:672
IRDBRecord.h
Definition of the abstract IRDBRecord interface.
PixelLegacyManager::PixelNumOmegaGlueElements
int PixelNumOmegaGlueElements()
Definition: PixelLegacyManager.cxx:595
PixelLegacyManager::PixelConnectorWidthZ
double PixelConnectorWidthZ(int index)
Definition: PixelLegacyManager.cxx:808
CondAlgsOpts.found
int found
Definition: CondAlgsOpts.py:101
DBPixelGeoManager::PixelDiskSupportMaterialTypeNum
virtual int PixelDiskSupportMaterialTypeNum(int isup) override
Definition: DBPixelGeoManager.cxx:3469
DBPixelGeoManager::m_PixelAlTube
IRDBRecordset_ptr m_PixelAlTube
Definition: DBPixelGeoManager.h:62
DBPixelGeoManager::DBMFlexSupportY
virtual double DBMFlexSupportY() override
Definition: DBPixelGeoManager.cxx:3679
DBPixelGeoManager::DBMFEI4Z
virtual double DBMFEI4Z() override
Definition: DBPixelGeoManager.cxx:3656
DBPixelGeoManager::DBMBrcktLockZ
virtual double DBMBrcktLockZ() override
Definition: DBPixelGeoManager.cxx:3583
DBPixelGeoManager::DBMCoolingSidePlateZ
virtual double DBMCoolingSidePlateZ() override
Definition: DBPixelGeoManager.cxx:3633
DBPixelGeoManager::IBLStaveFacePlateGreaseThickness
virtual double IBLStaveFacePlateGreaseThickness() override
Definition: DBPixelGeoManager.cxx:1998
DBPixelGeoManager::Alignable
virtual bool Alignable() const override
Definition: DBPixelGeoManager.cxx:406
DBPixelGeoManager::DBMDiamondZ
virtual double DBMDiamondZ() override
Definition: DBPixelGeoManager.cxx:3647
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
PixelLegacyManager::PixelPigtailEnvelopeLength
double PixelPigtailEnvelopeLength()
Definition: PixelLegacyManager.cxx:784
PixelLegacyManager::DesignNumColsPerChip
int DesignNumColsPerChip(bool isBLayer)
Definition: PixelLegacyManager.cxx:857
DBPixelGeoManager::PixelOmegaGlueEndY
virtual double PixelOmegaGlueEndY(int index) override
Definition: DBPixelGeoManager.cxx:2825
PixelLegacyManager::PixelTMTBaseX1
double PixelTMTBaseX1(int iPart)
Definition: PixelLegacyManager.cxx:452
DBPixelGeoManager::IBLFlexAndWingDefined
virtual bool IBLFlexAndWingDefined() override
Definition: DBPixelGeoManager.cxx:2148
DEBUG
#define DEBUG
Definition: page_access.h:11
DBPixelGeoManager::DesignRPActiveArea
virtual double DesignRPActiveArea(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3302
InDetDD::PairIndexMap
Class to store map between pair of two ints and an int.
Definition: PairIndexMap.h:16
DBPixelGeoManager::PixelNModule
virtual int PixelNModule() override
Definition: DBPixelGeoManager.cxx:2415
PixelLegacyManager::PixelFluidOrient
int PixelFluidOrient(int layer, int phi)
Definition: PixelLegacyManager.cxx:702
PixelLegacyManager::PixelOmegaGlueEndY
double PixelOmegaGlueEndY(int index)
Definition: PixelLegacyManager.cxx:615
PixelLegacyManager::PixelCableWidth
double PixelCableWidth(int index)
Definition: PixelLegacyManager.cxx:367
IGeometryDBSvc::getInt
virtual int getInt(IRDBRecordset_ptr recordSet, const std::string &name, int index=0) const =0
PixelLegacyManager::PixelOmegaGlueTypeNum
int PixelOmegaGlueTypeNum(int index)
Definition: PixelLegacyManager.cxx:630
DBPixelGeoManager::PixelServiceRMax2
virtual double PixelServiceRMax2(const std::string &, int) override
Definition: DBPixelGeoManager.cxx:817
DBPixelGeoManager::PixelEnvelopeNumPlanes
virtual unsigned int PixelEnvelopeNumPlanes() override
Definition: DBPixelGeoManager.cxx:1285
DBPixelGeoManager::PixelFluidNumTypes
virtual int PixelFluidNumTypes() override
Definition: DBPixelGeoManager.cxx:2903
DBPixelGeoManager::m_pMatMgr
InDetMaterialManager * m_pMatMgr
Definition: DBPixelGeoManager.h:132
DBPixelGeoManager::IBLStaveModuleGap
virtual double IBLStaveModuleGap() override
Definition: DBPixelGeoManager.cxx:1976
DBPixelGeoManager::DBMAirGap
virtual double DBMAirGap() override
Definition: DBPixelGeoManager.cxx:3668
DBPixelGeoManager::PixelFluidOrient
virtual int PixelFluidOrient(int layer, int phi) override
Definition: DBPixelGeoManager.cxx:2928
DBPixelGeoManager::m_initialLayout
bool m_initialLayout
Definition: DBPixelGeoManager.h:107
DBPixelGeoManager::IBLStaveOmegaEndCenterX
virtual double IBLStaveOmegaEndCenterX() override
Definition: DBPixelGeoManager.cxx:1886
PixelLegacyManager::DesignDiodesEtaTotal
int DesignDiodesEtaTotal(bool isBLayer)
Definition: PixelLegacyManager.cxx:873
Gaudi
=============================================================================
Definition: CaloGPUClusterAndCellDataMonitorOptions.h:273
DBPixelGeoManager::IBLStaveOmegaMidAngle
virtual double IBLStaveOmegaMidAngle() override
Definition: DBPixelGeoManager.cxx:1948
DBPixelGeoManager::PixelBarrelHalfLength
virtual double PixelBarrelHalfLength() override
Definition: DBPixelGeoManager.cxx:1324
DBPixelGeoManager::DBMFEI4Y
virtual double DBMFEI4Y() override
Definition: DBPixelGeoManager.cxx:3653
DBPixelGeoManager::DBMMPlateWindowHeight
virtual double DBMMPlateWindowHeight() override
Definition: DBPixelGeoManager.cxx:3620
DBPixelGeoManager::PixelEndcapMajorVersion
virtual int PixelEndcapMajorVersion() override
Definition: DBPixelGeoManager.cxx:1201
DBPixelGeoManager::PixelCableThickness
virtual double PixelCableThickness(int index) override
Definition: DBPixelGeoManager.cxx:1101
DBPixelGeoManager::m_PixelEndcapGeneral
IRDBRecordset_ptr m_PixelEndcapGeneral
Definition: DBPixelGeoManager.h:47
DBPixelGeoManager::PixelTMTBaseX2
virtual double PixelTMTBaseX2(int iPart) override
Definition: DBPixelGeoManager.cxx:2652
PixelLegacyManager::PixelPigtailWidthZ
double PixelPigtailWidthZ()
Definition: PixelLegacyManager.cxx:738
DBPixelGeoManager::DBMBracketX
virtual double DBMBracketX() override
Definition: DBPixelGeoManager.cxx:3541
DBPixelGeoManager::DesignCircuitsPhi
virtual int DesignCircuitsPhi(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3390
DBPixelGeoManager::PixelFluidZ2
virtual double PixelFluidZ2(int index) override
Definition: DBPixelGeoManager.cxx:2859
DBPixelGeoManager::m_DBMCage
IRDBRecordset_ptr m_DBMCage
Definition: DBPixelGeoManager.h:83
DBPixelGeoManager::m_PixelModuleSvc
IRDBRecordset_ptr m_PixelModuleSvc
Definition: DBPixelGeoManager.h:52
DBPixelGeoManager::DesignPitchZLongEnd
virtual double DesignPitchZLongEnd(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3355
PixelLegacyManager::PixelFluidType
int PixelFluidType(int index)
Definition: PixelLegacyManager.cxx:688
IGeometryDBSvc::getString
virtual std::string getString(IRDBRecordset_ptr recordSet, const std::string &name, int index=0) const =0
DBPixelGeoManager::PixelBarrelMajorVersion
virtual int PixelBarrelMajorVersion() override
Definition: DBPixelGeoManager.cxx:1191
DBPixelGeoManager::PixelModuleServiceOffsetX
virtual double PixelModuleServiceOffsetX(int svc) override
Definition: DBPixelGeoManager.cxx:627
PixelLegacyManager::PixelAlTubeUpperBendRadius
double PixelAlTubeUpperBendRadius()
Definition: PixelLegacyManager.cxx:561
DBPixelGeoManager::PixelEnvelopeRMin
virtual double PixelEnvelopeRMin(int i) override
Definition: DBPixelGeoManager.cxx:1297
PixelLegacyManager::DesignNumChipsPhi
int DesignNumChipsPhi()
Definition: PixelLegacyManager.cxx:839
PixelLegacyManager::DesignRPActiveArea
double DesignRPActiveArea()
Definition: PixelLegacyManager.cxx:907
DBPixelGeoManager::m_materialTable
IRDBRecordset_ptr m_materialTable
Definition: DBPixelGeoManager.h:76
DBPixelGeoManager::DBMCoolingSidePlateY
virtual double DBMCoolingSidePlateY() override
Definition: DBPixelGeoManager.cxx:3630
DBPixelGeoManager::PixelRMin
virtual double PixelRMin() override
Definition: DBPixelGeoManager.cxx:1240
PixelLegacyManager::PixelAlTubeLength
double PixelAlTubeLength()
Definition: PixelLegacyManager.cxx:586
DBPixelGeoManager::PixelOmegaGlueStartY
virtual double PixelOmegaGlueStartY(int index) override
Definition: DBPixelGeoManager.cxx:2819
PixelLegacyManager::oldFrame
bool oldFrame()
Definition: PixelLegacyManager.cxx:62
DBPixelGeoManager::PixelHalfLength
virtual double PixelHalfLength() override
Definition: DBPixelGeoManager.cxx:1266
DBPixelGeoManager::m_PixelSimpleService
IRDBRecordset_ptr m_PixelSimpleService
Definition: DBPixelGeoManager.h:41
DBPixelGeoManager::PixelECCarbonRMax
virtual double PixelECCarbonRMax(std::string) override
Definition: DBPixelGeoManager.cxx:683
TopLevelPlacements.h
DBPixelGeoManager::PixelTMTBaseX1
virtual double PixelTMTBaseX1(int iPart) override
Definition: DBPixelGeoManager.cxx:2646
IRDBRecordset.h
Definition of the abstract IRDBRecordset interface.
DBPixelGeoManager::DBMBracketY
virtual double DBMBracketY() override
Definition: DBPixelGeoManager.cxx:3544
DBPixelGeoManager::m_alignable
bool m_alignable
Definition: DBPixelGeoManager.h:113
DBPixelGeoManager::PixelPigtailBendRMin
virtual double PixelPigtailBendRMin() override
Definition: DBPixelGeoManager.cxx:2992
InDetDD::AthenaComps::detStore
const StoreGateSvc * detStore() const
Definition: InDetDDAthenaComps.h:53
PixelLegacyManager::PixelPigtailBendRMax
double PixelPigtailBendRMax()
Definition: PixelLegacyManager.cxx:769
PixelLegacyManager::PixelTMTPosZ2
double PixelTMTPosZ2(int iPart)
Definition: PixelLegacyManager.cxx:482
section
void section(const std::string &sec)
Definition: TestTriggerMenuAccess.cxx:22
DBPixelGeoManager::DBMTrapezBackShortZ
virtual double DBMTrapezBackShortZ() override
Definition: DBPixelGeoManager.cxx:3559
DBPixelGeoManager::DBMMainPlateY
virtual double DBMMainPlateY() override
Definition: DBPixelGeoManager.cxx:3611
DBPixelGeoManager::PhiOfModuleZero
virtual double PhiOfModuleZero() override
Definition: DBPixelGeoManager.cxx:2403
DBPixelGeoManager::getPixelServiceRecordset
virtual IRDBRecordset_ptr getPixelServiceRecordset(const std::string &type) override
Definition: DBPixelGeoManager.cxx:1026
PixelStaveTypes
Definition: PixelStaveTypes.h:14
DBPixelGeoManager::PixelBoardWidth
virtual double PixelBoardWidth(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:483
InDetMaterialManager::getMaterial
const GeoMaterial * getMaterial(const std::string &materialName)
Get material. First looks for locally defined material and if not found looks in GeoModel material ma...
Definition: InDetMaterialManager.cxx:96
DBPixelGeoManager::IBLSupportRingWidth
virtual double IBLSupportRingWidth() override
Definition: DBPixelGeoManager.cxx:2059
DBPixelGeoManager::DesignNumEmptyRowsInGap
virtual int DesignNumEmptyRowsInGap(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3207
DBPixelGeoManager::m_PixelBarrelGeneral
IRDBRecordset_ptr m_PixelBarrelGeneral
Definition: DBPixelGeoManager.h:39
InDetDD::AthenaComps::rdbAccessSvc
IRDBAccessSvc * rdbAccessSvc()
Definition: InDetDDAthenaComps.h:74
PixelLegacyManager::PixelOmegaGlueLength
double PixelOmegaGlueLength(int index)
Definition: PixelLegacyManager.cxx:620
PixelLegacyManager::PixelOmegaUpperBendY
double PixelOmegaUpperBendY()
Definition: PixelLegacyManager.cxx:502
PixelLegacyManager::PixelCableZEnd
double PixelCableZEnd(int index)
Definition: PixelLegacyManager.cxx:359
PixelID
Definition: PixelID.h:67
DBPixelGeoManager::SetPartsDBM
virtual void SetPartsDBM() override
Definition: DBPixelGeoManager.cxx:342
DBPixelGeoManager::PixelOmegaGlueThickness
virtual double PixelOmegaGlueThickness(int index) override
Definition: DBPixelGeoManager.cxx:2813
DBPixelGeoManager::m_endcapInFrames
int m_endcapInFrames
Definition: DBPixelGeoManager.h:100
DBPixelGeoManager::m_BarrelEndcap
int m_BarrelEndcap
Definition: DBPixelGeoManager.h:95
DBPixelGeoManager::DBMMainPlateX
virtual double DBMMainPlateX() override
Definition: DBPixelGeoManager.cxx:3608
DBPixelGeoManager::CalculateThickness
double CalculateThickness(double, const std::string &)
Definition: DBPixelGeoManager.cxx:437
DBPixelGeoManager::versionLayout
virtual std::string versionLayout() const override
Definition: DBPixelGeoManager.cxx:1230
StoreGateSvc.h
DBPixelGeoManager::DesignCellRowsPerCircuit
virtual int DesignCellRowsPerCircuit(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3187
DBPixelGeoManager::PixelNumConnectorElements
virtual int PixelNumConnectorElements() override
Definition: DBPixelGeoManager.cxx:3025
DBPixelGeoManager::DesignPitchRP
virtual double DesignPitchRP(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3322
PixelLegacyManager::DesignPitchZ
double DesignPitchZ(bool isBLayer)
Definition: PixelLegacyManager.cxx:925
DBPixelGeoManager::PixelModuleServiceMaterial
virtual std::string PixelModuleServiceMaterial(int svc) override
Definition: DBPixelGeoManager.cxx:657
DBPixelGeoManager::PixelModuleStaggerDistance
virtual double PixelModuleStaggerDistance() override
Definition: DBPixelGeoManager.cxx:2480
DBPixelGeoManager::IBLStaveFlexWidth
virtual double IBLStaveFlexWidth() override
Definition: DBPixelGeoManager.cxx:1852
DBPixelGeoManager::PixelStaveIndex
virtual int PixelStaveIndex(int layer) override
Definition: DBPixelGeoManager.cxx:1483
PixelLegacyManager::PixelAlTubeUpperBendY
double PixelAlTubeUpperBendY()
Definition: PixelLegacyManager.cxx:556
DBPixelGeoManager::DBMDiamondY
virtual double DBMDiamondY() override
Definition: DBPixelGeoManager.cxx:3644
DBPixelGeoManager::IBLStaveOmegaMidCenterX
virtual double IBLStaveOmegaMidCenterX() override
Definition: DBPixelGeoManager.cxx:1927
DBPixelGeoManager::PixelPigtailBendX
virtual double PixelPigtailBendX() override
Definition: DBPixelGeoManager.cxx:2980
DBPixelGeoManager::PixelServiceRepeat
virtual int PixelServiceRepeat(const std::string &a, int _n) override
Definition: DBPixelGeoManager.cxx:861
python.SystemOfUnits.degree
tuple degree
Definition: SystemOfUnits.py:106
DBPixelGeoManager::DBMMPlateRod2RodY
virtual double DBMMPlateRod2RodY() override
Definition: DBPixelGeoManager.cxx:3694
InDetDD::PairIndexMap::add
void add(int first, int second, int value)
Definition: PairIndexMap.cxx:9
PixelLegacyManager::PixelPigtailStartY
double PixelPigtailStartY()
Definition: PixelLegacyManager.cxx:720
IGeoDbTagSvc.h
DBPixelGeoManager::m_PixelFluid
IRDBRecordset_ptr m_PixelFluid
Definition: DBPixelGeoManager.h:63
DistortedMaterialManager.h
DBPixelGeoManager::PixelECCablesRMin
virtual double PixelECCablesRMin() override
Definition: DBPixelGeoManager.cxx:2603
DBPixelGeoManager::IBLFlexDoglegHeight
virtual double IBLFlexDoglegHeight(int iHeight) override
Definition: DBPixelGeoManager.cxx:2201
DBPixelGeoManager::PixelServiceRMax
virtual double PixelServiceRMax(const std::string &, int) override
Definition: DBPixelGeoManager.cxx:795
DBPixelGeoManager::IBLStaveFlexOffset
virtual double IBLStaveFlexOffset() override
Definition: DBPixelGeoManager.cxx:1863
DBPixelGeoManager::GetLD
virtual int GetLD() override
Definition: DBPixelGeoManager.h:260
DBPixelGeoManager::getMaterialName
virtual std::string getMaterialName(const std::string &volumeName, int layerdisk=0, int typenum=0) override
Definition: DBPixelGeoManager.cxx:1147
DBPixelGeoManager::m_DBMModule
IRDBRecordset_ptr m_DBMModule
Definition: DBPixelGeoManager.h:87
DBPixelGeoManager::PixelTMTPosZ1
virtual double PixelTMTPosZ1(int iPart) override
Definition: DBPixelGeoManager.cxx:2664
DBPixelGeoManager::PixelFluidX
virtual double PixelFluidX(int index) override
Definition: DBPixelGeoManager.cxx:2885
DBPixelGeoManager::m_PixelDiskRing
IRDBRecordset_ptr m_PixelDiskRing
Definition: DBPixelGeoManager.h:45
DBPixelGeoManager::PixelLadderServicesY
virtual double PixelLadderServicesY() override
Definition: DBPixelGeoManager.cxx:1570
PixelLegacyManager::DesignNumEmptyRowsInGap
int DesignNumEmptyRowsInGap()
Definition: PixelLegacyManager.cxx:881
DBPixelGeoManager::IBLStaveOmegaMidRadius
virtual double IBLStaveOmegaMidRadius() override
Definition: DBPixelGeoManager.cxx:1938
description
std::string description
glabal timer - how long have I taken so far?
Definition: hcg.cxx:88
DBPixelGeoManager::DesignPitchZLong
virtual double DesignPitchZLong(bool isModule3D=false) override
Definition: DBPixelGeoManager.cxx:3342
DBPixelGeoManager::m_DBMTelescope
IRDBRecordset_ptr m_DBMTelescope
Definition: DBPixelGeoManager.h:80
DBPixelGeoManager::m_commonItems
InDetDD::SiCommonItems * m_commonItems
Definition: DBPixelGeoManager.h:126
DBPixelGeoManager::m_placements
TopLevelPlacements * m_placements
Definition: DBPixelGeoManager.h:145
DBPixelGeoManager::PixelLadderCableOffsetX
virtual double PixelLadderCableOffsetX() override
Definition: DBPixelGeoManager.cxx:1577
DBPixelGeoManager::getMaterialManager
virtual InDetMaterialManager * getMaterialManager() override
Definition: DBPixelGeoManager.cxx:220
DBPixelGeoManager::GangedType
int GangedType()
Definition: DBPixelGeoManager.cxx:3220
DBPixelGeoManager::PixelCableZEnd
virtual double PixelCableZEnd(int index) override
Definition: DBPixelGeoManager.cxx:1087
DBPixelGeoManager::DBMMPlateRod2RodX
virtual double DBMMPlateRod2RodX() override
Definition: DBPixelGeoManager.cxx:3697