ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonPhaseII
MuonDetDescr
MuonReadoutGeometryR4
src
StripLayer.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
#include <
MuonReadoutGeometryR4/StripLayer.h
>
5
6
namespace
MuonGMR4
{
7
8
std::ostream&
operator<<
(std::ostream& ostr,
const
StripLayer
& lay) {
9
ostr<<
"Strip layer transform: "
<<
Amg::toString
(lay.
toOrigin
())<<
", "
;
10
ostr<<lay.
design
()<<
", "
;
11
ostr<<
"Hash: "
<<
static_cast<
unsigned
int
>
(lay.
hash
());
12
return
ostr;
13
}
14
void
StripLayer::flipPhiRotation
() {
15
m_phiRot
= -
m_phiRot
;
16
}
17
StripLayer::StripLayer
(
TransformPtr
layerTransform,
18
StripDesignPtr
design
,
19
const
IdentifierHash
hash
):
20
StripLayer
{
std
::move(layerTransform),
design
,
design
,
hash
} {}
21
22
StripLayer::StripLayer
(
TransformPtr
layerTransform,
23
StripDesignPtr
etaDesign,
StripDesignPtr
phiDesign,
24
const
IdentifierHash
hash
):
25
m_transform
{
std
::move(layerTransform)},
26
m_etaDesign
{
std
::move(etaDesign)},
27
m_phiDesign
{
std
::move(phiDesign)},
28
m_hash
{
hash
} {
29
if
(!
m_phiDesign
)
m_phiDesign
=
m_etaDesign
;
30
}
31
bool
StripLayer::operator<
(
const
StripLayer
& other)
const
{
32
if
(
hash
() != other.hash()) {
33
return
hash
() < other.hash();
34
}
35
if
(
m_transform
!= other.m_transform) {
36
return
m_transform
< other.m_transform;
37
}
38
if
(
hasPhiDesign
() != other.hasPhiDesign()){
39
return
hasPhiDesign
();
40
}
41
if
(
m_phiDesign
!= other.m_phiDesign) {
42
return
m_phiDesign
< other.m_phiDesign;
43
}
44
return
m_etaDesign
< other.m_etaDesign;
45
}
46
}
StripLayer.h
IdentifierHash
This is a "hash" representation of an Identifier.
Definition
IdentifierHash.h:25
MuonGMR4::StripLayer
The StripLayer interfaces the 2D description of the strip plane layout with the 3D description of the...
Definition
StripLayer.h:19
MuonGMR4::StripLayer::m_hash
IdentifierHash m_hash
Hash of the strip layer.
Definition
StripLayer.h:97
MuonGMR4::StripLayer::design
const StripDesign & design(bool phiView=false) const
Returns the underlying strip design.
MuonGMR4::StripLayer::hasPhiDesign
bool hasPhiDesign() const
Returns whether the strip layer also describes strips in the phi direction.
MuonGMR4::StripLayer::m_phiDesign
StripDesignPtr m_phiDesign
Pointer to the phi strip design.
Definition
StripLayer.h:95
MuonGMR4::StripLayer::TransformPtr
GeoIntrusivePtr< const GeoTransform > TransformPtr
Definition
StripLayer.h:21
MuonGMR4::StripLayer::m_phiRot
double m_phiRot
Definition
StripLayer.h:98
MuonGMR4::StripLayer::hash
const IdentifierHash hash() const
Returns the hash of the strip layer.
MuonGMR4::StripLayer::operator<
bool operator<(const StripLayer &other) const
Comparison operator to recycle equivalent StripLayers for multiple readout elements.
Definition
StripLayer.cxx:31
MuonGMR4::StripLayer::toOrigin
const Amg::Transform3D & toOrigin() const
Returns the transformation to go from the strip layer center to the origin of the Strip chamber.
MuonGMR4::StripLayer::flipPhiRotation
void flipPhiRotation()
Flips the phi rotation from 90 -> -90 degrees.
Definition
StripLayer.cxx:14
MuonGMR4::StripLayer::StripLayer
StripLayer(TransformPtr layerTransform, StripDesignPtr design, const IdentifierHash hash)
Standard constructor taking the transform to decribe a strip layer, a pointer to the eta strip design...
Definition
StripLayer.cxx:17
MuonGMR4::StripLayer::m_transform
TransformPtr m_transform
Pointer to the GeoModelTransform.
Definition
StripLayer.h:91
MuonGMR4::StripLayer::m_etaDesign
StripDesignPtr m_etaDesign
Pointer to the eta strip design.
Definition
StripLayer.h:93
Amg::toString
std::string toString(const Translation3D &translation, int precision=4)
GeoPrimitvesToStringConverter.
Definition
GeoPrimitivesToStringConverter.h:40
MuonGMR4
The ReadoutGeomCnvAlg converts the Run4 Readout geometry build from the GeoModelXML into the legacy M...
Definition
MdtCalibInput.h:19
MuonGMR4::operator<<
std::ostream & operator<<(std::ostream &ostr, const Chamber::defineArgs &args)
Definition
Chamber.cxx:18
MuonGMR4::StripDesignPtr
GeoModel::TransientConstSharedPtr< StripDesign > StripDesignPtr
Definition
StripDesign.h:29
std
STL namespace.
Generated on
for ATLAS Offline Software by
1.17.0