ATLAS Offline Software
Loading...
Searching...
No Matches
InDetServMatGeometryManager Class Reference

#include <InDetServMatGeometryManager.h>

Inheritance diagram for InDetServMatGeometryManager:
Collaboration diagram for InDetServMatGeometryManager:

Public Member Functions

 InDetServMatGeometryManager (InDetDD::AthenaComps *athenaComps)
 ~InDetServMatGeometryManager ()
InDetServMatGeometryManageroperator= (const InDetServMatGeometryManager &)=delete
 Delete assignment.
 InDetServMatGeometryManager (const InDetServMatGeometryManager &)=delete
 Delete copy c'tor.
InDetMaterialManagermatMgr ()
bool buildServices () const
IRDBRecordset_ptr simpleServiceTable () const
int pixelNumLayers () const
double pixelLayerRadius (int layer) const
double pixelLayerLength (int layer) const
int pixelNumSectorsForLayer (int layer) const
int pixelModulesPerStave (int layer) const
double pixelLadderBentStaveAngle (int layer) const
int pixelBentStaveNModule (int layer) const
double pixelLadderModuleDeltaZ (int layer) const
int pixelEndcapNumSectorsForLayer (int layer) const
int pixelModulesPerRing (int ring) const
int pixelModulesPerEndcapSector (int disk) const
int pixelNumDisks () const
double pixelDiskZ (int disk) const
double pixelDiskRMin (int disk) const
double pixelDiskRMax (int disk) const
double pixelDiskEOSZOffset (int disk) const
std::string pixelDiskServiceRoute (int disk) const
double pixelEnvelopeRMax () const
int pixelBarrelModuleType (int layer) const
int pixelDesignType (int moduleType) const
int pixelChipsPerModule (int moduleType) const
int pixelChipsPerModuleForDisk (int disk) const
int sctNumLayers () const
double sctLayerRadius (int layer) const
double sctLayerLength (int layer) const
int sctLayerType (int layer) const
int sctNumSectorsForLayer (int layer) const
int sctModulesPerLadder (int layer) const
int sctEndcapNumSectorsForLayer (int layer) const
int sctNumDisks () const
double sctDiskZ (int disk) const
double sctDiskRMax (int disk) const
double sctInnerSupport () const
double SupportTubeRMin (const std::string &name) const
double SupportTubeRMax (const std::string &name) const
double SupportTubeZMin (const std::string &name) const
double SupportTubeZMax (const std::string &name) const
int SupportTubeExists (const std::string &name) const
bool msgLvl (const MSG::Level lvl) const
 Test the output level.
MsgStream & msg () const
 The standard message stream.
MsgStream & msg (const MSG::Level lvl) const
 The standard message stream.
void setLevel (MSG::Level lvl)
 Change the current logging level.

Private Member Functions

int SupportTubeIndex (const std::string &name) const
void initMessaging () const
 Initialize our message level and MessageSvc.

Private Attributes

IRDBRecordset_ptr m_InDetWeights
IRDBRecordset_ptr m_PixelBarrelGeneral
IRDBRecordset_ptr m_PixelEndcapGeneral
IRDBRecordset_ptr m_PixelLayer
IRDBRecordset_ptr m_PixelDisk
IRDBRecordset_ptr m_PixelDiskRing
IRDBRecordset_ptr m_PixelStave
IRDBRecordset_ptr m_PixelRing
IRDBRecordset_ptr m_PixelModule
IRDBRecordset_ptr m_PixelReadout
IRDBRecordset_ptr m_PixelWeights
IRDBRecordset_ptr m_PixelEnvelope
IRDBRecordset_ptr m_PixelSvcRoute
IRDBRecordset_ptr m_SctBrlGeneral
IRDBRecordset_ptr m_SctBrlLayer
IRDBRecordset_ptr m_SctBrlLadder
IRDBRecordset_ptr m_SctFwdGeneral
IRDBRecordset_ptr m_SctFwdWheel
IRDBRecordset_ptr m_SctFwdDiscSupport
IRDBRecordset_ptr m_SctBrlServPerLayer
IRDBRecordset_ptr m_SctWeights
IRDBRecordset_ptr m_InDetSimpleServices
IRDBRecordset_ptr m_switches
IRDBRecordset_ptr m_scalingTable
InDetDD::AthenaCompsm_athenaComps {}
InDetMaterialManagerm_matMgr {}
std::string m_nm
 Message source name.
boost::thread_specific_ptr< MsgStream > m_msg_tls
 MsgStream instance (a std::cout like with print-out levels)
std::atomic< IMessageSvc * > m_imsg { nullptr }
 MessageSvc pointer.
std::atomic< MSG::Level > m_lvl { MSG::NIL }
 Current logging level.
