 |
ATLAS Offline Software
|
Go to the documentation of this file.
4 #ifndef MUONREADOUTGEOMETRYR4_STRIPLAYER_H
5 #define MUONREADOUTGEOMETRYR4_STRIPLAYER_H
11 #include <GeoModelKernel/GeoTransform.h>
12 #include <GaudiKernel/SystemOfUnits.h>
57 bool phiView =
false)
const;
64 bool phiView =
false)
const;
71 bool phiView =
false)
const;
107 std::ostream&
operator<<(std::ostream& ostr,
const StripLayer& lay);
StripDesign::CheckVector2D CheckVector2D
bool operator()(const StripLayerPtr &a, const StripLayerPtr &b) const
IdentifierHash m_hash
Hash of the strip layer.
bool operator<(const StripLayer &other) const
Comparison operator to recycle equivalent StripLayers for multiple readout elements.
Eigen::Matrix< double, 2, 1 > Vector2D
const Amg::Transform3D & toOrigin() const
Returns the transformation to go from the strip layer center to the origin of the Strip chamber.
void flipPhiRotation()
Flips the phi rotation from 90 -> -90 degrees.
std::vector< size_t > vec
Amg::Vector3D localStripRightEdge(unsigned int stripNum, bool phiView=false) const
Returns the position of the right strip edge at (negative y in the strip design description) in the l...
StripDesignPtr m_etaDesign
Pointer to the eta strip design.
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...
Amg::Vector2D to2D(const Amg::Vector3D &vec, const bool phiView) const
Transforms a 3D vector from the strip design into a 2D vector.
The ReadoutGeomCnvAlg converts the Run4 Readout geometry build from the GeoModelXML into the legacy M...
GeoIntrusivePtr< const GeoTransform > TransformPtr
Amg::Vector3D localStripPosition(unsigned int stripum, bool phiView=false) const
Returns the position of the strip centre expressed in the frame of the local readout plane.
Eigen::Affine3d Transform3D
bool hasPhiDesign() const
Returns whether the strip layer also describes strips in the phi direction.
Amg::Vector3D to3D(CheckVector2D &&vec, const bool phiView) const
Transforms the 2D vector from the strip design into a 3D vector If phi view is switched on,...
Amg::Vector3D localStripLeftEdge(unsigned int stripNum, bool phiView=false) const
Returns the position of the strip edge at (positive y in the strip design description) in the local c...
const StripDesign & design(bool phiView=false) const
Returns the underlying strip design.
Eigen::Matrix< double, 3, 1 > Vector3D
TransformPtr m_transform
Pointer to the GeoModelTransform
The StripLayer interfaces the 2D description of the strip plane layout with the 3D description of the...
StripDesignPtr m_phiDesign
Pointer to the phi strip design.
const IdentifierHash hash() const
Returns the hash of the strip layer.
Helper struct to share strip layer instances across the readout elements.
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
std::ostream & operator<<(std::ostream &ostr, const Chamber::defineArgs &args)
std::optional< Amg::Vector2D > CheckVector2D