ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonDetDescr
MuonAGDDDescription
MuonAGDDDescription
sTGCDetectorDescription.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 sTGCDetectorDescription_H
6
#define sTGCDetectorDescription_H
7
8
#include "
GeoPrimitives/GeoPrimitives.h
"
10
#include "
AGDDKernel/AGDDDetector.h
"
11
#include "
MuonAGDDDescription/sTGC_Technology.h
"
12
#include <string>
13
#include <vector>
14
#include <iostream>
15
16
class
GeoMaterial;
17
class
AGDDDetectorStore
;
18
19
struct
sTGCReadoutParameters
{
20
double
sPadWidth
{0.};
21
double
lPadWidth
{0.};
22
double
sStripWidth
{0.};
23
double
lStripWidth
{0.};
24
std::vector<double>
padH
{};
25
std::vector<int>
nPadPhi
{};
26
double
anglePadPhi
{0.};
27
std::vector<double>
firstPadPhiDivision_A
{};
28
std::vector<double>
firstPadPhiDivision_C
{};
29
std::vector<double>
PadPhiShift_A
{};
30
std::vector<double>
PadPhiShift_C
{};
31
std::vector<double>
nPadH
{};
32
std::vector<double>
firstPadH
{};
33
std::vector<int>
firstPadRow
{};
34
std::vector<int>
nWires
{};
35
std::vector<double>
wireCutout
{};
36
std::vector<double>
firstWire
{};
37
int
wireGroupWidth
{0};
38
int
nStrips
{0};
39
std::vector<int>
firstTriggerBand
{};
40
std::vector<int>
nTriggerBands
{};
41
std::vector<int>
firstStripInTrigger
{};
42
std::vector<double>
firstStripWidth
{};
43
std::vector<int>
StripsInBandsLayer1
{};
44
std::vector<int>
StripsInBandsLayer2
{};
45
std::vector<int>
StripsInBandsLayer3
{};
46
std::vector<int>
StripsInBandsLayer4
{};
47
std::vector<int>
nWireGroups
{};
48
std::vector<int>
firstWireGroup
{};
49
};
50
51
class
sTGCDetectorDescription
:
public
AGDDDetector
{
52
public
:
53
sTGCDetectorDescription
(
const
std::string& s,
54
AGDDDetectorStore
& ds);
55
void
Register
();
56
57
virtual
void
SetXYZ
(
const
std::vector<double>& v)
override
58
{
59
small_x
(v[0]);
60
large_x
(v[1]);
61
y
(v[2]);
62
z
(v[3]);
63
m_yCutout
=v[4];
64
m_stripPitch
=v[5];
65
m_wirePitch
=v[6];
66
m_stripWidth
=v[7];
67
m_yCutoutCathode
=v[8];
68
}
69
70
double
sWidth
()
const
{
return
small_x
();}
71
double
lWidth
()
const
{
return
large_x
();}
72
double
Length
()
const
{
return
y
();}
73
double
Tck
()
const
{
return
z
();}
74
75
void
yCutout
(
double
y
) {
m_yCutout
=
y
;}
76
double
yCutout
()
const
{
return
m_yCutout
;}
77
78
void
stripPitch
(
double
y
) {
m_stripPitch
=
y
;}
79
double
stripPitch
()
const
{
return
m_stripPitch
;}
80
81
void
wirePitch
(
double
y
) {
m_wirePitch
=
y
;}
82
double
wirePitch
()
const
{
return
m_wirePitch
;}
83
84
void
stripWidth
(
double
y
) {
m_stripWidth
=
y
;}
85
double
stripWidth
()
const
{
return
m_stripWidth
;}
86
87
void
yCutoutCathode
(
double
y
) {
m_yCutoutCathode
=
y
;}
88
double
yCutoutCathode
()
const
{
return
m_yCutoutCathode
;}
89
90
void
xFrame
(
double
y
) {
m_xFrame
=
y
;}
91
double
xFrame
()
const
{
return
m_xFrame
;}
92
93
void
ysFrame
(
double
y
) {
m_ysFrame
=
y
;}
94
double
ysFrame
()
const
{
return
m_ysFrame
;}
95
96
void
ylFrame
(
double
y
) {
m_ylFrame
=
y
;}
97
double
ylFrame
()
const
{
return
m_ylFrame
;}
98
99
sTGCReadoutParameters
roParameters
;
100
101
sTGCReadoutParameters
&
GetReadoutParameters
() {
return
roParameters
;}
102
103
MuonGM::sTGC_Technology
*
GetTechnology
();
104
105
protected
:
106
107
double
m_yCutout
{0.};
108
double
m_stripPitch
{0.};
109
double
m_wirePitch
{0.};
110
double
m_stripWidth
{0.};
111
double
m_yCutoutCathode
{0.};
112
113
double
m_xFrame
{0.};
114
double
m_ysFrame
{0.};
115
double
m_ylFrame
{0.};
116
117
AGDDDetectorStore
&
m_ds
;
118
119
virtual
void
SetDetectorAddress
(
AGDDDetectorPositioner
*)
override
;
120
};
121
122
#endif
AGDDDetector.h
GeoPrimitives.h
sTGC_Technology.h
AGDDDetectorPositioner
Definition
AGDDDetectorPositioner.h:39
AGDDDetectorStore
Definition
AGDDDetectorStore.h:18
AGDDDetector::z
double z() const
Definition
AGDDDetector.h:36
AGDDDetector::AGDDDetector
AGDDDetector(const std::string &s)
Definition
AGDDDetector.h:17
AGDDDetector::y
void y(double yval)
Definition
AGDDDetector.h:30
AGDDDetector::small_x
double small_x() const
Definition
AGDDDetector.h:33
AGDDDetector::large_x
double large_x() const
Definition
AGDDDetector.h:34
AGDDDetector::y
double y() const
Definition
AGDDDetector.h:35
MuonGM::sTGC_Technology
Definition
MuonAGDDDescription/MuonAGDDDescription/sTGC_Technology.h:16
sTGCDetectorDescription::SetDetectorAddress
virtual void SetDetectorAddress(AGDDDetectorPositioner *) override
Definition
sTGCDetectorDescription.cxx:28
sTGCDetectorDescription::Length
double Length() const
Definition
sTGCDetectorDescription.h:72
sTGCDetectorDescription::xFrame
double xFrame() const
Definition
sTGCDetectorDescription.h:91
sTGCDetectorDescription::ysFrame
double ysFrame() const
Definition
sTGCDetectorDescription.h:94
sTGCDetectorDescription::stripPitch
double stripPitch() const
Definition
sTGCDetectorDescription.h:79
sTGCDetectorDescription::yCutoutCathode
double yCutoutCathode() const
Definition
sTGCDetectorDescription.h:88
sTGCDetectorDescription::Register
void Register()
Definition
sTGCDetectorDescription.cxx:22
sTGCDetectorDescription::GetReadoutParameters
sTGCReadoutParameters & GetReadoutParameters()
Definition
sTGCDetectorDescription.h:101
sTGCDetectorDescription::yCutout
double yCutout() const
Definition
sTGCDetectorDescription.h:76
sTGCDetectorDescription::yCutoutCathode
void yCutoutCathode(double y)
Definition
sTGCDetectorDescription.h:87
sTGCDetectorDescription::m_stripPitch
double m_stripPitch
Definition
sTGCDetectorDescription.h:108
sTGCDetectorDescription::roParameters
sTGCReadoutParameters roParameters
Definition
sTGCDetectorDescription.h:99
sTGCDetectorDescription::m_stripWidth
double m_stripWidth
Definition
sTGCDetectorDescription.h:110
sTGCDetectorDescription::m_yCutoutCathode
double m_yCutoutCathode
Definition
sTGCDetectorDescription.h:111
sTGCDetectorDescription::m_wirePitch
double m_wirePitch
Definition
sTGCDetectorDescription.h:109
sTGCDetectorDescription::yCutout
void yCutout(double y)
Definition
sTGCDetectorDescription.h:75
sTGCDetectorDescription::ylFrame
double ylFrame() const
Definition
sTGCDetectorDescription.h:97
sTGCDetectorDescription::lWidth
double lWidth() const
Definition
sTGCDetectorDescription.h:71
sTGCDetectorDescription::SetXYZ
virtual void SetXYZ(const std::vector< double > &v) override
Definition
sTGCDetectorDescription.h:57
sTGCDetectorDescription::m_yCutout
double m_yCutout
Definition
sTGCDetectorDescription.h:107
sTGCDetectorDescription::sTGCDetectorDescription
sTGCDetectorDescription(const std::string &s, AGDDDetectorStore &ds)
Definition
sTGCDetectorDescription.cxx:14
sTGCDetectorDescription::m_ysFrame
double m_ysFrame
Definition
sTGCDetectorDescription.h:114
sTGCDetectorDescription::ysFrame
void ysFrame(double y)
Definition
sTGCDetectorDescription.h:93
sTGCDetectorDescription::stripWidth
void stripWidth(double y)
Definition
sTGCDetectorDescription.h:84
sTGCDetectorDescription::GetTechnology
MuonGM::sTGC_Technology * GetTechnology()
Definition
sTGCDetectorDescription.cxx:49
sTGCDetectorDescription::xFrame
void xFrame(double y)
Definition
sTGCDetectorDescription.h:90
sTGCDetectorDescription::m_xFrame
double m_xFrame
Definition
sTGCDetectorDescription.h:113
sTGCDetectorDescription::sWidth
double sWidth() const
Definition
sTGCDetectorDescription.h:70
sTGCDetectorDescription::m_ylFrame
double m_ylFrame
Definition
sTGCDetectorDescription.h:115
sTGCDetectorDescription::wirePitch
double wirePitch() const
Definition
sTGCDetectorDescription.h:82
sTGCDetectorDescription::Tck
double Tck() const
Definition
sTGCDetectorDescription.h:73
sTGCDetectorDescription::stripWidth
double stripWidth() const
Definition
sTGCDetectorDescription.h:85
sTGCDetectorDescription::m_ds
AGDDDetectorStore & m_ds
Definition
sTGCDetectorDescription.h:117
sTGCDetectorDescription::wirePitch
void wirePitch(double y)
Definition
sTGCDetectorDescription.h:81
sTGCDetectorDescription::ylFrame
void ylFrame(double y)
Definition
sTGCDetectorDescription.h:96
sTGCDetectorDescription::stripPitch
void stripPitch(double y)
Definition
sTGCDetectorDescription.h:78
sTGCReadoutParameters
Definition
sTGCDetectorDescription.h:19
sTGCReadoutParameters::lStripWidth
double lStripWidth
Definition
sTGCDetectorDescription.h:23
sTGCReadoutParameters::firstWireGroup
std::vector< int > firstWireGroup
Definition
sTGCDetectorDescription.h:48
sTGCReadoutParameters::nWireGroups
std::vector< int > nWireGroups
Definition
sTGCDetectorDescription.h:47
sTGCReadoutParameters::lPadWidth
double lPadWidth
Definition
sTGCDetectorDescription.h:21
sTGCReadoutParameters::StripsInBandsLayer1
std::vector< int > StripsInBandsLayer1
Definition
sTGCDetectorDescription.h:43
sTGCReadoutParameters::sStripWidth
double sStripWidth
Definition
sTGCDetectorDescription.h:22
sTGCReadoutParameters::firstPadPhiDivision_A
std::vector< double > firstPadPhiDivision_A
Definition
sTGCDetectorDescription.h:27
sTGCReadoutParameters::firstStripInTrigger
std::vector< int > firstStripInTrigger
Definition
sTGCDetectorDescription.h:41
sTGCReadoutParameters::firstPadPhiDivision_C
std::vector< double > firstPadPhiDivision_C
Definition
sTGCDetectorDescription.h:28
sTGCReadoutParameters::firstStripWidth
std::vector< double > firstStripWidth
Definition
sTGCDetectorDescription.h:42
sTGCReadoutParameters::StripsInBandsLayer4
std::vector< int > StripsInBandsLayer4
Definition
sTGCDetectorDescription.h:46
sTGCReadoutParameters::nPadPhi
std::vector< int > nPadPhi
Definition
sTGCDetectorDescription.h:25
sTGCReadoutParameters::firstPadH
std::vector< double > firstPadH
Definition
sTGCDetectorDescription.h:32
sTGCReadoutParameters::wireGroupWidth
int wireGroupWidth
Definition
sTGCDetectorDescription.h:37
sTGCReadoutParameters::StripsInBandsLayer3
std::vector< int > StripsInBandsLayer3
Definition
sTGCDetectorDescription.h:45
sTGCReadoutParameters::firstWire
std::vector< double > firstWire
Definition
sTGCDetectorDescription.h:36
sTGCReadoutParameters::PadPhiShift_C
std::vector< double > PadPhiShift_C
Definition
sTGCDetectorDescription.h:30
sTGCReadoutParameters::nWires
std::vector< int > nWires
Definition
sTGCDetectorDescription.h:34
sTGCReadoutParameters::StripsInBandsLayer2
std::vector< int > StripsInBandsLayer2
Definition
sTGCDetectorDescription.h:44
sTGCReadoutParameters::padH
std::vector< double > padH
Definition
sTGCDetectorDescription.h:24
sTGCReadoutParameters::wireCutout
std::vector< double > wireCutout
Definition
sTGCDetectorDescription.h:35
sTGCReadoutParameters::firstTriggerBand
std::vector< int > firstTriggerBand
Definition
sTGCDetectorDescription.h:39
sTGCReadoutParameters::anglePadPhi
double anglePadPhi
Definition
sTGCDetectorDescription.h:26
sTGCReadoutParameters::firstPadRow
std::vector< int > firstPadRow
Definition
sTGCDetectorDescription.h:33
sTGCReadoutParameters::sPadWidth
double sPadWidth
Definition
sTGCDetectorDescription.h:20
sTGCReadoutParameters::PadPhiShift_A
std::vector< double > PadPhiShift_A
Definition
sTGCDetectorDescription.h:29
sTGCReadoutParameters::nStrips
int nStrips
Definition
sTGCDetectorDescription.h:38
sTGCReadoutParameters::nPadH
std::vector< double > nPadH
Definition
sTGCDetectorDescription.h:31
sTGCReadoutParameters::nTriggerBands
std::vector< int > nTriggerBands
Definition
sTGCDetectorDescription.h:40
Generated on
for ATLAS Offline Software by
1.17.0