std::atomic_flag m_initialized ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT
 Messaging initialized (initMessaging)

Detailed Description

Definition at line 15 of file InDetServMatGeometryManager.h.

Constructor & Destructor Documentation

◆ InDetServMatGeometryManager() [1/2]

InDetServMatGeometryManager::InDetServMatGeometryManager ( InDetDD::AthenaComps * athenaComps)

Definition at line 14 of file InDetServMatGeometryManager.cxx.

15 : AthMessaging("InDetServMatGeometryManager")
16 , m_athenaComps(athenaComps)
17{
18 ATH_MSG_DEBUG("Initializing InDetServMatGeometryManager");
19
20 const IGeoDbTagSvc *geoDbTag = m_athenaComps->geoDbTagSvc();
21 IRDBAccessSvc *rdbSvc = m_athenaComps->rdbAccessSvc();
22
23 // Get version tag and node for Pixel.
24 DecodeVersionKey pixelVersionKey(geoDbTag,"Pixel");
25 const std::string& pixelDetectorKey = pixelVersionKey.tag();
26 const std::string& pixelDetectorNode = pixelVersionKey.node();
27
28 // Get version tag and node for SCT.
29 DecodeVersionKey sctVersionKey(geoDbTag,"SCT");
30 const std::string& sctDetectorKey = sctVersionKey.tag();
31 const std::string& sctDetectorNode = sctVersionKey.node();
32
34 DecodeVersionKey indetVersionKey(geoDbTag,"InnerDetector");
35 const std::string& indetDetectorKey = indetVersionKey.tag();
36 const std::string& indetDetectorNode = indetVersionKey.node();
37
39//
40// Gets the record sets
41//
43
44 ATH_MSG_DEBUG("Retrieving Pixel Record Sets from database ...");
45 ATH_MSG_DEBUG("Pixel: Key = " << pixelDetectorKey << " Node = " << pixelDetectorNode);
46 ATH_MSG_DEBUG("SCT: Key = " << sctDetectorKey << " Node = " << sctDetectorNode);
47 ATH_MSG_DEBUG("InDet: Key = " << indetDetectorKey << " Node = " << indetDetectorNode);
48
49 m_InDetWeights = rdbSvc->getRecordsetPtr("InDetWeights", indetDetectorKey, indetDetectorNode);
50
51 m_PixelBarrelGeneral = rdbSvc->getRecordsetPtr("PixelBarrelGeneral", pixelDetectorKey, pixelDetectorNode);
52 m_PixelEndcapGeneral = rdbSvc->getRecordsetPtr("PixelEndcapGeneral", pixelDetectorKey, pixelDetectorNode);
53 m_PixelLayer = rdbSvc->getRecordsetPtr("PixelLayer", pixelDetectorKey, pixelDetectorNode);
54 m_PixelDisk = rdbSvc->getRecordsetPtr("PixelDisk", pixelDetectorKey, pixelDetectorNode);
55 m_PixelDiskRing = rdbSvc->getRecordsetPtr("PixelDiskRing", pixelDetectorKey, pixelDetectorNode);
56 m_PixelStave = rdbSvc->getRecordsetPtr("PixelStave", pixelDetectorKey, pixelDetectorNode);
57 m_PixelRing = rdbSvc->getRecordsetPtr("PixelRing", pixelDetectorKey, pixelDetectorNode);
58 m_PixelModule = rdbSvc->getRecordsetPtr("PixelModule", pixelDetectorKey, pixelDetectorNode);
59 m_PixelReadout = rdbSvc->getRecordsetPtr("PixelReadout", pixelDetectorKey, pixelDetectorNode);
60 m_PixelWeights = rdbSvc->getRecordsetPtr("PixelWeights", pixelDetectorKey, pixelDetectorNode);
61 m_PixelEnvelope = rdbSvc->getRecordsetPtr("PixelEnvelope", pixelDetectorKey, pixelDetectorNode);
62 m_PixelSvcRoute = rdbSvc->getRecordsetPtr("PixelServiceRoute", pixelDetectorKey, pixelDetectorNode);
63
64 m_SctBrlGeneral = rdbSvc->getRecordsetPtr("SSctBrlGeneral", sctDetectorKey, sctDetectorNode);
65 m_SctBrlLayer = rdbSvc->getRecordsetPtr("SSctBrlLayer", sctDetectorKey, sctDetectorNode);
66 m_SctBrlLadder = rdbSvc->getRecordsetPtr("SSctBrlLadder", sctDetectorKey, sctDetectorNode);
67 m_SctFwdGeneral = rdbSvc->getRecordsetPtr("SSctFwdGeneral", sctDetectorKey, sctDetectorNode);
68 m_SctFwdWheel = rdbSvc->getRecordsetPtr("SSctFwdWheel", sctDetectorKey, sctDetectorNode);
69 m_SctFwdDiscSupport = rdbSvc->getRecordsetPtr("SSctFwdDiscSupport", sctDetectorKey, sctDetectorNode);
70 m_SctBrlServPerLayer = rdbSvc->getRecordsetPtr("SSctBrlServPerLayer", sctDetectorKey, sctDetectorNode);
71 m_SctWeights = rdbSvc->getRecordsetPtr("SctWeights", sctDetectorKey, sctDetectorNode);
72
73 m_InDetSimpleServices = rdbSvc->getRecordsetPtr("InDetSimpleServices", indetDetectorKey, indetDetectorNode);
74
75 m_scalingTable = rdbSvc->getRecordsetPtr("InDetServMatScaling", indetDetectorKey, indetDetectorNode);
76
77 m_switches = rdbSvc->getRecordsetPtr("InDetServSwitches", indetDetectorKey, indetDetectorNode);
78
79 m_matMgr = new InDetMaterialManager("InDetServMatMaterialManager", m_athenaComps);
80 m_matMgr->addWeightTable(m_InDetWeights, "indet");
81 m_matMgr->addWeightTable(m_PixelWeights, "pix");
82 m_matMgr->addWeightTable(m_SctWeights, "sct");
83 m_matMgr->addScalingTable(m_scalingTable);
84
85}
#define ATH_MSG_DEBUG(x)
AthMessaging()
Default constructor:
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.

