ATLAS Offline Software
StripLayer.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef MUONREADOUTGEOMETRYR4_STRIPLAYER_H
5 #define MUONREADOUTGEOMETRYR4_STRIPLAYER_H
6 
9 namespace MuonGMR4{
10  class StripLayer {
11  public:
12  StripLayer(const Amg::Transform3D& layerTransform,
14  const IdentifierHash hash);
15 
18  const Amg::Transform3D& toOrigin() const;
20  const StripDesign& design() const;
22  const IdentifierHash hash() const;
23 
25  Amg::Vector3D stripPosition(unsigned int stripNum) const;
27  Amg::Vector3D localStripPos(unsigned int stripum) const;
29  Amg::Vector3D localStripLeftEdge(unsigned int stripNum) const;
31  Amg::Vector3D localStripRightEdge(unsigned int stripNum) const;
32 
33  bool operator<(const StripLayer& other) const;
34  private:
35  Amg::Transform3D m_transform{Amg::Transform3D::Identity()};
38  };
42  bool operator()( const StripLayerPtr&a, const StripLayerPtr& b) const{
43  return (*a) < (*b);
44  }
45  };
46  std::ostream& operator<<(std::ostream& ostr, const StripLayer& lay);
47 }
48 
50 #endif
StripLayer.icc
GeoModel::TransientConstSharedPtr< StripDesign >
MuonGMR4::StripLayerSorter::operator()
bool operator()(const StripLayerPtr &a, const StripLayerPtr &b) const
Definition: StripLayer.h:42
MuonGMR4::StripDesign
Definition: StripDesign.h:30
MuonGMR4::StripLayer::m_hash
IdentifierHash m_hash
Definition: StripLayer.h:37
MuonGMR4::StripLayer::operator<
bool operator<(const StripLayer &other) const
Definition: StripLayer.cxx:21
MuonGMR4::StripLayer::m_transform
Amg::Transform3D m_transform
Definition: StripLayer.h:35
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.
StripDesign.h
MuonGMR4::StripLayer::stripPosition
Amg::Vector3D stripPosition(unsigned int stripNum) const
Returns the position of the strip expressed in the chamber frame.
MuonGMR4::StripLayer::m_design
StripDesignPtr m_design
Definition: StripLayer.h:36
MuonGMR4
A muon chamber is a collection of readout elements belonging to the same station.
Definition: ChamberAssembleTool.h:16
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition: GeoPrimitives.h:46
MuonGMR4::StripLayer::localStripPos
Amg::Vector3D localStripPos(unsigned int stripum) const
Returns the position of the strip expressed in the local frame.
plotBeamSpotMon.b
b
Definition: plotBeamSpotMon.py:77
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
MuonGMR4::StripLayer::design
const StripDesign & design() const
Returns the underlying strip design.
MuonGMR4::StripLayer
Definition: StripLayer.h:10
a
TList * a
Definition: liststreamerinfos.cxx:10
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
TransientConstSharedPtr.h
MuonGMR4::StripLayer::hash
const IdentifierHash hash() const
Returns the hash of the strip layer.
MuonGMR4::StripLayerSorter
Helper struct to share strip layer instances across the readout elements.
Definition: StripLayer.h:41
MuonGMR4::StripLayer::localStripLeftEdge
Amg::Vector3D localStripLeftEdge(unsigned int stripNum) const
Returns the position of the left strip edge (positive local y) expressed in the local frame.
MuonGMR4::StripLayer::StripLayer
StripLayer(const Amg::Transform3D &layerTransform, StripDesignPtr design, const IdentifierHash hash)
Definition: StripLayer.cxx:14
IdentifierHash
Definition: IdentifierHash.h:38
MuonGMR4::operator<<
std::ostream & operator<<(std::ostream &ostr, const CutOutArea &cut)
Definition: CutOutArea.h:23
MuonGMR4::StripLayer::localStripRightEdge
Amg::Vector3D localStripRightEdge(unsigned int stripNum) const
Returns the position of the right strip edge (negative local y) exoressed in the local frame.