ATLAS Offline Software
TRT_DetDescrDB_ParameterInterface.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 #include "GeoModelKernel/Units.h"
15 
16 //_________________________________________________________________________________________
19  , m_athenaComps(athenaComps)
20 {
21  SetValues();
22 }
23 
24 //_________________________________________________________________________________________
26 
34 
35  for (unsigned int iRing = 0; iRing < nBarrelRings; iRing++) {
36  delete[] barrelNumberOfStrawsInStrawLayer[iRing];
37  delete[] barrelXOfCoolingTube[iRing];
38  delete[] barrelYOfCoolingTube[iRing];
39  delete[] shellCornerXPosition[iRing];
40  delete[] shellCornerYPosition[iRing];
41 
42  // The values get copied to ArrayFunction objects so there are safe to delete.
43  delete[] strawXPosition[iRing];
44  delete[] strawYPosition[iRing];
45  };
46 
47  delete[] endCapLayerZPositionA;
48  delete[] endCapLayerZPositionB;
49  delete[] endCapLayerZPositionC;
50 
51 
52  delete m_distortedMatManager;
53  delete m_placements;
54 }
55 
56 //_________________________________________________________________________________________
58 
60  // Initialize Services //
62 
63  msg(MSG::DEBUG) << "Starting TRT_DetDescrDB_ParameterInterface" <<endmsg;
64 
65  // RDBAccessSvc (Interface to the DD database).
66  IRDBAccessSvc* iAccessSvc = m_athenaComps->rdbAccessSvc();
67 
68  // Get tag key and corresponding node
69  DecodeVersionKey versionKey(m_athenaComps->geoDbTagSvc(),"TRT");
70  const std::string& detectorKey = versionKey.tag();
71  const std::string& detectorNode = versionKey.node();
72 
73  // Get version tag and node for InnerDetector.
74  DecodeVersionKey indetVersionKey(m_athenaComps->geoDbTagSvc(),"InnerDetector");
75 
76 
78  // Version Information //
80  if(m_athenaComps->geoDbTagSvc()->getParamSvcName().starts_with("RDB"))
81  versionTag = iAccessSvc->getChildTag("TRT", versionKey.tag(), versionKey.node());
82 
84  // Special Flags //
86 
87  IRDBRecordset_ptr switchSet = iAccessSvc->getRecordsetPtr("TRTSwitches", detectorKey, detectorNode);
88  const IRDBRecord *switches = (*switchSet)[0];
89 
90  oldConfiguration = true;
91  if (!switches->isFieldNull("VERSIONNAME")) {
92  oldConfiguration = false;
93  versionName = switches->getString("VERSIONNAME");
94  layout = switches->getString("LAYOUT");
95  versionDescription = switches->getString("DESCRIPTION");
96  }
97 
98  // Flags isCosmicRun and initialLayout don't have any effect if TRTTopLevel table is present.
99  // The latter controls which parts are present.
100  isCosmicRun = false;
101  if (!switches->isFieldNull("COSMICLAYOUT")) {
102  isCosmicRun = switches->getInt("COSMICLAYOUT");
103  }
104  //NB: DONT DO: bool useoldactivegasmixture ( switches->getInt("GASVERSION") == 0 );
105  //Since user might have overriden it from joboptions!!
106 
107  initialLayout = switches->getInt("INITIALLAYOUT");
108 
109  IRDBRecordset_ptr RDB_DigVersion = iAccessSvc->getRecordsetPtr("TRTDigVersion", detectorKey, detectorNode);
110  const IRDBRecord *RDBVars_DigVersion = (*RDB_DigVersion)[0];
111  digversion = RDBVars_DigVersion->getInt("DIGVERSION");
112  digversionname = RDBVars_DigVersion->getString("DIGVERSIONNAME");
113 
115  // Top Level Placements //
117  if (!oldConfiguration) {
118  IRDBRecordset_ptr topLevelTable = iAccessSvc->getRecordsetPtr("TRTTopLevel", detectorKey, detectorNode);
119  m_placements = new TopLevelPlacements(topLevelTable);
120  }
121  else
123 
125  // Extra Scaled Material //
127 
128  // NB. This is at Inner Detector node level
129  m_scalingTable = iAccessSvc->getRecordsetPtr("TrtMatScaling", indetVersionKey.tag(), indetVersionKey.node());
130 
131 
133  // ExtraMaterial //
136 
137 
139  // Variables common between Barrel and End Cap //
141 
142  IRDBRecordset_ptr RDB_CommonPars = iAccessSvc->getRecordsetPtr("TRTCommonPars",detectorKey,detectorNode);
143  const IRDBRecord* RDBVars_CommonPars = (*RDB_CommonPars)[0];
144 
145  lengthOfDeadRegion = RDBVars_CommonPars->getFloat("LENGTHOFDEADREGION")*GeoModelKernelUnits::mm;
146  outerRadiusOfWire = RDBVars_CommonPars->getFloat("OUTERRADIUSOFWIRE")*GeoModelKernelUnits::mm;
147  innerRadiusOfStraw = RDBVars_CommonPars->getFloat("INNERRADIUSOFSTRAW")*GeoModelKernelUnits::mm;
148  outerRadiusOfStraw = RDBVars_CommonPars->getFloat("OUTERRADIUSOFSTRAW")*GeoModelKernelUnits::mm;
149 
151  // Variables related to the Barrel part //
153 
154  IRDBRecordset_ptr RDB_BarrelOverallPars = iAccessSvc->getRecordsetPtr("TRTBarrelOverallPars",detectorKey,detectorNode);
155  const IRDBRecord* RDBVars_BarrelOverallPars = (*RDB_BarrelOverallPars)[0];
156  IRDBRecordset_ptr RDB_BarrelStrawCoord = iAccessSvc->getRecordsetPtr("TRTBarrelStrawCoord",detectorKey,detectorNode);
157  IRDBRecordset_ptr RDB_BarrelRingDepPars = iAccessSvc->getRecordsetPtr("TRTBarrelRingDepPars",detectorKey,detectorNode);
158  IRDBRecordset_ptr RDB_BarrelNStrawInLay = iAccessSvc->getRecordsetPtr("TRTBarrelNStrawInLay",detectorKey,detectorNode);
159  IRDBRecordset_ptr RDB_BarrelServices = iAccessSvc->getRecordsetPtr("TRTBarrelServices",detectorKey,detectorNode);
160 
161  includeBarServiceAndFlange = (RDB_BarrelServices->size()!=0);
162 
164 
165  const IRDBRecord* RDBVars_BarrelServices = (*RDB_BarrelServices)[0];
166  barFlangeZMin = RDBVars_BarrelServices->getDouble("BARFLANGEZMIN")*GeoModelKernelUnits::mm;
167  barFlangeZMax = RDBVars_BarrelServices->getDouble("BARFLANGEZMAX")*GeoModelKernelUnits::mm;
168  barFlangeRMin = RDBVars_BarrelServices->getDouble("BARFLANGERMIN")*GeoModelKernelUnits::mm;
169  barFlangeRMax = RDBVars_BarrelServices->getDouble("BARFLANGERMAX")*GeoModelKernelUnits::mm;
170 
171  barServicesZMin = RDBVars_BarrelServices->getDouble("BARSERVICESZMIN")*GeoModelKernelUnits::mm;
172  barServicesZMax = RDBVars_BarrelServices->getDouble("BARSERVICESZMAX")*GeoModelKernelUnits::mm;
173  barServicesRMin = RDBVars_BarrelServices->getDouble("BARSERVICESRMIN")*GeoModelKernelUnits::mm;
174  barServicesRMax = RDBVars_BarrelServices->getDouble("BARSERVICESRMAX")*GeoModelKernelUnits::mm;
175 
176  } else if (!includeBarServiceAndFlange) {
177 
178  barFlangeZMin = -1.;
179  barFlangeZMax = -1.;
180  barFlangeRMin = -1.;
181  barFlangeRMax = -1.;
182 
183  barServicesZMin = -1.;
184  barServicesZMax = -1.;
185  barServicesRMin = -1.;
186  barServicesRMax = -1.;
187  }
188 
189  if (!RDBVars_BarrelOverallPars->isFieldNull("BRLVIRTVOLZCLEARANCE")) {
190  barrelVirtualVolumeZClearance = RDBVars_BarrelOverallPars->getFloat("BRLVIRTVOLZCLEARANCE")*GeoModelKernelUnits::mm;
191  barrelVirtualVolumeRMinClearance = RDBVars_BarrelOverallPars->getFloat("BRLVIRTVOLRMINCLEAR")*GeoModelKernelUnits::mm;
192  barrelVirtualVolumeRMaxClearance = RDBVars_BarrelOverallPars->getFloat("BRLVIRTVOLRMAXCLEAR")*GeoModelKernelUnits::mm;
193  } else {
194  barrelVirtualVolumeZClearance = 0.001*GeoModelKernelUnits::micrometer;//fixme: use epsilon(?).
197  }
198 
199  innerRadiusOfBarrelVolume = RDBVars_BarrelOverallPars->getFloat("INNRADIUSOFBARRELVOL")*GeoModelKernelUnits::mm;
200  outerRadiusOfBarrelVolume = RDBVars_BarrelOverallPars->getFloat("OUTRADIUSOFBARRELVOL")*GeoModelKernelUnits::mm;
201  lengthOfBarrelVolume = RDBVars_BarrelOverallPars->getFloat("LENGTHOFBARRELVOLUME")*GeoModelKernelUnits::mm;
202  barrelOuterRadiusOfCoolingTube = RDBVars_BarrelOverallPars->getFloat("OUTRADIUSOFCOOLTUBE")*GeoModelKernelUnits::mm;
203  barrelInnerRadiusOfCoolingTube = RDBVars_BarrelOverallPars->getFloat("INNRADIUSOFCOOLTUBE")*GeoModelKernelUnits::mm;
204  barrelThicknessOfModuleWalls = RDBVars_BarrelOverallPars->getFloat("THICKOFMODULEWALLS")*GeoModelKernelUnits::mm;
205  barrelNumberOfLayersWithLargeDeadRegion = RDBVars_BarrelOverallPars->getInt("NLAYWTHLRGDEADREGION");
206  thicknessOfBarrelInnerSupport = RDBVars_BarrelOverallPars->getFloat("THICKOFBRLINNSUPPORT")*GeoModelKernelUnits::mm;
207  thicknessOfBarrelOuterSupport = RDBVars_BarrelOverallPars->getFloat("THICKOFBRLOUTSUPPORT")*GeoModelKernelUnits::mm;
208  barrelOuterRadiusOfStrawHole = RDBVars_BarrelOverallPars->getFloat("OUTRADIUSOFSTRAWHOLE")*GeoModelKernelUnits::mm;
209 
214 
219 
220  nBarrelModules = RDBVars_BarrelOverallPars->getInt("NBARRELMODULES");
221  nBarrelModulesUsed = nBarrelModules; //Hardwired to be all modules. Silly variable anyway.
222  nBarrelPhi = RDBVars_BarrelOverallPars->getInt("NBARRELPHI");
223 
224  barrelLengthOfStraw = RDBVars_BarrelOverallPars->getFloat("LENGTHOFSTRAW")*GeoModelKernelUnits::mm;
225  barrelLengthOfTwister = RDBVars_BarrelOverallPars->getFloat("LENGTHOFTWISTER")*GeoModelKernelUnits::mm;
226  barrelLengthOfLargeDeadRegion = RDBVars_BarrelOverallPars->getFloat("LENLARGEDEADREGION")*GeoModelKernelUnits::mm;
227 
229  for (unsigned int i=0; i<nBarrelRings; i++) {
230  const IRDBRecord* ringVars = (*RDB_BarrelRingDepPars)[i];
231  barrelNumberOfStrawLayersInModule[i] = ringVars->getInt("NSTRAWLAYERSINMODULE");
232  };
233 
234 
235  for (unsigned int i = 0; i < nBarrelRings; i++)
237 
238  unsigned int cumulLayer = 0;
239  for (unsigned int i=0; i<nBarrelRings; i++)
240  for (unsigned int j=0; j<barrelNumberOfStrawLayersInModule[i]; j++) {
241  const IRDBRecord* layerVars = (*RDB_BarrelNStrawInLay)[cumulLayer++];
242  barrelNumberOfStrawsInStrawLayer[i][j] = layerVars->getInt("NSTRAWSINSTRAWLAYER");
243  }
244 
249  barrelNumberOfStrawsInModule = new unsigned int[nBarrelRings];
251 
252  nCoolingTubes = RDBVars_BarrelOverallPars->getInt("NCOOLINGTUBES");
253  if ( nCoolingTubes != 2 ) {
254  msg(MSG::WARNING) << "DD Database indicates nCoolingTubes != 2, but the code" << " can't cope with that. Putting nCoolingTubes=2" << endmsg;
255  nCoolingTubes = 2;
256  };
257 
258  nShellCorners = RDBVars_BarrelOverallPars->getInt("NSHELLCORNERS");
259  if ( nShellCorners != 4 ) {
260  msg(MSG::WARNING) << "DD Database indicates nShellCorners != 4, but the code" << " can't cope with that. Putting nShellCorners=4" << endmsg;
261  nShellCorners = 4;
262  };
263 
264  for (unsigned int iRing = 0; iRing < nBarrelRings; iRing++) {
265  const IRDBRecord* row = (*RDB_BarrelRingDepPars)[iRing];
266  barrelXOfFirstGlobalAlignmentStraw[iRing] = row->getFloat("XOFGLOBALALIGNSTRW1")*GeoModelKernelUnits::mm;
267  barrelYOfFirstGlobalAlignmentStraw[iRing] = row->getFloat("YOFGLOBALALIGNSTRW1")*GeoModelKernelUnits::mm;
268  barrelXOfSecondGlobalAlignmentStraw[iRing] = row->getFloat("XOFGLOBALALIGNSTRW2")*GeoModelKernelUnits::mm;
269  barrelYOfSecondGlobalAlignmentStraw[iRing] = row->getFloat("YOFGLOBALALIGNSTRW2")*GeoModelKernelUnits::mm;
270  barrelIndexOfSecondGlobalAlignmentStraw[iRing] = row->getInt("INDEX2NDGLBALGNSTRW");
271  barrelNumberOfStrawsInModule[iRing] = row->getInt("NSTRAWSINMODULE");
272 
273  barrelXOfCoolingTube[iRing] = new double[nCoolingTubes];
274  barrelXOfCoolingTube[iRing][0] = row->getFloat("XOFCOOLINGTUBE1")*GeoModelKernelUnits::mm;
275  barrelXOfCoolingTube[iRing][1] = row->getFloat("XOFCOOLINGTUBE2")*GeoModelKernelUnits::mm;
276 
277  barrelYOfCoolingTube[iRing] = new double[nCoolingTubes];
278  barrelYOfCoolingTube[iRing][0] = row->getFloat("YOFCOOLINGTUBE1")*GeoModelKernelUnits::mm;
279  barrelYOfCoolingTube[iRing][1] = row->getFloat("YOFCOOLINGTUBE2")*GeoModelKernelUnits::mm;
280 
281  shellCornerXPosition[iRing] = new double[nShellCorners];
282  shellCornerXPosition[iRing][0] = row->getFloat("SHELLCORNERXPOS1")*GeoModelKernelUnits::mm;
283  shellCornerXPosition[iRing][1] = row->getFloat("SHELLCORNERXPOS2")*GeoModelKernelUnits::mm;
284  shellCornerXPosition[iRing][2] = row->getFloat("SHELLCORNERXPOS3")*GeoModelKernelUnits::mm;
285  shellCornerXPosition[iRing][3] = row->getFloat("SHELLCORNERXPOS4")*GeoModelKernelUnits::mm;
286 
287  shellCornerYPosition[iRing] = new double[nShellCorners];
288  shellCornerYPosition[iRing][0] = row->getFloat("SHELLCORNERYPOS1")*GeoModelKernelUnits::mm;
289  shellCornerYPosition[iRing][1] = row->getFloat("SHELLCORNERYPOS2")*GeoModelKernelUnits::mm;
290  shellCornerYPosition[iRing][2] = row->getFloat("SHELLCORNERYPOS3")*GeoModelKernelUnits::mm;
291  shellCornerYPosition[iRing][3] = row->getFloat("SHELLCORNERYPOS4")*GeoModelKernelUnits::mm;
292 
293  };
294 
295  unsigned int cumulativeStrawNumber = 0;
296  for (unsigned int i = 0; i < nBarrelRings; i++) {
299  for (unsigned int j = 0; j < barrelNumberOfStrawsInModule[i]; j++) {
300  const IRDBRecord* row = (*RDB_BarrelStrawCoord)[cumulativeStrawNumber++];
301  strawXPosition[i][j]=row->getFloat("STRAWXPOSITION")*GeoModelKernelUnits::mm;
302  strawYPosition[i][j]=row->getFloat("STRAWYPOSITION")*GeoModelKernelUnits::mm;
303  };
304  };
305 
306 
308  // Variables related to the End Cap part //
310 
311  IRDBRecordset_ptr RDB_EndCapOverallPars = iAccessSvc->getRecordsetPtr("TRTEndCapOverallPars",detectorKey,detectorNode);
312  const IRDBRecord* RDBVars_EndCapOverallPars = (*RDB_EndCapOverallPars)[0];
313  IRDBRecordset_ptr RDB_ECWheelTypDepPars = iAccessSvc->getRecordsetPtr("TRTECWheelTypDepPars",detectorKey,detectorNode);
314  const IRDBRecord* RDBVars_A_Wheel = (*RDB_ECWheelTypDepPars)[0];
315  const IRDBRecord* RDBVars_B_Wheel = (*RDB_ECWheelTypDepPars)[1];
316  const IRDBRecord* RDBVars_C_Wheel = (*RDB_ECWheelTypDepPars)[2];
317  IRDBRecordset_ptr RDB_EndCapStrwLayZPos = iAccessSvc->getRecordsetPtr("TRTEndCapStrwLayZPos",detectorKey,detectorNode);
318  IRDBRecordset_ptr RDB_ECMembranePars = iAccessSvc->getRecordsetPtr("TRTECMembranePars",detectorKey,detectorNode);
319  IRDBRecordset_ptr RDB_ECHeatExchAndFoil = iAccessSvc->getRecordsetPtr("TRTECHeatExchAndFoil",detectorKey,detectorNode);
320  IRDBRecordset_ptr RDB_ECWheelDepPars = iAccessSvc->getRecordsetPtr("TRTECWheelDepPars",detectorKey,detectorNode);
321  IRDBRecordset_ptr RDB_ECEndCapDepPars = iAccessSvc->getRecordsetPtr("TRTECEndCapDepPars",detectorKey,detectorNode);
322 
323  innerRadiusOfEndCapVolumeAB = RDBVars_EndCapOverallPars->getFloat("INNERRADIUSOFECVOLAB")*GeoModelKernelUnits::mm;
324  outerRadiusOfEndCapVolumeAB = RDBVars_EndCapOverallPars->getFloat("OUTERRADIUSOFECVOLAB")*GeoModelKernelUnits::mm;
325  innerRadiusOfEndCapVolumeC = RDBVars_EndCapOverallPars->getFloat("INNERRADIUSOFECVOLC")*GeoModelKernelUnits::mm;
326  outerRadiusOfEndCapVolumeC = RDBVars_EndCapOverallPars->getFloat("OUTERRADIUSOFECVOLC")*GeoModelKernelUnits::mm;
327  lengthOfEndCapVolumeAB = RDBVars_EndCapOverallPars->getFloat("LENGTHOFENDCAPVOLAB")*GeoModelKernelUnits::mm;
328  positionOfEndCapVolumeAB = RDBVars_EndCapOverallPars->getFloat("POSFORENDCAPVOLAB")*GeoModelKernelUnits::mm;
329  lengthOfEndCapVolumeC = RDBVars_EndCapOverallPars->getFloat("LENGTHOFENDCAPVOLC")*GeoModelKernelUnits::mm;
330  positionOfEndCapVolumeC = RDBVars_EndCapOverallPars->getFloat("POSITIONOFENDCAPVOLC")*GeoModelKernelUnits::mm;//rename!!!
331 
332  if ( RDBVars_A_Wheel->getFloat("OUTERRADIUSOFINNERSUP") != RDBVars_B_Wheel->getFloat("OUTERRADIUSOFINNERSUP") )
333  msg(MSG::WARNING) << "DD Database indicates different outer radii of inner support for A and B wheels." << " The code assumes otherwise. Using value of A wheel for both!" << endmsg;
334  if ( RDBVars_A_Wheel->getFloat("INNERRADIUSOFOUTERSUP") != RDBVars_B_Wheel->getFloat("INNERRADIUSOFOUTERSUP") )
335  msg(MSG::WARNING) << "DD Database indicates different inner radii of outer support for A and B wheels." << " The code assumes otherwise. Using value of A wheel for both!" << endmsg;
336  endcapOuterRadiusOfInnerSupport_wheelAB = RDBVars_A_Wheel->getFloat("OUTERRADIUSOFINNERSUP")*GeoModelKernelUnits::mm;
337  endcapInnerRadiusOfOuterSupport_wheelAB = RDBVars_A_Wheel->getFloat("INNERRADIUSOFOUTERSUP")*GeoModelKernelUnits::mm;
338  endcapOuterRadiusOfInnerSupport_wheelC = RDBVars_C_Wheel->getFloat("OUTERRADIUSOFINNERSUP")*GeoModelKernelUnits::mm;
339  endcapInnerRadiusOfOuterSupport_wheelC = RDBVars_C_Wheel->getFloat("INNERRADIUSOFOUTERSUP")*GeoModelKernelUnits::mm;
340 
341  endCapShiftForEachRotation = RDBVars_EndCapOverallPars->getFloat("SHIFTFOREACHROTATION")*GeoModelKernelUnits::radian;
342 
343  endCapPhiOfFirstStraw = 0; // Temporary
344 
345 
346  endCapInnerRadiusOfSupportA = RDBVars_A_Wheel->getFloat("INNERRADIUSOFSUPPORT")*GeoModelKernelUnits::mm;
347  endCapInnerRadiusOfSupportB = RDBVars_B_Wheel->getFloat("INNERRADIUSOFSUPPORT")*GeoModelKernelUnits::mm;
348  endCapInnerRadiusOfSupportC = RDBVars_C_Wheel->getFloat("INNERRADIUSOFSUPPORT")*GeoModelKernelUnits::mm;
349 
350  endCapOuterRadiusOfSupportA = RDBVars_A_Wheel->getFloat("OUTERRADIUSOFSUPPORT")*GeoModelKernelUnits::mm;
351  endCapOuterRadiusOfSupportB = RDBVars_B_Wheel->getFloat("OUTERRADIUSOFSUPPORT")*GeoModelKernelUnits::mm;
352  endCapOuterRadiusOfSupportC = RDBVars_C_Wheel->getFloat("OUTERRADIUSOFSUPPORT")*GeoModelKernelUnits::mm;
353 
354  endCapRadialThicknessOfInnerSupportA = RDBVars_A_Wheel->getFloat("RADIALTHICKOFINNERSUP")*GeoModelKernelUnits::mm;
355  endCapRadialThicknessOfInnerSupportB = RDBVars_B_Wheel->getFloat("RADIALTHICKOFINNERSUP")*GeoModelKernelUnits::mm;
356  endCapRadialThicknessOfInnerSupportC = RDBVars_C_Wheel->getFloat("RADIALTHICKOFINNERSUP")*GeoModelKernelUnits::mm;
357 
358  endCapRadialThicknessOfOuterSupportA = RDBVars_A_Wheel->getFloat("RADIALTHICKOFOUTERSUP")*GeoModelKernelUnits::mm;
359  endCapRadialThicknessOfOuterSupportB = RDBVars_B_Wheel->getFloat("RADIALTHICKOFOUTERSUP")*GeoModelKernelUnits::mm;
360  endCapRadialThicknessOfOuterSupportC = RDBVars_C_Wheel->getFloat("RADIALTHICKOFOUTERSUP")*GeoModelKernelUnits::mm;
361 
362  endCapRadialDistFromRadToOuterSupportA = RDBVars_A_Wheel->getFloat("RADIALDISTRADTOOUTERSUP")*GeoModelKernelUnits::mm;
363  endCapRadialDistFromRadToOuterSupportB = RDBVars_B_Wheel->getFloat("RADIALDISTRADTOOUTERSUP")*GeoModelKernelUnits::mm;
364  endCapRadialDistFromRadToOuterSupportC = RDBVars_C_Wheel->getFloat("RADIALDISTRADTOOUTERSUP")*GeoModelKernelUnits::mm;
365 
366  endCapMainRadiatorThicknessA = RDBVars_A_Wheel->getFloat("MAINRADIATORTHICK")*GeoModelKernelUnits::mm;
367  endCapMainRadiatorThicknessB = RDBVars_B_Wheel->getFloat("MAINRADIATORTHICK")*GeoModelKernelUnits::mm;
368  endCapMainRadiatorThicknessC = RDBVars_C_Wheel->getFloat("MAINRADIATORTHICK")*GeoModelKernelUnits::mm;
369 
370  endCapThinRadiatorThicknessA = RDBVars_A_Wheel->getFloat("THINRADIATORTHICK")*GeoModelKernelUnits::mm;
371  endCapThinRadiatorThicknessB = RDBVars_B_Wheel->getFloat("THINRADIATORTHICK")*GeoModelKernelUnits::mm;
372  endCapThinRadiatorThicknessC = RDBVars_C_Wheel->getFloat("THINRADIATORTHICK")*GeoModelKernelUnits::mm;
373 
374  endCapMiddleRadiatorThicknessB = RDBVars_B_Wheel->getFloat("MIDDLERADIATORTHICK")*GeoModelKernelUnits::mm;
375  if ( RDBVars_A_Wheel->getFloat("MIDDLERADIATORTHICK")*GeoModelKernelUnits::mm != 0 )
376  msg(MSG::WARNING) << "DD Database indicates a nonzero middle radiator thickness in the A wheel" << " where middle radiators doesn't exist. Ignoring parameter." << endmsg;
377  if ( RDBVars_C_Wheel->getFloat("MIDDLERADIATORTHICK")*GeoModelKernelUnits::mm != 0 )
378  msg(MSG::WARNING) << "DD Database indicates a nonzero middle radiator thickness in the C wheel" << " where middle radiators doesn't exist. Ignoring parameter." << endmsg;
379 
380  endCapLengthOfWheelsA = RDBVars_A_Wheel->getFloat("LENGTHOFWHEELS")*GeoModelKernelUnits::mm;
381  endCapLengthOfWheelsB = RDBVars_B_Wheel->getFloat("LENGTHOFWHEELS")*GeoModelKernelUnits::mm;
382 
383  endCapLengthOfWheelsC = RDBVars_C_Wheel->getFloat("LENGTHOFWHEELS")*GeoModelKernelUnits::mm;
384 
385  endCapNumberOfStrawLayersPerWheelA = RDBVars_A_Wheel->getInt("NSTRAWLAYERSPERWHEEL");
386  endCapNumberOfStrawLayersPerWheelB = RDBVars_B_Wheel->getInt("NSTRAWLAYERSPERWHEEL");
387  endCapNumberOfStrawLayersPerWheelC = RDBVars_C_Wheel->getInt("NSTRAWLAYERSPERWHEEL");
388 
389 
390  endcapNumberOfAWheels = RDBVars_A_Wheel->getInt("NWHEELSOFTYPE");
391  endcapNumberOfBWheels = RDBVars_B_Wheel->getInt("NWHEELSOFTYPE");
392  endcapNumberOfCWheels = RDBVars_C_Wheel->getInt("NWHEELSOFTYPE");
393 
394 
395 
396  endcapNumberOfStrawsInStrawLayer_AWheels = RDBVars_A_Wheel->getInt("NSTRAWSINSTRAWLAYER");
397  endcapNumberOfStrawsInStrawLayer_BWheels = RDBVars_B_Wheel->getInt("NSTRAWSINSTRAWLAYER");
398  endcapNumberOfStrawsInStrawLayer_CWheels = RDBVars_C_Wheel->getInt("NSTRAWSINSTRAWLAYER");
399 
400  includeECFoilHeatExchangerAndMembranes = (RDB_ECHeatExchAndFoil->size()!=0);
401 
403 
404  const IRDBRecord* RDBECEndCapDepPars_EndCap_C = (*RDB_ECEndCapDepPars)[0];
405  const IRDBRecord* RDBECEndCapDepPars_EndCap_A = (*RDB_ECEndCapDepPars)[1];
406 
407 
408 
409  endCapPositionOfFirstWheelA[0] = RDBECEndCapDepPars_EndCap_A->getDouble("ZPOSOFFIRSTAWHEEL")*GeoModelKernelUnits::mm;
410  endCapPositionOfFirstWheelA[1] = RDBECEndCapDepPars_EndCap_C->getDouble("ZPOSOFFIRSTAWHEEL")*GeoModelKernelUnits::mm;
411  endCapPositionOfFirstWheelB[0] = RDBECEndCapDepPars_EndCap_A->getDouble("ZPOSOFFIRSTBWHEEL")*GeoModelKernelUnits::mm;
412  endCapPositionOfFirstWheelB[1] = RDBECEndCapDepPars_EndCap_C->getDouble("ZPOSOFFIRSTBWHEEL")*GeoModelKernelUnits::mm;
413 
414  for (unsigned int iiWheel = 0; iiWheel < endcapNumberOfAWheels; iiWheel++) {
415  const IRDBRecord* row = (*RDB_ECWheelDepPars)[iiWheel];
416  endCapDistanceBetweenWheelCentersA[0][iiWheel]=row->getDouble("DISTBETWWHEELCENTECC")*GeoModelKernelUnits::mm;
417  endCapDistanceBetweenWheelCentersA[1][iiWheel]=row->getDouble("DISTBETWWHEELCENTECA")*GeoModelKernelUnits::mm;
418  };
419  for (unsigned int iiWheel = endcapNumberOfAWheels; iiWheel < (endcapNumberOfAWheels+endcapNumberOfBWheels); iiWheel++) {
420  const IRDBRecord* row = (*RDB_ECWheelDepPars)[iiWheel];
421  endCapDistanceBetweenWheelCentersB[0][iiWheel]=row->getDouble("DISTBETWWHEELCENTECC")*GeoModelKernelUnits::mm;
422  endCapDistanceBetweenWheelCentersB[1][iiWheel]=row->getDouble("DISTBETWWHEELCENTECA")*GeoModelKernelUnits::mm;
423  };
424  } else {
425 
426  endCapPositionOfFirstWheelA[0] = RDBVars_A_Wheel->getFloat("POSITIONOFFIRSTWHEEL")*GeoModelKernelUnits::mm;
427  endCapPositionOfFirstWheelA[1] = RDBVars_A_Wheel->getFloat("POSITIONOFFIRSTWHEEL")*GeoModelKernelUnits::mm;
428  endCapPositionOfFirstWheelB[0] = RDBVars_B_Wheel->getFloat("POSITIONOFFIRSTWHEEL")*GeoModelKernelUnits::mm;
429  endCapPositionOfFirstWheelB[1] = RDBVars_B_Wheel->getFloat("POSITIONOFFIRSTWHEEL")*GeoModelKernelUnits::mm;
434  for (unsigned int iiWheel = 1; iiWheel < endcapNumberOfAWheels; iiWheel++) {
435  endCapDistanceBetweenWheelCentersA[0][iiWheel]=RDBVars_A_Wheel->getFloat("DISTBETWWHEELCENTERS")*GeoModelKernelUnits::mm;
436  endCapDistanceBetweenWheelCentersA[1][iiWheel]=RDBVars_A_Wheel->getFloat("DISTBETWWHEELCENTERS")*GeoModelKernelUnits::mm;
437  };
438  for (unsigned int iiWheel = (endcapNumberOfAWheels+1); iiWheel < (endcapNumberOfAWheels+endcapNumberOfBWheels); iiWheel++) {
439  endCapDistanceBetweenWheelCentersB[0][iiWheel]=RDBVars_B_Wheel->getFloat("DISTBETWWHEELCENTERS")*GeoModelKernelUnits::mm;
440  endCapDistanceBetweenWheelCentersB[1][iiWheel]=RDBVars_B_Wheel->getFloat("DISTBETWWHEELCENTERS")*GeoModelKernelUnits::mm;
441  };
442  };
443 
444  endCapDistanceBetweenWheelCentersC = RDBVars_C_Wheel->getFloat("DISTBETWWHEELCENTERS")*GeoModelKernelUnits::mm;
445  endCapPositionOfFirstWheelC = RDBVars_C_Wheel->getFloat("POSITIONOFFIRSTWHEEL")*GeoModelKernelUnits::mm;
446 
447 
451 
452  for (unsigned int iiPlane = 0; iiPlane < endCapNumberOfStrawLayersPerWheelA; iiPlane++) {
453  const IRDBRecord* row = (*RDB_EndCapStrwLayZPos)[iiPlane];
454  endCapLayerZPositionA[iiPlane] = row->getFloat("LAYERZPOSAWHEELS")*GeoModelKernelUnits::mm;
455  };
456  for (unsigned int iiPlane = 0; iiPlane < endCapNumberOfStrawLayersPerWheelB; iiPlane++) {
457  const IRDBRecord* row = (*RDB_EndCapStrwLayZPos)[iiPlane];
458  endCapLayerZPositionB[iiPlane] = row->getFloat("LAYERZPOSBWHEELS")*GeoModelKernelUnits::mm;
459  };
460  for (unsigned int iiPlane = 0; iiPlane < endCapNumberOfStrawLayersPerWheelC; iiPlane++) {
461  const IRDBRecord* row = (*RDB_EndCapStrwLayZPos)[iiPlane];
462  endCapLayerZPositionC[iiPlane] = row->getFloat("LAYERZPOSCWHEELS")*GeoModelKernelUnits::mm;
463  };
464 
465 
466 
468 
469  const IRDBRecord* RDBVars_ECHeatExchAndFoil = (*RDB_ECHeatExchAndFoil)[0];
470 
471  // Faraday foils kapton
472  endCapFaradayFoilThickness = RDBVars_ECHeatExchAndFoil->getDouble("ECFARADAYFOILTHICK")*GeoModelKernelUnits::mm;
473 
474  // Heat Exchanger
475  endCapRMinOfHeatExchanger = RDBVars_ECHeatExchAndFoil->getDouble("ECHEATEXCHANGERRMIN")*GeoModelKernelUnits::mm;
476  endCapRMaxOfHeatExchanger = RDBVars_ECHeatExchAndFoil->getDouble("ECHEATEXCHANGERRMAX")*GeoModelKernelUnits::mm;
477  endCapHeatExchangerThicknessA = RDBVars_ECHeatExchAndFoil->getDouble("ECHEATEXCHTHICKNESSA")*GeoModelKernelUnits::mm;
478  endCapHeatExchangerThicknessB = RDBVars_ECHeatExchAndFoil->getDouble("ECHEATEXCHTHICKNESSB")*GeoModelKernelUnits::mm;
479 
480  // Membranes
481  const IRDBRecord* RDBVars_ECMembranePars = (*RDB_ECMembranePars)[0];
482 
483  endCapRMinOfMbrane = RDBVars_ECMembranePars->getDouble("RMINOFENDCAPMBRANE")*GeoModelKernelUnits::mm;
484  endCapRMaxOfMbrane = RDBVars_ECMembranePars->getDouble("RMAXOFENDCAPMBRANE")*GeoModelKernelUnits::mm;
485  endCapZMinOfMbraneWheelA1 = RDBVars_ECMembranePars->getDouble("ZMINPOSMBRANEWHEELA1")*GeoModelKernelUnits::mm;
486  endCapZMaxOfMbraneWheelA1 = RDBVars_ECMembranePars->getDouble("ZMAXPOSMBRANEWHEELA1")*GeoModelKernelUnits::mm;
487  endCapZMinOfMbraneWheelA2 = RDBVars_ECMembranePars->getDouble("ZMINPOSMBRANEWHEELA2")*GeoModelKernelUnits::mm;
488  endCapZMaxOfMbraneWheelA2 = RDBVars_ECMembranePars->getDouble("ZMAXPOSMBRANEWHEELA2")*GeoModelKernelUnits::mm;
489  endCapZMinOfMbraneWheelB1 = RDBVars_ECMembranePars->getDouble("ZMINPOSMBRANEWHEELB1")*GeoModelKernelUnits::mm;
490  endCapZMaxOfMbraneWheelB1 = RDBVars_ECMembranePars->getDouble("ZMAXPOSMBRANEWHEELB1")*GeoModelKernelUnits::mm;
491  endCapZMinOfMbraneWheelB2 = RDBVars_ECMembranePars->getDouble("ZMINPOSMBRANEWHEELB2")*GeoModelKernelUnits::mm;
492  endCapZMaxOfMbraneWheelB2 = RDBVars_ECMembranePars->getDouble("ZMAXPOSMBRANEWHEELB2")*GeoModelKernelUnits::mm;
493 
495 
496  }
497 }
500 {
501  return m_distortedMatManager;
502 }
503 
504 const GeoTrf::Transform3D &
505 TRT_DetDescrDB_ParameterInterface::partTransform(const std::string & partName) const
506 {
507  if (m_placements) return m_placements->transform(partName);
508  static const GeoTrf::Transform3D unitTransform = GeoTrf::Transform3D::Identity();
509  return unitTransform;
510 }
511 
512 
513 bool
514 TRT_DetDescrDB_ParameterInterface::partPresent(const std::string & partName) const
515 {
516  if (!m_placements) return true;
517  return m_placements->present(partName);
518 }
519 
IRDBRecord::getInt
virtual int getInt(const std::string &fieldName) const =0
Get int field value.
TRTParameterInterface::oldConfiguration
bool oldConfiguration
Definition: TRTParameterInterface.h:55
TRTParameterInterface::barrelYOfSecondGlobalAlignmentStraw
double * barrelYOfSecondGlobalAlignmentStraw
Definition: TRTParameterInterface.h:132
query_example.row
row
Definition: query_example.py:24
TRTParameterInterface::barServicesRMax
double barServicesRMax
Definition: TRTParameterInterface.h:144
TRTParameterInterface::endCapDistanceBetweenWheelCentersA
double endCapDistanceBetweenWheelCentersA[2][6]
Definition: TRTParameterInterface.h:222
TRTParameterInterface::versionName
std::string versionName
Definition: TRTParameterInterface.h:50
TRTParameterInterface::endCapMiddleRadiatorThicknessB
double endCapMiddleRadiatorThicknessB
Definition: TRTParameterInterface.h:206
TRT_DetDescrDB_ParameterInterface.h
TRTParameterInterface::endCapHeatExchangerThicknessA
double endCapHeatExchangerThicknessA
Definition: TRTParameterInterface.h:229
TRTParameterInterface::lengthOfEndCapVolumeC
double lengthOfEndCapVolumeC
Definition: TRTParameterInterface.h:179
TRTParameterInterface::layout
std::string layout
Definition: TRTParameterInterface.h:51
TRTParameterInterface::endCapRMaxOfHeatExchanger
double endCapRMaxOfHeatExchanger
Definition: TRTParameterInterface.h:228
TRTParameterInterface::barServicesZMax
double barServicesZMax
Definition: TRTParameterInterface.h:142
TRTParameterInterface::positionOfEndCapVolumeC
double positionOfEndCapVolumeC
Definition: TRTParameterInterface.h:180
TRTParameterInterface::barrelVirtualVolumeZClearance
double barrelVirtualVolumeZClearance
Definition: TRTParameterInterface.h:151
TRTParameterInterface::endCapRMinOfMbrane
double endCapRMinOfMbrane
Definition: TRTParameterInterface.h:233
TRTParameterInterface::endcapOuterRadiusOfInnerSupport_wheelAB
double endcapOuterRadiusOfInnerSupport_wheelAB
Definition: TRTParameterInterface.h:167
TRTParameterInterface::endCapZMaxOfMbraneWheelB2
double endCapZMaxOfMbraneWheelB2
Definition: TRTParameterInterface.h:242
TRTParameterInterface::endCapRMaxOfMbrane
double endCapRMaxOfMbrane
Definition: TRTParameterInterface.h:234
TRTParameterInterface::barrelThicknessOfModuleWalls
double barrelThicknessOfModuleWalls
Definition: TRTParameterInterface.h:106
TRTParameterInterface::outerRadiusOfBarrelVolume
double outerRadiusOfBarrelVolume
Definition: TRTParameterInterface.h:98
TRTParameterInterface::endCapRadialThicknessOfInnerSupportC
double endCapRadialThicknessOfInnerSupportC
Definition: TRTParameterInterface.h:193
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.
TRTParameterInterface::endcapNumberOfCWheels
unsigned int endcapNumberOfCWheels
Definition: TRTParameterInterface.h:161
TRTParameterInterface::endCapOuterRadiusOfSupportC
double endCapOuterRadiusOfSupportC
Definition: TRTParameterInterface.h:190
TopLevelPlacements
Definition: TopLevelPlacements.h:18
TopLevelPlacements::transform
const GeoTrf::Transform3D & transform(const std::string &partName) const
Definition: TopLevelPlacements.cxx:26
TRTParameterInterface::barrelOuterRadiusOfCoolingTube
double barrelOuterRadiusOfCoolingTube
Definition: TRTParameterInterface.h:103
max
constexpr double max()
Definition: ap_fixedTest.cxx:33
TRTParameterInterface::outerRadiusOfEndCapVolumeC
double outerRadiusOfEndCapVolumeC
Definition: TRTParameterInterface.h:176
TRTParameterInterface::endCapThinRadiatorThicknessA
double endCapThinRadiatorThicknessA
Definition: TRTParameterInterface.h:203
TRTParameterInterface::barrelLengthOfLargeDeadRegion
double barrelLengthOfLargeDeadRegion
Definition: TRTParameterInterface.h:95
IRDBRecord::getString
virtual const std::string & getString(const std::string &fieldName) const =0
Get string field value.
TRTParameterInterface::endCapLayerZPositionC
double * endCapLayerZPositionC
Definition: TRTParameterInterface.h:221
InDetDD::AthenaComps
Class to hold various Athena components.
Definition: InDetDDAthenaComps.h:21
InDetDD::DistortedMaterialManager
Definition: DistortedMaterialManager.h:15
TRTParameterInterface::endCapDistanceBetweenWheelCentersB
double endCapDistanceBetweenWheelCentersB[2][14]
Definition: TRTParameterInterface.h:223
TRTParameterInterface::endCapRadialDistFromRadToOuterSupportA
double endCapRadialDistFromRadToOuterSupportA
Definition: TRTParameterInterface.h:197
TRTParameterInterface::barFlangeZMax
double barFlangeZMax
Definition: TRTParameterInterface.h:138
TRTParameterInterface::endcapInnerRadiusOfOuterSupport_wheelAB
double endcapInnerRadiusOfOuterSupport_wheelAB
Definition: TRTParameterInterface.h:168
TRTParameterInterface::includeECFoilHeatExchangerAndMembranes
bool includeECFoilHeatExchangerAndMembranes
Definition: TRTParameterInterface.h:147
TRTParameterInterface::nBarrelRings
static const unsigned int nBarrelRings
Definition: TRTParameterInterface.h:78
TRTParameterInterface::barFlangeRMax
double barFlangeRMax
Definition: TRTParameterInterface.h:140
TRTParameterInterface::endCapLayerZPositionB
double * endCapLayerZPositionB
Definition: TRTParameterInterface.h:220
TRTParameterInterface::endCapLengthOfWheelsA
double endCapLengthOfWheelsA
Definition: TRTParameterInterface.h:207
DecodeVersionKey::node
const std::string & node() const
Return the version node.
Definition: DecodeVersionKey.cxx:97
TRTParameterInterface::endCapRadialThicknessOfInnerSupportB
double endCapRadialThicknessOfInnerSupportB
Definition: TRTParameterInterface.h:192
TRT_DetDescrDB_ParameterInterface::m_athenaComps
InDetDD::AthenaComps * m_athenaComps
Definition: TRT_DetDescrDB_ParameterInterface.h:35
TRTParameterInterface::endCapPhiOfFirstStraw
double endCapPhiOfFirstStraw
Definition: TRTParameterInterface.h:183
TRTParameterInterface::innerRadiusOfBarrelVolume
double innerRadiusOfBarrelVolume
Definition: TRTParameterInterface.h:97
TRTParameterInterface::barrelInnerRadiusOfCoolingTube
double barrelInnerRadiusOfCoolingTube
Definition: TRTParameterInterface.h:104
TRTParameterInterface::endCapZMinOfMbraneWheelA2
double endCapZMinOfMbraneWheelA2
Definition: TRTParameterInterface.h:236
TopLevelPlacements::present
bool present(const std::string &partName) const
Definition: TopLevelPlacements.cxx:35
TRTParameterInterface::outerRadiusOfWire
double outerRadiusOfWire
Definition: TRTParameterInterface.h:91
TRTParameterInterface::nCoolingTubes
unsigned int nCoolingTubes
Definition: TRTParameterInterface.h:71
TRTParameterInterface::endcapOuterRadiusOfInnerSupport_wheelC
double endcapOuterRadiusOfInnerSupport_wheelC
Definition: TRTParameterInterface.h:169
TRTParameterInterface::endCapRadialThicknessOfOuterSupportC
double endCapRadialThicknessOfOuterSupportC
Definition: TRTParameterInterface.h:196
TRTParameterInterface::lengthOfDeadRegion
double lengthOfDeadRegion
Definition: TRTParameterInterface.h:90
TRTParameterInterface::outerRadiusOfEndCapVolumeAB
double outerRadiusOfEndCapVolumeAB
Definition: TRTParameterInterface.h:173
TRTParameterInterface
Definition: TRTParameterInterface.h:16
TRTParameterInterface::endCapDistanceBetweenWheelCentersC
double endCapDistanceBetweenWheelCentersC
Definition: TRTParameterInterface.h:217
python.SystemOfUnits.radian
int radian
Definition: SystemOfUnits.py:104
TRTParameterInterface::endCapLayerZPositionA
double * endCapLayerZPositionA
Definition: TRTParameterInterface.h:219
TRTParameterInterface::endcapNumberOfAWheels
unsigned int endcapNumberOfAWheels
Definition: TRTParameterInterface.h:159
TRTParameterInterface::endCapThicknessOfMbrane
double endCapThicknessOfMbrane
Definition: TRTParameterInterface.h:232
TRTParameterInterface::shellCornerXPosition
double * shellCornerXPosition[nBarrelRings]
Definition: TRTParameterInterface.h:120
TRTParameterInterface::endCapRadialThicknessOfOuterSupportB
double endCapRadialThicknessOfOuterSupportB
Definition: TRTParameterInterface.h:195
IRDBAccessSvc.h
Definition of the abstract IRDBAccessSvc interface.
TRTParameterInterface::barrelNumberOfLayersWithLargeDeadRegion
unsigned int barrelNumberOfLayersWithLargeDeadRegion
Definition: TRTParameterInterface.h:107
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.
TRTParameterInterface::endCapZMinOfMbraneWheelB2
double endCapZMinOfMbraneWheelB2
Definition: TRTParameterInterface.h:238
TRTParameterInterface::nBarrelPhi
unsigned int nBarrelPhi
Definition: TRTParameterInterface.h:66
TRTParameterInterface::virtualBarrelVolumeLength
double virtualBarrelVolumeLength
Definition: TRTParameterInterface.h:145
TRTParameterInterface::endCapOuterRadiusOfSupportB
double endCapOuterRadiusOfSupportB
Definition: TRTParameterInterface.h:189
lumiFormat.i
int i
Definition: lumiFormat.py:85
TRTParameterInterface::endCapNumberOfStrawLayersPerWheelC
unsigned int endCapNumberOfStrawLayersPerWheelC
Definition: TRTParameterInterface.h:213
TRTParameterInterface::endCapNumberOfStrawLayersPerWheelB
unsigned int endCapNumberOfStrawLayersPerWheelB
Definition: TRTParameterInterface.h:212
IRDBAccessSvc
IRDBAccessSvc is an abstract interface to the athena service that provides the following functionalit...
Definition: IRDBAccessSvc.h:42
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
DecodeVersionKey
This is a helper class to query the version tags from GeoModelSvc and determine the appropriate tag a...
Definition: DecodeVersionKey.h:18
TRTParameterInterface::nBarrelModules
unsigned int nBarrelModules
Definition: TRTParameterInterface.h:64
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition: GeoPrimitives.h:46
TRTParameterInterface::endCapZMaxOfMbraneWheelA1
double endCapZMaxOfMbraneWheelA1
Definition: TRTParameterInterface.h:239
TRTParameterInterface::versionDescription
std::string versionDescription
Definition: TRTParameterInterface.h:52
TRTParameterInterface::innerRadiusOfStraw
double innerRadiusOfStraw
Definition: TRTParameterInterface.h:92
DecodeVersionKey::tag
const std::string & tag() const
Return version tag.
Definition: DecodeVersionKey.cxx:91
TRTParameterInterface::barrelIndexOfSecondGlobalAlignmentStraw
unsigned int * barrelIndexOfSecondGlobalAlignmentStraw
Definition: TRTParameterInterface.h:128
TRTParameterInterface::endCapInnerRadiusOfSupportB
double endCapInnerRadiusOfSupportB
Definition: TRTParameterInterface.h:186
TRTParameterInterface::barrelNumberOfStrawLayersInModule
unsigned int * barrelNumberOfStrawLayersInModule
Definition: TRTParameterInterface.h:114
TRTParameterInterface::innerRadiusOfEndCapVolumeC
double innerRadiusOfEndCapVolumeC
Definition: TRTParameterInterface.h:175
TRTParameterInterface::endCapNumberOfStrawLayersPerWheelA
unsigned int endCapNumberOfStrawLayersPerWheelA
Definition: TRTParameterInterface.h:211
TRTParameterInterface::lengthOfBarrelVolume
double lengthOfBarrelVolume
Definition: TRTParameterInterface.h:88
TRTParameterInterface::endCapRMinOfHeatExchanger
double endCapRMinOfHeatExchanger
Definition: TRTParameterInterface.h:227
InDetDDAthenaComps.h
TRTParameterInterface::shellCornerYPosition
double * shellCornerYPosition[nBarrelRings]
Definition: TRTParameterInterface.h:121
python.SystemOfUnits.micrometer
int micrometer
Definition: SystemOfUnits.py:71
TRTParameterInterface::endcapNumberOfStrawsInStrawLayer_BWheels
unsigned int endcapNumberOfStrawsInStrawLayer_BWheels
Definition: TRTParameterInterface.h:164
InDetDD::AthenaComps::geoDbTagSvc
const IGeoDbTagSvc * geoDbTagSvc() const
Definition: InDetDDAthenaComps.h:58
IRDBRecordset_ptr
std::shared_ptr< IRDBRecordset > IRDBRecordset_ptr
Definition: IRDBAccessSvc.h:25
TRTParameterInterface::barrelYOfCoolingTube
double * barrelYOfCoolingTube[nBarrelRings]
Definition: TRTParameterInterface.h:118
TRTParameterInterface::barServicesRMin
double barServicesRMin
Definition: TRTParameterInterface.h:143
TRTParameterInterface::barrelVirtualVolumeRMinClearance
double barrelVirtualVolumeRMinClearance
Definition: TRTParameterInterface.h:152
TRT_DetDescrDB_ParameterInterface::TRT_DetDescrDB_ParameterInterface
TRT_DetDescrDB_ParameterInterface()=delete
TRTParameterInterface::endCapThinRadiatorThicknessB
double endCapThinRadiatorThicknessB
Definition: TRTParameterInterface.h:204
TRTParameterInterface::endcapNumberOfStrawsInStrawLayer_CWheels
unsigned int endcapNumberOfStrawsInStrawLayer_CWheels
Definition: TRTParameterInterface.h:165
TRTParameterInterface::endCapMainRadiatorThicknessB
double endCapMainRadiatorThicknessB
Definition: TRTParameterInterface.h:201
TRTParameterInterface::thicknessOfBarrelOuterSupport
double thicknessOfBarrelOuterSupport
Definition: TRTParameterInterface.h:101
TRTParameterInterface::endcapInnerRadiusOfOuterSupport_wheelC
double endcapInnerRadiusOfOuterSupport_wheelC
Definition: TRTParameterInterface.h:170
TRT_DetDescrDB_ParameterInterface::msg
MsgStream & msg(MSG::Level lvl)
Definition: TRT_DetDescrDB_ParameterInterface.h:32
TRTParameterInterface::digversionname
std::string digversionname
Definition: TRTParameterInterface.h:58
TRTParameterInterface::endCapZMaxOfMbraneWheelB1
double endCapZMaxOfMbraneWheelB1
Definition: TRTParameterInterface.h:241
TRTParameterInterface::endCapRadialDistFromRadToOuterSupportC
double endCapRadialDistFromRadToOuterSupportC
Definition: TRTParameterInterface.h:199
TRTParameterInterface::barrelXOfSecondGlobalAlignmentStraw
double * barrelXOfSecondGlobalAlignmentStraw
Definition: TRTParameterInterface.h:130
IGeoDbTagSvc::getParamSvcName
virtual const std::string & getParamSvcName() const =0
TRTParameterInterface::endCapHeatExchangerThicknessB
double endCapHeatExchangerThicknessB
Definition: TRTParameterInterface.h:230
TRTParameterInterface::nShellCorners
unsigned int nShellCorners
Definition: TRTParameterInterface.h:70
TRTParameterInterface::endcapNumberOfBWheels
unsigned int endcapNumberOfBWheels
Definition: TRTParameterInterface.h:160
TRTParameterInterface::barrelLengthOfTwister
double barrelLengthOfTwister
Definition: TRTParameterInterface.h:94
TRTParameterInterface::barrelXOfCoolingTube
double * barrelXOfCoolingTube[nBarrelRings]
Definition: TRTParameterInterface.h:117
TRTParameterInterface::nBarrelModulesUsed
unsigned int nBarrelModulesUsed
Definition: TRTParameterInterface.h:65
TRTParameterInterface::includeBarServiceAndFlange
bool includeBarServiceAndFlange
Definition: TRTParameterInterface.h:146
TRTParameterInterface::endCapInnerRadiusOfSupportC
double endCapInnerRadiusOfSupportC
Definition: TRTParameterInterface.h:187
DecodeVersionKey.h
TRTParameterInterface::endCapMainRadiatorThicknessC
double endCapMainRadiatorThicknessC
Definition: TRTParameterInterface.h:202
TRTParameterInterface::strawYPosition
double * strawYPosition[nBarrelRings]
Definition: TRTParameterInterface.h:134
TRTParameterInterface::barrelXOfFirstGlobalAlignmentStraw
double * barrelXOfFirstGlobalAlignmentStraw
Definition: TRTParameterInterface.h:129
TRT_DetDescrDB_ParameterInterface::distortedMatManager
virtual InDetDD::DistortedMaterialManager * distortedMatManager() override
Definition: TRT_DetDescrDB_ParameterInterface.cxx:499
TRT_DetDescrDB_ParameterInterface::m_distortedMatManager
InDetDD::DistortedMaterialManager * m_distortedMatManager
Definition: TRT_DetDescrDB_ParameterInterface.h:36
TRTParameterInterface::endCapOuterRadiusOfSupportA
double endCapOuterRadiusOfSupportA
Definition: TRTParameterInterface.h:188
python.SystemOfUnits.mm
int mm
Definition: SystemOfUnits.py:83
TRTParameterInterface::endCapShiftForEachRotation
double endCapShiftForEachRotation
Definition: TRTParameterInterface.h:182
TRT_DetDescrDB_ParameterInterface::m_placements
TopLevelPlacements * m_placements
Definition: TRT_DetDescrDB_ParameterInterface.h:37
TRTParameterInterface::endCapInnerRadiusOfSupportA
double endCapInnerRadiusOfSupportA
Definition: TRTParameterInterface.h:185
TRTParameterInterface::endCapZMaxOfMbraneWheelA2
double endCapZMaxOfMbraneWheelA2
Definition: TRTParameterInterface.h:240
TRTParameterInterface::barFlangeZMin
double barFlangeZMin
Definition: TRTParameterInterface.h:137
TRT_DetDescrDB_ParameterInterface::SetValues
virtual void SetValues() override
Definition: TRT_DetDescrDB_ParameterInterface.cxx:57
TRTParameterInterface::barrelNumberOfStrawsInStrawLayer
unsigned int * barrelNumberOfStrawsInStrawLayer[nBarrelRings]
Definition: TRTParameterInterface.h:115
IRDBRecord.h
Definition of the abstract IRDBRecord interface.
IRDBRecord::isFieldNull
virtual bool isFieldNull(const std::string &fieldName) const =0
Check if the field value is NULL.
IRDBRecord
IRDBRecord is one record in the IRDBRecordset object.
Definition: IRDBRecord.h:27
TRTParameterInterface::initialLayout
bool initialLayout
Definition: TRTParameterInterface.h:54
TRTParameterInterface::barrelOuterRadiusOfStrawHole
double barrelOuterRadiusOfStrawHole
Definition: TRTParameterInterface.h:85
TRTParameterInterface::endCapMainRadiatorThicknessA
double endCapMainRadiatorThicknessA
Definition: TRTParameterInterface.h:200
DEBUG
#define DEBUG
Definition: page_access.h:11
TRTParameterInterface::endCapLengthOfWheelsC
double endCapLengthOfWheelsC
Definition: TRTParameterInterface.h:209
TRTParameterInterface::endCapRadialThicknessOfInnerSupportA
double endCapRadialThicknessOfInnerSupportA
Definition: TRTParameterInterface.h:191
TRTParameterInterface::versionTag
std::string versionTag
Definition: TRTParameterInterface.h:40
TRTParameterInterface::endCapThinRadiatorThicknessC
double endCapThinRadiatorThicknessC
Definition: TRTParameterInterface.h:205
TRTParameterInterface::endCapPositionOfFirstWheelC
double endCapPositionOfFirstWheelC
Definition: TRTParameterInterface.h:214
TRTParameterInterface::endCapZMinOfMbraneWheelA1
double endCapZMinOfMbraneWheelA1
Definition: TRTParameterInterface.h:235
TRTParameterInterface::isCosmicRun
bool isCosmicRun
Definition: TRTParameterInterface.h:53
TRT_DetDescrDB_ParameterInterface::partPresent
virtual bool partPresent(const std::string &partName) const override
Definition: TRT_DetDescrDB_ParameterInterface.cxx:514
TRTParameterInterface::innerRadiusOfEndCapVolumeAB
double innerRadiusOfEndCapVolumeAB
Definition: TRTParameterInterface.h:172
TRTParameterInterface::barrelVirtualVolumeRMaxClearance
double barrelVirtualVolumeRMaxClearance
Definition: TRTParameterInterface.h:153
TRTParameterInterface::thicknessOfBarrelInnerSupport
double thicknessOfBarrelInnerSupport
Definition: TRTParameterInterface.h:100
TRTParameterInterface::barrelNumberOfStrawsInModule
unsigned int * barrelNumberOfStrawsInModule
Definition: TRTParameterInterface.h:109
TRTParameterInterface::barServicesZMin
double barServicesZMin
Definition: TRTParameterInterface.h:141
TRTParameterInterface::digversion
unsigned int digversion
Definition: TRTParameterInterface.h:57
TRTParameterInterface::endCapLengthOfWheelsB
double endCapLengthOfWheelsB
Definition: TRTParameterInterface.h:208
IRDBRecord::getDouble
virtual double getDouble(const std::string &fieldName) const =0
Get double field value.
TRTParameterInterface::endCapFaradayFoilThickness
double endCapFaradayFoilThickness
Definition: TRTParameterInterface.h:225
TRTParameterInterface::endCapPositionOfFirstWheelB
double endCapPositionOfFirstWheelB[2]
Definition: TRTParameterInterface.h:216
TopLevelPlacements.h
IRDBRecordset.h
Definition of the abstract IRDBRecordset interface.
TRTParameterInterface::endCapZMinOfMbraneWheelB1
double endCapZMinOfMbraneWheelB1
Definition: TRTParameterInterface.h:237
InDetDD::AthenaComps::rdbAccessSvc
IRDBAccessSvc * rdbAccessSvc()
Definition: InDetDDAthenaComps.h:74
TRTParameterInterface::lengthOfEndCapVolumeAB
double lengthOfEndCapVolumeAB
Definition: TRTParameterInterface.h:177
TRTParameterInterface::outerRadiusOfStraw
double outerRadiusOfStraw
Definition: TRTParameterInterface.h:93
IRDBRecord::getFloat
virtual float getFloat(const std::string &fieldName) const =0
Get float field value.
TRT_DetDescrDB_ParameterInterface::~TRT_DetDescrDB_ParameterInterface
~TRT_DetDescrDB_ParameterInterface()
Definition: TRT_DetDescrDB_ParameterInterface.cxx:25
TRTParameterInterface::positionOfEndCapVolumeAB
double positionOfEndCapVolumeAB
Definition: TRTParameterInterface.h:178
TRTParameterInterface::endCapPositionOfFirstWheelA
double endCapPositionOfFirstWheelA[2]
Definition: TRTParameterInterface.h:215
TRTParameterInterface::strawXPosition
double * strawXPosition[nBarrelRings]
Definition: TRTParameterInterface.h:133
TRTParameterInterface::virtualBarrelOuterRadius
double virtualBarrelOuterRadius
Definition: TRTParameterInterface.h:149
IGeoDbTagSvc.h
TRT_DetDescrDB_ParameterInterface::partTransform
virtual const GeoTrf::Transform3D & partTransform(const std::string &partName) const override
Definition: TRT_DetDescrDB_ParameterInterface.cxx:505
DistortedMaterialManager.h
TRTParameterInterface::barrelLengthOfStraw
double barrelLengthOfStraw
Definition: TRTParameterInterface.h:87
TRTParameterInterface::endCapRadialDistFromRadToOuterSupportB
double endCapRadialDistFromRadToOuterSupportB
Definition: TRTParameterInterface.h:198
TRTParameterInterface::barFlangeRMin
double barFlangeRMin
Definition: TRTParameterInterface.h:139
TRTParameterInterface::barrelYOfFirstGlobalAlignmentStraw
double * barrelYOfFirstGlobalAlignmentStraw
Definition: TRTParameterInterface.h:131
TRTParameterInterface::endCapRadialThicknessOfOuterSupportA
double endCapRadialThicknessOfOuterSupportA
Definition: TRTParameterInterface.h:194
TRT_DetDescrDB_ParameterInterface::m_scalingTable
IRDBRecordset_ptr m_scalingTable
Definition: TRT_DetDescrDB_ParameterInterface.h:38
TRTParameterInterface::endcapNumberOfStrawsInStrawLayer_AWheels
unsigned int endcapNumberOfStrawsInStrawLayer_AWheels
Definition: TRTParameterInterface.h:163
TRTParameterInterface::virtualBarrelInnerRadius
double virtualBarrelInnerRadius
Definition: TRTParameterInterface.h:148