◆ ~InDetServMatGeometryManager()

InDetServMatGeometryManager::~InDetServMatGeometryManager ( )

Definition at line 87 of file InDetServMatGeometryManager.cxx.

88{
89 delete m_matMgr;
90}

◆ InDetServMatGeometryManager() [2/2]

InDetServMatGeometryManager::InDetServMatGeometryManager ( const InDetServMatGeometryManager & )
delete

Delete copy c'tor.

Member Function Documentation

◆ buildServices()

bool InDetServMatGeometryManager::buildServices ( ) const

Definition at line 93 of file InDetServMatGeometryManager.cxx.

94{
95 try {
96 if(!(*m_switches)[0]->isFieldNull("BUILDSERVICES")) {
97 return (*m_switches)[0]->getInt("BUILDSERVICES");
98 }
99 }
100 catch(std::runtime_error&) {
101 ATH_MSG_DEBUG("The switches table has no BUILDSERVICES column");
102 }
103 return false;
104}

◆ initMessaging()

void AthMessaging::initMessaging ( ) const
privateinherited

Initialize our message level and MessageSvc.

This method should only be called once.

Definition at line 39 of file AthMessaging.cxx.

40{
42 // If user did not set an explicit level, set a default
43 if (m_lvl == MSG::NIL) {
44 m_lvl = m_imsg ?
45 static_cast<MSG::Level>( m_imsg.load()->outputLevel(m_nm) ) :
46 MSG::INFO;
47 }
48}
std::string m_nm
Message source name.
std::atomic< IMessageSvc * > m_imsg
MessageSvc pointer.
std::atomic< MSG::Level > m_lvl
Current logging level.
IMessageSvc * getMessageSvc(bool quiet=false)

◆ matMgr()

InDetMaterialManager * InDetServMatGeometryManager::matMgr ( )
inline

Definition at line 29 of file InDetServMatGeometryManager.h.

29{return m_matMgr;}

◆ msg() [1/2]

MsgStream & AthMessaging::msg ( ) const
inlineinherited

The standard message stream.

Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.

Definition at line 167 of file AthMessaging.h.

168{
169 MsgStream* ms = m_msg_tls.get();
170 if (!ms) {
171 if (!m_initialized.test_and_set()) initMessaging();
172 ms = new MsgStream(m_imsg,m_nm);
173 m_msg_tls.reset( ms );
174 }
175
176 ms->setLevel (m_lvl);
177 return *ms;
178}
boost::thread_specific_ptr< MsgStream > m_msg_tls
MsgStream instance (a std::cout like with print-out levels)
void initMessaging() const
Initialize our message level and MessageSvc.

◆ msg() [2/2]

MsgStream & AthMessaging::msg ( const MSG::Level lvl) const
inlineinherited

The standard message stream.

Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.

Definition at line 182 of file AthMessaging.h.

183{ return msg() << lvl; }
MsgStream & msg() const
The standard message stream.

◆ msgLvl()

bool AthMessaging::msgLvl ( const MSG::Level lvl) const
inlineinherited

Test the output level.

Parameters
lvlThe message level to test against
Returns
boolean Indicating if messages at given level will be printed
Return values
trueMessages at level "lvl" will be printed

Definition at line 151 of file AthMessaging.h.

