ATLAS Offline Software
Loading...
Searching...
No Matches
SCT_InterLink.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_INTERLINK_H
6#define SCT_GEOMODEL_SCT_INTERLINK_H
7
9
10#include <string>
11#include <vector>
12
13#include "GeoModelKernel/GeoPhysVol.h"
14#include "GeoModelKernel/GeoTubs.h"
15#include "GeoModelKernel/GeoTube.h"
16#include "GeoModelKernel/GeoTransform.h"
17
18class GeoMaterial;
19
21{
22
23public:
24 SCT_InterLink(const std::string & name,
25 InDetDD::SCT_DetectorManager* detectorManager,
26 SCT_GeometryManager* geometryManager,
27 SCT_MaterialManager* materials);
29
30public:
31 // const GeoMaterial * material() const {return m_material;}
32 double innerRadius() const {return m_innerRadius;}
33 double outerRadius() const {return m_outerRadius;}
34 double length() const {return m_length;}
35
36private:
37 void getParameters();
38 virtual GeoVPhysVol * build();
39
40 // Following are for interlink
41 std::string m_materialName;
42 double m_innerRadius = 0.0;
43 double m_outerRadius = 0.0;
44 double m_length = 0.0;
45 double m_dPhi = 0.0;
46 double m_phiPos = 0.0;
47 int m_nRepeat = 0;
48
49 // Following are for FSI flange
50 bool m_includeFSIFlange = false;
54
55 // Following are for B6 bearing
59 double m_lengthBearing = 0.0;
60 double m_dPhiBearing = 0.0;
61 double m_phiPosBearing = 0.0;
63
64 GeoIntrusivePtr<const GeoTube> m_interLinkShape{};
65 GeoIntrusivePtr<const GeoLogVol> m_interLinkLog{};
66 GeoIntrusivePtr<GeoPhysVol> m_interLink{};
67 GeoIntrusivePtr<const GeoTubs> m_interLinkSegShape{};
68 GeoIntrusivePtr<const GeoLogVol> m_interLinkSegLog{};
69 GeoIntrusivePtr<GeoPhysVol> m_interLinkSeg{};
70 GeoIntrusivePtr<const GeoTubs> m_bearingShape{};
71 GeoIntrusivePtr<const GeoLogVol> m_bearingLog{};
72 GeoIntrusivePtr<GeoPhysVol> m_bearing{};
73 GeoIntrusivePtr<const GeoTubs> m_FSIFlangeShape{};
74 GeoIntrusivePtr<const GeoLogVol> m_FSIFlangeLog{};
75 GeoIntrusivePtr<GeoPhysVol> m_FSIFlange{};
76 std::vector<GeoIntrusivePtr<GeoTransform>> m_geoTransforms{};
77};
78
79#endif // SCT_GEOMODEL_SCT_INTERLINK_H
80
Dedicated detector manager extending the functionality of the SiDetectorManager with dedicated SCT in...
SCT_SharedComponentFactory(const std::string &name, InDetDD::SCT_DetectorManager *detectorManager, SCT_GeometryManager *geometryManager, SCT_MaterialManager *materials=nullptr)