ATLAS Offline Software
SCT_Barrel.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef SCT_GEOMODEL_SCT_BARREL_H
6 #define SCT_GEOMODEL_SCT_BARREL_H
7 
9 
10 class GeoVPhysVol;
11 class GeoFullPhysVol;
12 class GeoLogVol;
13 class SCT_Identifier;
14 
15 
17 {
18 
19 public:
20  SCT_Barrel(const std::string & name,
21  InDetDD::SCT_DetectorManager* detectorManager,
22  SCT_GeometryManager* geometryManager,
23  SCT_MaterialManager* materials,
24  GeoModelIO::ReadGeoModel* sqliteReader,
25  std::shared_ptr<std::map<std::string, GeoFullPhysVol*>> mapFPV,
26  std::shared_ptr<std::map<std::string, GeoAlignableTransform*>> mapAX);
27  virtual GeoVPhysVol * build(SCT_Identifier id);
28 
29 public:
30  int numLayers() const {return m_numLayers;}
31  double innerRadius() const {return m_innerRadius;}
32  double outerRadius() const {return m_outerRadius;}
33  double length() const {return m_length;}
34 
35 private:
36  void getParameters();
37  virtual const GeoLogVol * preBuild();
38 
39  void buildThermalShield(GeoFullPhysVol * parent);
40  void buildEMIShield(GeoFullPhysVol * parent);
41 
42 
43  int m_numLayers = 0;
44 
45  double m_innerRadius = 0.0;
46  double m_outerRadius = 0.0;
47  double m_length = 0.0;
48 
50 
51  double m_zClearance = 0.0;
52 
53  bool m_isOldGeometry = false;
54 
55 };
56 
57 #endif // SCT_GEOMODEL_SCT_BARREL_H
SCT_Barrel::SCT_Barrel
SCT_Barrel(const std::string &name, InDetDD::SCT_DetectorManager *detectorManager, SCT_GeometryManager *geometryManager, SCT_MaterialManager *materials, GeoModelIO::ReadGeoModel *sqliteReader, std::shared_ptr< std::map< std::string, GeoFullPhysVol * >> mapFPV, std::shared_ptr< std::map< std::string, GeoAlignableTransform * >> mapAX)
Definition: SCT_Barrel.cxx:42
SCT_Barrel::m_zClearance
double m_zClearance
Definition: SCT_Barrel.h:51
SCT_MaterialManager
Definition: SCT_MaterialManager.h:21
SCT_Identifier
Definition: SCT_Identifier.h:12
SCT_Barrel::m_outerRadius
double m_outerRadius
Definition: SCT_Barrel.h:46
SCT_Barrel::m_isOldGeometry
bool m_isOldGeometry
Definition: SCT_Barrel.h:53
InDetDD::SCT_DetectorManager
Definition: SCT_DetectorManager.h:49
SCT_Barrel::preBuild
virtual const GeoLogVol * preBuild()
Definition: SCT_Barrel.cxx:84
SCT_Barrel::getParameters
void getParameters()
Definition: SCT_Barrel.cxx:59
SCT_ComponentFactory.h
SCT_Barrel::build
virtual GeoVPhysVol * build(SCT_Identifier id)
Definition: SCT_Barrel.cxx:94
SCT_Barrel::outerRadius
double outerRadius() const
Definition: SCT_Barrel.h:32
SCT_Barrel::m_length
double m_length
Definition: SCT_Barrel.h:47
SCT_Barrel
Definition: SCT_Barrel.h:17
test_pyathena.parent
parent
Definition: test_pyathena.py:15
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
SCT_Barrel::buildThermalShield
void buildThermalShield(GeoFullPhysVol *parent)
Definition: SCT_Barrel.cxx:196
SCT_Barrel::length
double length() const
Definition: SCT_Barrel.h:33
SCT_Barrel::m_thermalShieldEndWallThickness
double m_thermalShieldEndWallThickness
Definition: SCT_Barrel.h:49
SCT_Barrel::innerRadius
double innerRadius() const
Definition: SCT_Barrel.h:31
SCT_UniqueComponentFactory
Definition: SCT_ComponentFactory.h:76
SCT_Barrel::numLayers
int numLayers() const
Definition: SCT_Barrel.h:30
SCT_Barrel::buildEMIShield
void buildEMIShield(GeoFullPhysVol *parent)
Definition: SCT_Barrel.cxx:256
SCT_Barrel::m_numLayers
int m_numLayers
Definition: SCT_Barrel.h:43
SCT_Barrel::m_innerRadius
double m_innerRadius
Definition: SCT_Barrel.h:45
SCT_GeometryManager
Definition: SCT_GeometryManager.h:25