152{
153 // If user did not set explicit message level we have to initialize
154 // the messaging and retrieve the default via the MessageSvc.
155 if (m_lvl==MSG::NIL && !m_initialized.test_and_set()) initMessaging();
156
157 if (m_lvl <= lvl) {
158 msg() << lvl;
159 return true;
160 } else {
161 return false;
162 }
163}

◆ operator=()

InDetServMatGeometryManager & InDetServMatGeometryManager::operator= ( const InDetServMatGeometryManager & )
delete

Delete assignment.

◆ pixelBarrelModuleType()

int InDetServMatGeometryManager::pixelBarrelModuleType ( int layer) const

Definition at line 338 of file InDetServMatGeometryManager.cxx.

339{
340 return (*m_PixelLayer)[layer]->getInt("MODULETYPE");
341}
@ layer
Definition HitInfo.h:79

◆ pixelBentStaveNModule()

int InDetServMatGeometryManager::pixelBentStaveNModule ( int layer) const

Definition at line 198 of file InDetServMatGeometryManager.cxx.

199{
200 int staveIndex = (*m_PixelLayer)[layer]->getInt("STAVEINDEX");
201 try {
202 if(!(*m_PixelStave)[staveIndex]->isFieldNull("BENTSTAVENMODULE")) {
203 return (*m_PixelStave)[staveIndex]->getDouble("BENTSTAVENMODULE");
204 }
205 }
206 catch(std::runtime_error&) {
207 ATH_MSG_DEBUG("No value for the BENTSTAVEMODULE column in the PixelStave table record " << staveIndex);
208 }
209 return 0.;
210}

◆ pixelChipsPerModule()

int InDetServMatGeometryManager::pixelChipsPerModule ( int moduleType) const

Definition at line 348 of file InDetServMatGeometryManager.cxx.

349{
350 int nChipsEta = (*m_PixelReadout)[moduleType]->getInt("NCHIPSETA");
351 int nChipsPhi = (*m_PixelReadout)[moduleType]->getInt("NCHIPSPHI");
352 return nChipsEta*nChipsPhi;
353}

◆ pixelChipsPerModuleForDisk()

int InDetServMatGeometryManager::pixelChipsPerModuleForDisk ( int disk) const

Definition at line 246 of file InDetServMatGeometryManager.cxx.

247{
248 int sumChips = 0;
249 int sumModules = 0;
250 for(const auto& diskRing : *m_PixelDiskRing) {
251 int disk = diskRing->getInt("DISK");
252 if (disk == layer) {
253 int ring = diskRing->getInt("RING");
254 int moduleType = diskRing->getInt("MODULETYPE");
255 int nModules = pixelModulesPerRing(ring);
256 sumModules += nModules;
257 sumChips += nModules * pixelChipsPerModule(moduleType);
258 }
259 }
260 if(sumModules==0) return 0;
261 if (sumChips % sumModules == 0) return sumChips/sumModules;
262 else return 1 + sumChips/sumModules; // round to larger integer
263}
int pixelChipsPerModule(int moduleType) const

◆ pixelDesignType()

int InDetServMatGeometryManager::pixelDesignType ( int moduleType) const

Definition at line 343 of file InDetServMatGeometryManager.cxx.

344{
345 return (*m_PixelModule)[moduleType]->getInt("DESIGNTYPE");
346}

◆ pixelDiskEOSZOffset()

double InDetServMatGeometryManager::pixelDiskEOSZOffset ( int disk) const

Definition at line 302 of file InDetServMatGeometryManager.cxx.

303{
304 try {
305 if(disk >=0
306 && static_cast<unsigned>(disk) < m_PixelSvcRoute->size()
307 && !(*m_PixelSvcRoute)[disk]->isFieldNull("EOSZOFFSET")) {
308 return (*m_PixelSvcRoute)[disk]->getDouble("EOSZOFFSET");
309 }
310 }
311 catch(std::runtime_error&) {
312 ATH_MSG_DEBUG("No EOSZOFFSET value for the PixelSvcRoute table record " << disk);
313 }
314 return 0.0;
315}

◆ pixelDiskRMax()

double InDetServMatGeometryManager::pixelDiskRMax ( int disk) const

Definition at line 290 of file InDetServMatGeometryManager.cxx.

291{
292 std::string route = pixelDiskServiceRoute(disk);
293 if(route=="StdRoute")
294 return (*m_PixelDisk)[disk]->getDouble("RMAX") * Gaudi::Units::mm + 11*Gaudi::Units::mm;
295
296 // support structures - SUP3RMAX is always furthest from centre
297 return (*m_PixelDisk)[disk]->getDouble("SUP3RMAX") * Gaudi::Units::mm;
298
299}
std::string pixelDiskServiceRoute(int disk) const

