ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetDetDescr
InDetGeoModelUtils
InDetGeoModelUtils
InDetSubDetectorFactoryBase.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef InDetGeoModelUtils_SubDetectorFactoryBase_H
6
#define InDetGeoModelUtils_SubDetectorFactoryBase_H
7
8
#include "
CxxUtils/checker_macros.h
"
9
#include "
InDetGeoModelUtils/InDetDDAthenaComps.h
"
10
#include "
InDetGeoModelUtils/InDetMaterialManager.h
"
11
12
#include <memory>
13
14
class
StoreGateSvc
;
15
class
IGeoDbTagSvc
;
16
class
IRDBAccessSvc
;
17
class
InDetMaterialManager
;
18
19
namespace
InDetDD
{
20
21
// This is the same as InDet::DetectorFactoryBase but without the
22
// inheretance of GeoVDetectorFactory and with the addition of
23
// access to the material manager.
24
25
class
SubDetectorFactoryBase
26
{
27
28
public
:
29
SubDetectorFactoryBase
(
InDetDD::AthenaComps
* athenaComps)
30
:
m_athenaComps
(athenaComps),
31
m_materialManager
(0)
32
{}
33
34
SubDetectorFactoryBase
(
InDetDD::AthenaComps
* athenaComps,
35
InDetMaterialManager
* matManager)
36
:
m_athenaComps
(athenaComps),
37
m_materialManager
(matManager)
38
{}
39
40
StoreGateSvc
*
detStore
() {
return
m_athenaComps
->detStore();}
41
42
const
IGeoDbTagSvc
*
geoDbTagSvc
()
const
{
return
std::as_const(*m_athenaComps).geoDbTagSvc();}
43
44
IRDBAccessSvc
*
rdbAccessSvc
() {
return
m_athenaComps
->rdbAccessSvc();}
45
46
InDetMaterialManager
*
materialManager
() {
return
m_materialManager
;}
47
48
//Declaring the Message method for further use
49
MsgStream&
msg
(MSG::Level lvl)
const
{
return
m_athenaComps
->msg(lvl); }
50
51
//Declaring the Method providing Verbosity Level
52
bool
msgLvl
(MSG::Level lvl)
const
{
return
m_athenaComps
->msgLvl(lvl); }
53
54
InDetDD::AthenaComps
*
getAthenaComps
() {
return
m_athenaComps
;}
55
56
private
:
57
InDetDD::AthenaComps
*
m_athenaComps
;
58
59
protected
:
60
InDetMaterialManager
*
m_materialManager
;
61
// Use this std::unique_ptr when this class owns InDetMaterialManager
62
std::unique_ptr<InDetMaterialManager>
m_materialManagerUnique
;
63
};
64
65
}
// end namespace
66
67
#endif
// InDetGeoModelUtils_SubDetectorFactoryBase_H
68
InDetDDAthenaComps.h
InDetMaterialManager.h
checker_macros.h
Define macros for attributes used to control the static checker.
IGeoDbTagSvc
Definition
IGeoDbTagSvc.h:26
IRDBAccessSvc
IRDBAccessSvc is an abstract interface to the athena service that provides the following functionalit...
Definition
IRDBAccessSvc.h:45
InDetDD::AthenaComps
Class to hold various Athena components.
Definition
InDetDDAthenaComps.h:21
InDetDD::SubDetectorFactoryBase::materialManager
InDetMaterialManager * materialManager()
Definition
InDetSubDetectorFactoryBase.h:46
InDetDD::SubDetectorFactoryBase::geoDbTagSvc
const IGeoDbTagSvc * geoDbTagSvc() const
Definition
InDetSubDetectorFactoryBase.h:42
InDetDD::SubDetectorFactoryBase::SubDetectorFactoryBase
SubDetectorFactoryBase(InDetDD::AthenaComps *athenaComps, InDetMaterialManager *matManager)
Definition
InDetSubDetectorFactoryBase.h:34
InDetDD::SubDetectorFactoryBase::m_materialManager
InDetMaterialManager * m_materialManager
Definition
InDetSubDetectorFactoryBase.h:60
InDetDD::SubDetectorFactoryBase::rdbAccessSvc
IRDBAccessSvc * rdbAccessSvc()
Definition
InDetSubDetectorFactoryBase.h:44
InDetDD::SubDetectorFactoryBase::m_athenaComps
InDetDD::AthenaComps * m_athenaComps
Definition
InDetSubDetectorFactoryBase.h:57
InDetDD::SubDetectorFactoryBase::msgLvl
bool msgLvl(MSG::Level lvl) const
Definition
InDetSubDetectorFactoryBase.h:52
InDetDD::SubDetectorFactoryBase::detStore
StoreGateSvc * detStore()
Definition
InDetSubDetectorFactoryBase.h:40
InDetDD::SubDetectorFactoryBase::getAthenaComps
InDetDD::AthenaComps * getAthenaComps()
Definition
InDetSubDetectorFactoryBase.h:54
InDetDD::SubDetectorFactoryBase::m_materialManagerUnique
std::unique_ptr< InDetMaterialManager > m_materialManagerUnique
Definition
InDetSubDetectorFactoryBase.h:62
InDetDD::SubDetectorFactoryBase::SubDetectorFactoryBase
SubDetectorFactoryBase(InDetDD::AthenaComps *athenaComps)
Definition
InDetSubDetectorFactoryBase.h:29
InDetDD::SubDetectorFactoryBase::msg
MsgStream & msg(MSG::Level lvl) const
Definition
InDetSubDetectorFactoryBase.h:49
InDetMaterialManager
InDetMaterialManager.
Definition
InDetMaterialManager.h:34
StoreGateSvc
The Athena Transient Store API.
Definition
StoreGateSvc.h:120
InDetDD
Message Stream Member.
Definition
FakeTrackBuilder.h:8
Generated on
for ATLAS Offline Software by
1.17.0