ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonDetDescr
MuonNSWAsBuilt
MuonNSWAsBuilt
CathodeBoardElement.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef MUONNSWASBUILT_CATHODEBOARDELEMENT_H
6
#define MUONNSWASBUILT_CATHODEBOARDELEMENT_H
7
8
#include "
MuonNSWAsBuilt/Element.h
"
9
#include "
GeoPrimitives/GeoPrimitives.h
"
10
#include <memory>
11
12
namespace
NswAsBuilt
{
13
26
class
CathodeBoardElement
{
27
public
:
28
using
ParameterClass
=
Element::ParameterClass
;
29
/* In the sTGC strip (cathode) boards due to the staggering, the first/last strip could be a half
30
* or a full strip depending on the strip_board_type. Therefore first and last strip are handled
31
* separately from second or any i-strip
32
*/
33
struct
stgcStripPoint_t
{
34
Amg::Vector3D
pos
{Amg::Vector3D::Zero()};
// a point along the strip
35
Amg::Vector3D
pitch
{Amg::Vector3D::Zero()};
// the pitch vector to add in order to get the other strips
36
};
37
38
struct
stgcStripConfiguration_t
{
39
int
lastStripNumber
{0};
// the strip number of the last strip i.e the number of strips
40
stgcStripPoint_t
fCenterPoint
;
// the center of the first strip
41
stgcStripPoint_t
fLeftPoint
;
// the left (X<0) point of the first strip
42
stgcStripPoint_t
fRightPoint
;
// the right(X>0) point of the first strip
43
stgcStripPoint_t
sCenterPoint
;
// the center of the second strip
44
stgcStripPoint_t
sLeftPoint
;
// the left (X<0) point of the second strip
45
stgcStripPoint_t
sRightPoint
;
// the right(X>0) point of the second strip
46
stgcStripPoint_t
lCenterPoint
;
// the center of the last strip
47
stgcStripPoint_t
lLeftPoint
;
// the left (X<0) point of the last strip
48
stgcStripPoint_t
lRightPoint
;
// the right(X>0) point of the last strip
49
50
};
51
55
CathodeBoardElement
(
stgcStripConfiguration_t
config,
const
Element
& element);
56
61
struct
stgcStrip_t
{
62
Amg::Vector3D
center
{Amg::Vector3D::Zero()};
63
Amg::Vector3D
left
{Amg::Vector3D::Zero()};
64
Amg::Vector3D
right
{Amg::Vector3D::Zero()};
65
};
66
71
stgcStrip_t
getStgcStrip
(
ParameterClass
iclass,
int
stripNumber)
const
;
72
78
Amg::Vector3D
getPositionAlongStgcStrip
(
ParameterClass
iclass,
int
stripNumber,
double
sx,
double
sy)
const
;
79
80
private
:
81
stgcStripConfiguration_t
m_config_stgc
;
82
const
Element
&
m_element_stgc
;
// reference element of a PCB
83
};
84
}
85
86
#endif
87
Element.h
GeoPrimitives.h
NswAsBuilt::CathodeBoardElement::m_element_stgc
const Element & m_element_stgc
Definition
CathodeBoardElement.h:82
NswAsBuilt::CathodeBoardElement::m_config_stgc
stgcStripConfiguration_t m_config_stgc
Definition
CathodeBoardElement.h:81
NswAsBuilt::CathodeBoardElement::getStgcStrip
stgcStrip_t getStgcStrip(ParameterClass iclass, int stripNumber) const
Returns three points (center, left, right) of a given strip, in quadruplet coordinates.
Definition
CathodeBoardElement.cxx:18
NswAsBuilt::CathodeBoardElement::CathodeBoardElement
CathodeBoardElement(stgcStripConfiguration_t config, const Element &element)
Constructor.
Definition
CathodeBoardElement.cxx:10
NswAsBuilt::CathodeBoardElement::ParameterClass
Element::ParameterClass ParameterClass
Definition
CathodeBoardElement.h:28
NswAsBuilt::CathodeBoardElement::getPositionAlongStgcStrip
Amg::Vector3D getPositionAlongStgcStrip(ParameterClass iclass, int stripNumber, double sx, double sy) const
Returns a point on the strip, parameterized by second coordinate s, in [-1,+1].
Definition
CathodeBoardElement.cxx:45
NswAsBuilt::Element
Element: a node in a hierarchy of alignment frames.
Definition
Element.h:52
NswAsBuilt::Element::ParameterClass
ParameterClass
Definition
Element.h:63
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
NswAsBuilt
Definition
CathodeBoardElement.h:12
NswAsBuilt::CathodeBoardElement::stgcStripConfiguration_t
Definition
CathodeBoardElement.h:38
NswAsBuilt::CathodeBoardElement::stgcStripConfiguration_t::fCenterPoint
stgcStripPoint_t fCenterPoint
Definition
CathodeBoardElement.h:40
NswAsBuilt::CathodeBoardElement::stgcStripConfiguration_t::lastStripNumber
int lastStripNumber
Definition
CathodeBoardElement.h:39
NswAsBuilt::CathodeBoardElement::stgcStripConfiguration_t::fLeftPoint
stgcStripPoint_t fLeftPoint
Definition
CathodeBoardElement.h:41
NswAsBuilt::CathodeBoardElement::stgcStripConfiguration_t::lCenterPoint
stgcStripPoint_t lCenterPoint
Definition
CathodeBoardElement.h:46
NswAsBuilt::CathodeBoardElement::stgcStripConfiguration_t::sCenterPoint
stgcStripPoint_t sCenterPoint
Definition
CathodeBoardElement.h:43
NswAsBuilt::CathodeBoardElement::stgcStripConfiguration_t::sLeftPoint
stgcStripPoint_t sLeftPoint
Definition
CathodeBoardElement.h:44
NswAsBuilt::CathodeBoardElement::stgcStripConfiguration_t::lRightPoint
stgcStripPoint_t lRightPoint
Definition
CathodeBoardElement.h:48
NswAsBuilt::CathodeBoardElement::stgcStripConfiguration_t::fRightPoint
stgcStripPoint_t fRightPoint
Definition
CathodeBoardElement.h:42
NswAsBuilt::CathodeBoardElement::stgcStripConfiguration_t::sRightPoint
stgcStripPoint_t sRightPoint
Definition
CathodeBoardElement.h:45
NswAsBuilt::CathodeBoardElement::stgcStripConfiguration_t::lLeftPoint
stgcStripPoint_t lLeftPoint
Definition
CathodeBoardElement.h:47
NswAsBuilt::CathodeBoardElement::stgcStripPoint_t
Definition
CathodeBoardElement.h:33
NswAsBuilt::CathodeBoardElement::stgcStripPoint_t::pitch
Amg::Vector3D pitch
Definition
CathodeBoardElement.h:35
NswAsBuilt::CathodeBoardElement::stgcStripPoint_t::pos
Amg::Vector3D pos
Definition
CathodeBoardElement.h:34
NswAsBuilt::CathodeBoardElement::stgcStrip_t
The return type of the getStrip method: three points along the strip, in quadruplet coordinate.
Definition
CathodeBoardElement.h:61
NswAsBuilt::CathodeBoardElement::stgcStrip_t::right
Amg::Vector3D right
Definition
CathodeBoardElement.h:64
NswAsBuilt::CathodeBoardElement::stgcStrip_t::center
Amg::Vector3D center
Definition
CathodeBoardElement.h:62
NswAsBuilt::CathodeBoardElement::stgcStrip_t::left
Amg::Vector3D left
Definition
CathodeBoardElement.h:63
Generated on
for ATLAS Offline Software by
1.17.0