◆ pixelDiskRMin()

double InDetServMatGeometryManager::pixelDiskRMin ( int disk) const

Definition at line 278 of file InDetServMatGeometryManager.cxx.

279{
280 std::string route = pixelDiskServiceRoute(disk);
281 if(route=="StdRoute")
282 return (*m_PixelDisk)[disk]->getDouble("RMIN") * Gaudi::Units::mm - 11*Gaudi::Units::mm;
283
284 // support structures - SUP1RMIN is always closest to centre
285 return (*m_PixelDisk)[disk]->getDouble("SUP1RMIN") * Gaudi::Units::mm;
286
287}

◆ pixelDiskServiceRoute()

std::string InDetServMatGeometryManager::pixelDiskServiceRoute ( int disk) const

Definition at line 318 of file InDetServMatGeometryManager.cxx.

319{
320 try {
321 if(disk >=0
322 && static_cast<unsigned>(disk) < m_PixelSvcRoute->size()
323 && !(*m_PixelSvcRoute)[disk]->isFieldNull("SERVICEROUTE")) {
324 return (*m_PixelSvcRoute)[disk]->getString("SERVICEROUTE");
325 }
326 }
327 catch (std::runtime_error&) {
328 ATH_MSG_DEBUG("No SERVICEROUTE value for the PixelSvcRoute table record " << disk);
329 }
330 return "StdRoute";
331}

◆ pixelDiskZ()

double InDetServMatGeometryManager::pixelDiskZ ( int disk) const

Definition at line 272 of file InDetServMatGeometryManager.cxx.

273{
274 return (*m_PixelDisk)[disk]->getDouble("ZDISK") * Gaudi::Units::mm;
275}

◆ pixelEndcapNumSectorsForLayer()

int InDetServMatGeometryManager::pixelEndcapNumSectorsForLayer ( int layer) const

Definition at line 219 of file InDetServMatGeometryManager.cxx.

220{
221 if(!(*m_PixelDisk)[layer]->isFieldNull("NSECTORS")) {
222 return (*m_PixelDisk)[layer]->getInt("NSECTORS");
223 }
224 return 0;
225}

◆ pixelEnvelopeRMax()

double InDetServMatGeometryManager::pixelEnvelopeRMax ( ) const

Definition at line 333 of file InDetServMatGeometryManager.cxx.

334{
335 return (*m_PixelEnvelope)[0]->getDouble("RMAX") * Gaudi::Units::mm;
336}

◆ pixelLadderBentStaveAngle()

double InDetServMatGeometryManager::pixelLadderBentStaveAngle ( int layer) const

Definition at line 184 of file InDetServMatGeometryManager.cxx.

185{
186 int staveIndex = (*m_PixelLayer)[layer]->getInt("STAVEINDEX");
187 try {
188 if(!(*m_PixelStave)[staveIndex]->isFieldNull("BENTSTAVEANGLE")) {
189 return (*m_PixelStave)[staveIndex]->getDouble("BENTSTAVEANGLE");
190 }
191 }
192 catch(std::runtime_error&) {
193 ATH_MSG_DEBUG("No value for the BENTSTAVEANGLE column in the PixelStave table record " << staveIndex);
194 }
195 return 0.;
196}

◆ pixelLadderModuleDeltaZ()

double InDetServMatGeometryManager::pixelLadderModuleDeltaZ ( int layer) const

Definition at line 212 of file InDetServMatGeometryManager.cxx.

213{
214 int staveIndex = (*m_PixelLayer)[layer]->getInt("STAVEINDEX");
215 return (*m_PixelStave)[staveIndex]->getDouble("MODULEDZ");
216}

◆ pixelLayerLength()

double InDetServMatGeometryManager::pixelLayerLength ( int layer) const

Definition at line 164 of file InDetServMatGeometryManager.cxx.

165{
166 int staveIndex = (*m_PixelLayer)[layer]->getInt("STAVEINDEX");
167 return (*m_PixelStave)[staveIndex]->getDouble("ENVLENGTH") * Gaudi::Units::mm;
168}

◆ pixelLayerRadius()

double InDetServMatGeometryManager::pixelLayerRadius ( int layer) const

Definition at line 158 of file InDetServMatGeometryManager.cxx.

159{
160 return (*m_PixelLayer)[layer]->getDouble("RLAYER") * Gaudi::Units::mm;
161}

◆ pixelModulesPerEndcapSector()

int InDetServMatGeometryManager::pixelModulesPerEndcapSector ( int disk) const

Definition at line 232 of file InDetServMatGeometryManager.cxx.

