Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
StripLayer.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
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  }
15  StripDesignPtr design,
16  const IdentifierHash hash):
17  StripLayer{std::move(layerTransform), design, design, hash} {}
18 
20  StripDesignPtr etaDesign, StripDesignPtr phiDesign,
21  const IdentifierHash hash):
22  m_transform{std::move(layerTransform)},
23  m_etaDesign{std::move(etaDesign)},
24  m_phiDesign{std::move(phiDesign)},
25  m_hash{hash} {
26  }
28  if (hash() != other.hash()) {
29  return hash() < other.hash();
30  }
31  if (m_transform != other.m_transform) {
32  return m_transform < other.m_transform;
33  }
34  if (hasPhiDesign() != hasPhiDesign()){
35  return hasPhiDesign();
36  }
37  if (m_phiDesign != other.m_phiDesign) {
38  return m_phiDesign < other.m_phiDesign;
39  }
40  return m_etaDesign < other.m_etaDesign;
41  }
42 }
GeoModel::TransientConstSharedPtr< StripDesign >
MuonGMR4::StripLayer::operator<
bool operator<(const StripLayer &other) const
Comparison operator to recycle equivalent StripLayers for multiple readout elements.
Definition: StripLayer.cxx:27
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::m_etaDesign
StripDesignPtr m_etaDesign
Pointer to the eta strip design.
Definition: StripLayer.h:84
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:14
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::StripLayer::TransformPtr
GeoIntrusivePtr< const GeoTransform > TransformPtr
Definition: StripLayer.h:18
MuonGMR4::StripLayer::hasPhiDesign
bool hasPhiDesign() const
Returns whether the strip layer also describes strips in the phi direction.
MuonGMR4::StripLayer::design
const StripDesign & design(bool phiView=false) const
Returns the underlying strip design.
MuonGMR4::StripLayer::m_transform
TransformPtr m_transform
Pointer to the GeoModelTransform
Definition: StripLayer.h:82
StripLayer.h
MuonGMR4::StripLayer
The StripLayer interfaces the 2D description of the strip plane layout with the 3D description of the...
Definition: StripLayer.h:16
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
CaloCondBlobAlgs_fillNoiseFromASCII.hash
dictionary hash
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:109
MuonGMR4::StripLayer::m_phiDesign
StripDesignPtr m_phiDesign
Pointer to the phi strip design.
Definition: StripLayer.h:86
MuonGMR4::StripLayer::hash
const IdentifierHash hash() const
Returns the hash of the strip layer.
IdentifierHash
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Definition: IdentifierHash.h:25
MuonGMR4::operator<<
std::ostream & operator<<(std::ostream &ostr, const Chamber::defineArgs &args)
Definition: Chamber.cxx:14