ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetDetDescr
SCT_GeoModel
src
SCT_FwdModule.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef SCT_GEOMODEL_SCT_FWDMODULE_H
6
#define SCT_GEOMODEL_SCT_FWDMODULE_H
7
8
#include "
SCT_ComponentFactory.h
"
9
10
#include "
SCT_FwdSensor.h
"
11
12
#include <memory>
13
#include <string>
14
15
class
SCT_Identifier
;
16
class
SCT_FwdModuleConnector
;
17
class
SCT_FwdHybrid
;
18
class
SCT_FwdSpine
;
19
class
SCT_FwdSubSpine
;
20
21
class
GeoTransform;
22
class
GeoVPhysVol;
23
class
GeoPhysVol;
24
25
26
class
SCT_FwdModule
:
public
SCT_UniqueComponentFactory
27
{
28
public
:
29
30
SCT_FwdModule
(
const
std::string & name,
int
ringType
,
31
InDetDD::SCT_DetectorManager
* detectorManager,
32
SCT_GeometryManager
* geometryManager,
33
SCT_MaterialManager
* materials,
34
GeoModelIO::ReadGeoModel* sqliteReader,
35
std::shared_ptr<std::map<std::string, GeoFullPhysVol*>> mapFPV,
36
std::shared_ptr<std::map<std::string, GeoAlignableTransform*>> mapAX);
37
~SCT_FwdModule
();
38
//explicitly disallow copy, assignment to appease coverity
39
SCT_FwdModule
(
const
SCT_FwdModule
&) =
delete
;
40
SCT_FwdModule
&
operator=
(
const
SCT_FwdModule
&) =
delete
;
41
42
// Ring type
43
int
ringType
()
const
{
return
m_ringType
;}
44
45
virtual
GeoVPhysVol*
build
(
SCT_Identifier
id
);
46
47
double
stereoAngle
()
const
{
return
m_stereoAngle
;}
48
49
double
moduleShift
()
const
{
return
m_moduleShift
;}
50
51
double
length
()
const
{
return
m_length
;}
52
double
outerWidth
()
const
{
return
m_widthOuter
;}
53
double
innerWidth
()
const
{
return
m_widthInner
;}
54
double
thickness
()
const
{
return
m_thickness
;}
55
56
double
innerRadius
()
const
{
return
m_innerRadius
;}
57
double
outerRadius
()
const
{
return
m_outerRadius
;}
58
59
double
centerRadius
()
const
{
return
0.5 * (
m_innerRadius
+
m_outerRadius
);}
60
double
sensorCenterRadius
()
const
{
return
m_sensor
->centerRadius();}
61
double
powerTapeStart
()
const
{
return
m_powerTapeStart
;}
62
63
double
mainMountPointRadius
()
const
{
return
m_mainMountPoint
;}
64
double
secMountPointRadius
()
const
{
return
m_secMountPoint
;}
65
double
endModuleRadius
()
const
{
return
m_endLocator
;}
66
67
private
:
68
void
getParameters
();
69
virtual
const
GeoLogVol *
preBuild
();
70
71
// const std::string & m_name;
72
int
m_ringType
;
73
74
double
m_stereoAngle
= 0.0;
// Magnitude of stereo angle
75
double
m_length
= 0.0;
76
double
m_widthOuter
= 0.0;
77
double
m_widthInner
= 0.0;
78
double
m_thickness
= 0.0;
79
double
m_moduleShift
= 0.0;
80
double
m_glueThickness
= 0.0;
81
double
m_distBtwMountPoints
= 0.0;
82
double
m_mountPointToCenter
= 0.0;
83
bool
m_hybridIsOnInnerEdge
=
false
;
84
int
m_upperSide
= 0;
85
86
double
m_innerRadius
= 0.0;
87
double
m_outerRadius
= 0.0;
88
double
m_powerTapeStart
= 0.0;
89
90
double
m_mainMountPoint
= 0.0;
91
double
m_secMountPoint
= 0.0;
92
double
m_endLocator
= 0.0;
93
94
bool
m_connectorPresent
=
false
;
95
96
public
:
97
// Child detector elements
98
std::unique_ptr<SCT_FwdSensor>
m_sensor
;
99
std::unique_ptr<SCT_FwdModuleConnector>
m_connector
;
100
std::unique_ptr<SCT_FwdHybrid>
m_hybrid
;
101
std::unique_ptr<SCT_FwdSpine>
m_spine
;
102
std::unique_ptr<SCT_FwdSubSpine>
m_subspineL
;
103
std::unique_ptr<SCT_FwdSubSpine>
m_subspineR
;
104
};
105
106
#endif
// SCT_GEOMODEL_SCT_FWDMODULE_H
SCT_ComponentFactory.h
SCT_FwdSensor.h
InDetDD::SCT_DetectorManager
Dedicated detector manager extending the functionality of the SiDetectorManager with dedicated SCT in...
Definition
SCT_DetectorManager.h:50
SCT_FwdHybrid
Definition
SCT_FwdHybrid.h:16
SCT_FwdModuleConnector
Definition
SCT_FwdModuleConnector.h:13
SCT_FwdModule::thickness
double thickness() const
Definition
SCT_FwdModule.h:54
SCT_FwdModule::m_widthInner
double m_widthInner
Definition
SCT_FwdModule.h:77
SCT_FwdModule::ringType
int ringType() const
Definition
SCT_FwdModule.h:43
SCT_FwdModule::m_outerRadius
double m_outerRadius
Definition
SCT_FwdModule.h:87
SCT_FwdModule::SCT_FwdModule
SCT_FwdModule(const SCT_FwdModule &)=delete
SCT_FwdModule::m_sensor
std::unique_ptr< SCT_FwdSensor > m_sensor
Definition
SCT_FwdModule.h:98
SCT_FwdModule::m_connector
std::unique_ptr< SCT_FwdModuleConnector > m_connector
Definition
SCT_FwdModule.h:99
SCT_FwdModule::build
virtual GeoVPhysVol * build(SCT_Identifier id)
Definition
SCT_FwdModule.cxx:171
SCT_FwdModule::m_mountPointToCenter
double m_mountPointToCenter
Definition
SCT_FwdModule.h:82
SCT_FwdModule::sensorCenterRadius
double sensorCenterRadius() const
Definition
SCT_FwdModule.h:60
SCT_FwdModule::outerWidth
double outerWidth() const
Definition
SCT_FwdModule.h:52
SCT_FwdModule::stereoAngle
double stereoAngle() const
Definition
SCT_FwdModule.h:47
SCT_FwdModule::m_distBtwMountPoints
double m_distBtwMountPoints
Definition
SCT_FwdModule.h:81
SCT_FwdModule::innerWidth
double innerWidth() const
Definition
SCT_FwdModule.h:53
SCT_FwdModule::m_length
double m_length
Definition
SCT_FwdModule.h:75
SCT_FwdModule::m_secMountPoint
double m_secMountPoint
Definition
SCT_FwdModule.h:91
SCT_FwdModule::m_stereoAngle
double m_stereoAngle
Definition
SCT_FwdModule.h:74
SCT_FwdModule::innerRadius
double innerRadius() const
Definition
SCT_FwdModule.h:56
SCT_FwdModule::m_thickness
double m_thickness
Definition
SCT_FwdModule.h:78
SCT_FwdModule::m_upperSide
int m_upperSide
Definition
SCT_FwdModule.h:84
SCT_FwdModule::m_glueThickness
double m_glueThickness
Definition
SCT_FwdModule.h:80
SCT_FwdModule::mainMountPointRadius
double mainMountPointRadius() const
Definition
SCT_FwdModule.h:63
SCT_FwdModule::m_mainMountPoint
double m_mainMountPoint
Definition
SCT_FwdModule.h:90
SCT_FwdModule::endModuleRadius
double endModuleRadius() const
Definition
SCT_FwdModule.h:65
SCT_FwdModule::operator=
SCT_FwdModule & operator=(const SCT_FwdModule &)=delete
SCT_FwdModule::m_powerTapeStart
double m_powerTapeStart
Definition
SCT_FwdModule.h:88
SCT_FwdModule::m_subspineR
std::unique_ptr< SCT_FwdSubSpine > m_subspineR
Definition
SCT_FwdModule.h:103
SCT_FwdModule::m_innerRadius
double m_innerRadius
Definition
SCT_FwdModule.h:86
SCT_FwdModule::m_spine
std::unique_ptr< SCT_FwdSpine > m_spine
Definition
SCT_FwdModule.h:101
SCT_FwdModule::length
double length() const
Definition
SCT_FwdModule.h:51
SCT_FwdModule::secMountPointRadius
double secMountPointRadius() const
Definition
SCT_FwdModule.h:64
SCT_FwdModule::~SCT_FwdModule
~SCT_FwdModule()
SCT_FwdModule::m_connectorPresent
bool m_connectorPresent
Definition
SCT_FwdModule.h:94
SCT_FwdModule::preBuild
virtual const GeoLogVol * preBuild()
Definition
SCT_FwdModule.cxx:100
SCT_FwdModule::powerTapeStart
double powerTapeStart() const
Definition
SCT_FwdModule.h:61
SCT_FwdModule::centerRadius
double centerRadius() const
Definition
SCT_FwdModule.h:59
SCT_FwdModule::m_endLocator
double m_endLocator
Definition
SCT_FwdModule.h:92
SCT_FwdModule::outerRadius
double outerRadius() const
Definition
SCT_FwdModule.h:57
SCT_FwdModule::m_moduleShift
double m_moduleShift
Definition
SCT_FwdModule.h:79
SCT_FwdModule::m_hybrid
std::unique_ptr< SCT_FwdHybrid > m_hybrid
Definition
SCT_FwdModule.h:100
SCT_FwdModule::m_widthOuter
double m_widthOuter
Definition
SCT_FwdModule.h:76
SCT_FwdModule::moduleShift
double moduleShift() const
Definition
SCT_FwdModule.h:49
SCT_FwdModule::m_subspineL
std::unique_ptr< SCT_FwdSubSpine > m_subspineL
Definition
SCT_FwdModule.h:102
SCT_FwdModule::getParameters
void getParameters()
Definition
SCT_FwdModule.cxx:82
SCT_FwdModule::m_ringType
int m_ringType
Definition
SCT_FwdModule.h:72
SCT_FwdModule::SCT_FwdModule
SCT_FwdModule(const std::string &name, int ringType, 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_FwdModule.cxx:50
SCT_FwdModule::m_hybridIsOnInnerEdge
bool m_hybridIsOnInnerEdge
Definition
SCT_FwdModule.h:83
SCT_FwdSpine
Definition
SCT_FwdSpine.h:16
SCT_FwdSubSpine
Definition
SCT_FwdSubSpine.h:20
SCT_GeometryManager
Definition
SCT_GeometryManager.h:25
SCT_Identifier
Definition
SCT_Identifier.h:12
SCT_MaterialManager
Definition
SCT_MaterialManager.h:21
SCT_UniqueComponentFactory::SCT_UniqueComponentFactory
SCT_UniqueComponentFactory(const std::string &name, InDetDD::SCT_DetectorManager *detectorManager, SCT_GeometryManager *geometryManager, SCT_MaterialManager *materials=nullptr, GeoModelIO::ReadGeoModel *sqliteReader=nullptr, std::shared_ptr< std::map< std::string, GeoFullPhysVol * > > mapFPV=nullptr, std::shared_ptr< std::map< std::string, GeoAlignableTransform * > > mapAX=nullptr)
Definition
SCT_ComponentFactory.cxx:34
Generated on
for ATLAS Offline Software by
1.17.0