233{
234 int nModulesDisk = 0;
235 for(const auto& diskRing : *m_PixelDiskRing) {
236 int disk = diskRing->getInt("DISK");
237 if (disk == layer) {
238 int ring = diskRing->getInt("RING");
239 nModulesDisk += pixelModulesPerRing( ring);
240 }
241 }
242 if(pixelEndcapNumSectorsForLayer(layer)==0) return 0;
243 return nModulesDisk / pixelEndcapNumSectorsForLayer(layer);
244}

◆ pixelModulesPerRing()

int InDetServMatGeometryManager::pixelModulesPerRing ( int ring) const

Definition at line 227 of file InDetServMatGeometryManager.cxx.

228{
229 return (*m_PixelRing)[ring]->getInt("NMODULE");
230}

◆ pixelModulesPerStave()

int InDetServMatGeometryManager::pixelModulesPerStave ( int layer) const

Definition at line 177 of file InDetServMatGeometryManager.cxx.

178{
179 int staveIndex = (*m_PixelLayer)[layer]->getInt("STAVEINDEX");
180 return (*m_PixelStave)[staveIndex]->getInt("NMODULE");
181}

◆ pixelNumDisks()

int InDetServMatGeometryManager::pixelNumDisks ( ) const

Definition at line 266 of file InDetServMatGeometryManager.cxx.

267{
268 return (*m_PixelEndcapGeneral)[0]->getInt("NDISK");
269}

◆ pixelNumLayers()

int InDetServMatGeometryManager::pixelNumLayers ( ) const

Definition at line 152 of file InDetServMatGeometryManager.cxx.

153{
154 return (*m_PixelBarrelGeneral)[0]->getInt("NLAYER");
155}

◆ pixelNumSectorsForLayer()

int InDetServMatGeometryManager::pixelNumSectorsForLayer ( int layer) const

Definition at line 171 of file InDetServMatGeometryManager.cxx.

172{
173 return (*m_PixelLayer)[layer]->getInt("NSECTORS");
174}

◆ sctDiskRMax()

double InDetServMatGeometryManager::sctDiskRMax ( int disk) const

Definition at line 411 of file InDetServMatGeometryManager.cxx.

412{
413 return (*m_SctFwdDiscSupport)[disk]->getDouble("OUTERRADIUS") * Gaudi::Units::mm;
414}

◆ sctDiskZ()

double InDetServMatGeometryManager::sctDiskZ ( int disk) const

Definition at line 405 of file InDetServMatGeometryManager.cxx.

406{
407 return (*m_SctFwdWheel)[disk]->getDouble("ZPOSITION") * Gaudi::Units::mm;
408}

◆ sctEndcapNumSectorsForLayer()

int InDetServMatGeometryManager::sctEndcapNumSectorsForLayer ( int layer) const

Definition at line 393 of file InDetServMatGeometryManager.cxx.

394{
395 return 32; // FIXME: hardwired number, should go to text file and DB
396}

◆ sctInnerSupport()

double InDetServMatGeometryManager::sctInnerSupport ( ) const

Definition at line 416 of file InDetServMatGeometryManager.cxx.

417{
418 return (*m_SctBrlServPerLayer)[0]->getDouble("SUPPORTCYLINNERRAD") * Gaudi::Units::mm;
419}

◆ sctLayerLength()

double InDetServMatGeometryManager::sctLayerLength ( int layer) const

Definition at line 368 of file InDetServMatGeometryManager.cxx.

369{
370 return (*m_SctBrlLayer)[layer]->getDouble("CYLLENGTH") * Gaudi::Units::mm;
371}

◆ sctLayerRadius()

double InDetServMatGeometryManager::sctLayerRadius ( int layer) const

Definition at line 362 of file InDetServMatGeometryManager.cxx.

363{
364 return (*m_SctBrlLayer)[layer]->getDouble("RADIUS") * Gaudi::Units::mm;
365}

◆ sctLayerType()

int InDetServMatGeometryManager::sctLayerType ( int layer) const

Definition at line 374 of file InDetServMatGeometryManager.cxx.

375{
376 int ladType = (*m_SctBrlLayer)[layer]->getInt("LADDERTYPE");
377 return (*m_SctBrlLadder)[ladType]->getInt("MODTYPE");
378}

◆ sctModulesPerLadder()

int InDetServMatGeometryManager::sctModulesPerLadder ( int layer) const

Definition at line 386 of file InDetServMatGeometryManager.cxx.

387{
388 int ladType = (*m_SctBrlLayer)[layer]->getInt("LADDERTYPE");
389 return (*m_SctBrlLadder)[ladType]->getInt("NUMPERLADDER");
390}

◆ sctNumDisks()

int InDetServMatGeometryManager::sctNumDisks ( ) const

Definition at line 399 of file InDetServMatGeometryManager.cxx.

400{
401 return (*m_SctFwdGeneral)[0]->getInt("NUMWHEELS");
402}

