13#include "GaudiKernel/SystemOfUnits.h"
20 if (
msgLvl(MSG::DEBUG))
msg(MSG::DEBUG) <<
"Initializing InDetServMatGeometryManager" <<
endmsg;
27 const std::string& pixelDetectorKey = pixelVersionKey.
tag();
28 const std::string& pixelDetectorNode = pixelVersionKey.
node();
32 const std::string& sctDetectorKey = sctVersionKey.
tag();
33 const std::string& sctDetectorNode = sctVersionKey.
node();
37 const std::string& indetDetectorKey = indetVersionKey.
tag();
38 const std::string& indetDetectorNode = indetVersionKey.
node();
47 msg(MSG::DEBUG) <<
"Retrieving Pixel Record Sets from database ..." <<
endmsg;
48 msg(MSG::DEBUG) <<
"Pixel: Key = " << pixelDetectorKey <<
" Node = " << pixelDetectorNode <<
endmsg;
49 msg(MSG::DEBUG) <<
"SCT: Key = " << sctDetectorKey <<
" Node = " << sctDetectorNode <<
endmsg;
50 msg(MSG::DEBUG) <<
"InDet: Key = " << indetDetectorKey <<
" Node = " << indetDetectorNode <<
endmsg;
99 if (
db()->testField(
"",
"BUILDSERVICES")) {
100 return db()->
getInt(
"",
"BUILDSERVICES");
194 if (!
db()->testFieldTxt(
m_PixelStave,
"BENTSTAVEANGLE"))
return 0;
201 if (!
db()->testFieldTxt(
m_PixelStave,
"BENTSTAVENMODULE"))
return 0;
226 int nModulesDisk = 0;
229 if ( disk == layer) {
245 if ( disk == layer) {
249 sumModules += nModules;
253 if(sumModules==0)
return 0;
254 if (sumChips % sumModules == 0)
return sumChips/sumModules;
255 else return 1 + sumChips/sumModules;
274 if(route==
"StdRoute")
286 if(route==
"StdRoute")
340 return nChipsEta*nChipsPhi;
Definition of the abstract IRDBAccessSvc interface.
Definition of the abstract IRDBRecord interface.
Definition of the abstract IRDBRecordset interface.
This is a helper class to query the version tags from GeoModelSvc and determine the appropriate tag a...
const std::string & tag() const
Return version tag.
const std::string & node() const
Return the version node.
virtual std::string getString(IRDBRecordset_ptr recordSet, const std::string &name, int index=0) const =0
virtual int getInt(IRDBRecordset_ptr recordSet, const std::string &name, int index=0) const =0
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.
virtual unsigned int getTableSize(IRDBRecordset_ptr recordSet) const =0
IRDBAccessSvc is an abstract interface to the athena service that provides the following functionalit...
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.
Class to hold various Athena components.
IRDBRecordset_ptr m_SctFwdGeneral
IRDBRecordset_ptr m_PixelReadout
bool msgLvl(MSG::Level lvl) const
int pixelBentStaveNModule(int layer) const
int sctEndcapNumSectorsForLayer(int layer) const
double sctLayerRadius(int layer) const
int sctLayerType(int layer) const
double pixelEnvelopeRMax() const
IRDBRecordset_ptr m_PixelEndcapGeneral
IRDBRecordset_ptr m_PixelSvcRoute
IRDBRecordset_ptr m_InDetWeights
int pixelModulesPerStave(int layer) const
double sctDiskRMax(int disk) const
IRDBRecordset_ptr m_PixelEnvelope
IRDBRecordset_ptr m_PixelWeights
int SupportTubeExists(const std::string &name) const
bool buildServices() const
int SupportTubeIndex(const std::string &name) const
int pixelNumDisks() const
double sctInnerSupport() const
double sctLayerLength(int layer) const
double SupportTubeZMin(const std::string &name) const
IRDBRecordset_ptr m_switches
double pixelLadderModuleDeltaZ(int layer) const
int pixelChipsPerModuleForDisk(int disk) const
IRDBRecordset_ptr m_PixelDiskRing
IRDBRecordset_ptr m_SctFwdWheel
IRDBRecordset_ptr m_SctBrlGeneral
double pixelLayerLength(int layer) const
int pixelModulesPerRing(int ring) const
IRDBRecordset_ptr m_PixelRing
double pixelDiskZ(int disk) const
IRDBRecordset_ptr m_SctWeights
double sctDiskZ(int disk) const
IRDBRecordset_ptr m_InDetSimpleServices
const IGeometryDBSvc * db() const
int pixelNumSectorsForLayer(int layer) const
IRDBRecordset_ptr m_PixelDisk
IRDBRecordset_ptr m_SctBrlLayer
IRDBRecordset_ptr m_PixelBarrelGeneral
int sctModulesPerLadder(int layer) const
int pixelEndcapNumSectorsForLayer(int layer) const
InDetMaterialManager * m_matMgr
int pixelDesignType(int moduleType) const
InDetDD::AthenaComps * m_athenaComps
int pixelChipsPerModule(int moduleType) const
double pixelDiskRMax(int disk) const
IRDBRecordset_ptr m_PixelModule
double pixelDiskRMin(int disk) const
IRDBRecordset_ptr m_SctBrlLadder
int pixelModulesPerEndcapSector(int disk) const
double SupportTubeRMax(const std::string &name) const
~InDetServMatGeometryManager()
int pixelBarrelModuleType(int layer) const
int pixelNumLayers() const
IRDBRecordset_ptr m_PixelLayer
double SupportTubeZMax(const std::string &name) const
double pixelDiskEOSZOffset(int disk) const
InDetServMatGeometryManager(InDetDD::AthenaComps *athenaComps)
std::string pixelDiskServiceRoute(int disk) const
IRDBRecordset_ptr m_SctFwdDiscSupport
int sctNumSectorsForLayer(int layer) const
IRDBRecordset_ptr m_scalingTable
double pixelLayerRadius(int layer) const
IRDBRecordset_ptr m_PixelStave
double SupportTubeRMin(const std::string &name) const
double pixelLadderBentStaveAngle(int layer) const
IRDBRecordset_ptr m_SctBrlServPerLayer