◆ sctNumLayers()

int InDetServMatGeometryManager::sctNumLayers ( ) const

Definition at line 356 of file InDetServMatGeometryManager.cxx.

357{
358 return (*m_SctBrlGeneral)[0]->getInt("NUMLAYERS");
359}

◆ sctNumSectorsForLayer()

int InDetServMatGeometryManager::sctNumSectorsForLayer ( int layer) const

Definition at line 381 of file InDetServMatGeometryManager.cxx.

382{
383 return (*m_SctBrlLayer)[layer]->getInt("SKISPERLAYER");
384}

◆ setLevel()

void AthMessaging::setLevel ( MSG::Level lvl)
inherited

Change the current logging level.

Use this rather than msg().setLevel() for proper operation with MT.

Definition at line 28 of file AthMessaging.cxx.

29{
30 m_lvl = lvl;
31}

◆ simpleServiceTable()

IRDBRecordset_ptr InDetServMatGeometryManager::simpleServiceTable ( ) const
inline

Definition at line 38 of file InDetServMatGeometryManager.h.

◆ SupportTubeExists()

int InDetServMatGeometryManager::SupportTubeExists ( const std::string & name) const

Definition at line 144 of file InDetServMatGeometryManager.cxx.

145{
146 if (SupportTubeIndex(name) != -1) return 1;
147 return 0;
148}
int SupportTubeIndex(const std::string &name) const

◆ SupportTubeIndex()

int InDetServMatGeometryManager::SupportTubeIndex ( const std::string & name) const
private

Definition at line 106 of file InDetServMatGeometryManager.cxx.

107{
108 int i=0;
109 for(const auto& rec : *m_InDetSimpleServices) {
110 if(rec->getString("NAME")==name) return i;
111 ++i;
112 }
113 return -1;
114}

◆ SupportTubeRMax()

double InDetServMatGeometryManager::SupportTubeRMax ( const std::string & name) const

Definition at line 123 of file InDetServMatGeometryManager.cxx.

124{
125 int ind = SupportTubeIndex(name);
126 if (ind >= 0) return (*m_InDetSimpleServices)[ind]->getDouble("RMAX");
127 return 0;
128}

◆ SupportTubeRMin()

double InDetServMatGeometryManager::SupportTubeRMin ( const std::string & name) const

Definition at line 116 of file InDetServMatGeometryManager.cxx.

117{
118 int ind = SupportTubeIndex(name);
119 if (ind >= 0) return (*m_InDetSimpleServices)[ind]->getDouble("RMIN");
120 return 0;
121}

◆ SupportTubeZMax()

double InDetServMatGeometryManager::SupportTubeZMax ( const std::string & name) const

Definition at line 137 of file InDetServMatGeometryManager.cxx.

138{
139 int ind = SupportTubeIndex(name);
140 if (ind >= 0) (*m_InDetSimpleServices)[ind]->getDouble("ZMAX");
141 return 0;
142}

◆ SupportTubeZMin()

double InDetServMatGeometryManager::SupportTubeZMin ( const std::string & name) const

Definition at line 130 of file InDetServMatGeometryManager.cxx.

131{
132 int ind = SupportTubeIndex(name);
133 if (ind >= 0) (*m_InDetSimpleServices)[ind]->getDouble("ZMIN");
134 return 0;
135}

Member Data Documentation

◆ ATLAS_THREAD_SAFE

std::atomic_flag m_initialized AthMessaging::ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT
mutableprivateinherited

Messaging initialized (initMessaging)

Definition at line 141 of file AthMessaging.h.

◆ m_athenaComps

InDetDD::AthenaComps* InDetServMatGeometryManager::m_athenaComps {}
private

Definition at line 174 of file InDetServMatGeometryManager.h.

174{};

◆ m_imsg

std::atomic<IMessageSvc*> AthMessaging::m_imsg { nullptr }
mutableprivateinherited

MessageSvc pointer.

Definition at line 135 of file AthMessaging.h.

135{ nullptr };

◆ m_InDetSimpleServices

IRDBRecordset_ptr InDetServMatGeometryManager::m_InDetSimpleServices
private

Definition at line 167 of file InDetServMatGeometryManager.h.

◆ m_InDetWeights

IRDBRecordset_ptr InDetServMatGeometryManager::m_InDetWeights
private

Definition at line 143 of file InDetServMatGeometryManager.h.

◆ m_lvl

std::atomic<MSG::Level> AthMessaging::m_lvl { MSG::NIL }
mutableprivateinherited

Current logging level.

Definition at line 138 of file AthMessaging.h.

138{ MSG::NIL };

◆ m_matMgr

InDetMaterialManager* InDetServMatGeometryManager::m_matMgr {}
private

Definition at line 177 of file InDetServMatGeometryManager.h.

177{};

◆ m_msg_tls

boost::thread_specific_ptr<MsgStream> AthMessaging::m_msg_tls
mutableprivateinherited

MsgStream instance (a std::cout like with print-out levels)

Definition at line 132 of file AthMessaging.h.

◆ m_nm

std::string AthMessaging::m_nm
privateinherited

Message source name.

Definition at line 129 of file AthMessaging.h.

◆ m_PixelBarrelGeneral

IRDBRecordset_ptr InDetServMatGeometryManager::m_PixelBarrelGeneral
private

Definition at line 145 of file InDetServMatGeometryManager.h.

◆ m_PixelDisk

IRDBRecordset_ptr InDetServMatGeometryManager::m_PixelDisk
private

Definition at line 148 of file InDetServMatGeometryManager.h.

◆ m_PixelDiskRing

IRDBRecordset_ptr InDetServMatGeometryManager::m_PixelDiskRing
private

Definition at line 149 of file InDetServMatGeometryManager.h.

◆ m_PixelEndcapGeneral

IRDBRecordset_ptr InDetServMatGeometryManager::m_PixelEndcapGeneral
private

Definition at line 146 of file InDetServMatGeometryManager.h.

◆ m_PixelEnvelope

IRDBRecordset_ptr InDetServMatGeometryManager::m_PixelEnvelope
private

Definition at line 155 of file InDetServMatGeometryManager.h.

◆ m_PixelLayer

IRDBRecordset_ptr InDetServMatGeometryManager::m_PixelLayer
private

Definition at line 147 of file InDetServMatGeometryManager.h.

◆ m_PixelModule

IRDBRecordset_ptr InDetServMatGeometryManager::m_PixelModule
private

Definition at line 152 of file InDetServMatGeometryManager.h.

◆ m_PixelReadout

IRDBRecordset_ptr InDetServMatGeometryManager::m_PixelReadout
private

Definition at line 153 of file InDetServMatGeometryManager.h.

◆ m_PixelRing

IRDBRecordset_ptr InDetServMatGeometryManager::m_PixelRing
private

Definition at line 151 of file InDetServMatGeometryManager.h.

◆ m_PixelStave

IRDBRecordset_ptr InDetServMatGeometryManager::m_PixelStave
private

Definition at line 150 of file InDetServMatGeometryManager.h.

◆ m_PixelSvcRoute

IRDBRecordset_ptr InDetServMatGeometryManager::m_PixelSvcRoute
private

Definition at line 156 of file InDetServMatGeometryManager.h.

◆ m_PixelWeights

IRDBRecordset_ptr InDetServMatGeometryManager::m_PixelWeights
private

Definition at line 154 of file InDetServMatGeometryManager.h.

◆ m_scalingTable

IRDBRecordset_ptr InDetServMatGeometryManager::m_scalingTable
private

Definition at line 171 of file InDetServMatGeometryManager.h.

◆ m_SctBrlGeneral

IRDBRecordset_ptr InDetServMatGeometryManager::m_SctBrlGeneral
private

Definition at line 158 of file InDetServMatGeometryManager.h.

◆ m_SctBrlLadder

IRDBRecordset_ptr InDetServMatGeometryManager::m_SctBrlLadder
private

Definition at line 160 of file InDetServMatGeometryManager.h.

◆ m_SctBrlLayer

IRDBRecordset_ptr InDetServMatGeometryManager::m_SctBrlLayer
private

Definition at line 159 of file InDetServMatGeometryManager.h.

◆ m_SctBrlServPerLayer

IRDBRecordset_ptr InDetServMatGeometryManager::m_SctBrlServPerLayer
private

Definition at line 164 of file InDetServMatGeometryManager.h.

◆ m_SctFwdDiscSupport

IRDBRecordset_ptr InDetServMatGeometryManager::m_SctFwdDiscSupport
private

Definition at line 163 of file InDetServMatGeometryManager.h.

◆ m_SctFwdGeneral

IRDBRecordset_ptr InDetServMatGeometryManager::m_SctFwdGeneral
private

Definition at line 161 of file InDetServMatGeometryManager.h.

◆ m_SctFwdWheel

IRDBRecordset_ptr InDetServMatGeometryManager::m_SctFwdWheel
private

Definition at line 162 of file InDetServMatGeometryManager.h.

◆ m_SctWeights

IRDBRecordset_ptr InDetServMatGeometryManager::m_SctWeights
private

Definition at line 165 of file InDetServMatGeometryManager.h.

◆ m_switches

IRDBRecordset_ptr InDetServMatGeometryManager::m_switches
private

Definition at line 169 of file InDetServMatGeometryManager.h.


The documentation for this class was generated from the following files: