4#ifndef MUONREADOUTGEOMETRYR4_TGCREADOUTELEMENT_H
5#define MUONREADOUTGEOMETRYR4_TGCREADOUTELEMENT_H
13# include "Acts/Utilities/BoundFactory.hpp"
This is a "hash" representation of an Identifier.
const Muon::IMuonIdHelperSvc * idHelperSvc() const
Returns the pointer to the muonIdHelperSvc.
MuonReadoutElement(const defineArgs &args)
const StripLayerPtr & sensorLayout(const IdentifierHash &hash) const
Returns the pointer to the strip layer associated with the gas gap.
unsigned numWireGangs(const IdentifierHash &layHash) const
Returns the number of wire gangs for a given gasGap [1-3].
StatusCode initElement() override final
Element initialization.
ActsTrk::DetectorType detectorType() const override final
Overload from the ActsTrk::IDetectorElement.
Amg::Transform3D fromGapToChamOrigin(const IdentifierHash &layerHash) const
TgcReadoutElement(defineArgs &&args)
Amg::Vector3D channelPosition(const ActsTrk::GeometryContext &ctx, const Identifier &measId) const
Returns the center of the measurement channel eta measurement: wire gang center phi measurement: stri...
double moduleWidthS() const
Returns the length of the bottom edge of the chamber (short width)
const parameterBook & getParameters() const
static bool isStrip(const IdentifierHash &measHash)
Unpacks whether the measurement hash is a strip.
double gasGapPitch() const
Returns the thickness of the gasGap.
static unsigned channelNumber(const IdentifierHash &measHash)
Unpacks the channel number from the measurement hash.
static unsigned gasGapNumber(const IdentifierHash &measHash)
Unpacks the gas gap number from the measurement hash.
const RadialStripDesign & stripLayout(const IdentifierHash &layHash) const
Returns access to the strip design of the given gasGap [1-3] If the gap does not have strips an excep...
Identifier measurementId(const IdentifierHash &measHash) const override final
Converts the measurement hash back to the full Identifier.
IdentifierHash measurementHash(const Identifier &measId) const override final
Constructs the identifier hash from the full measurement Identifier.
static IdentifierHash constructHash(unsigned measCh, unsigned gasGap, const bool isStrip)
Constructs the Hash out of the Identifier fields (channel, gasGap, isStrip)
const WireGroupDesign & wireGangLayout(const IdentifierHash &layHash) const
Returns access to the wire group design of the given gasGap [1-3] If the gap does not have a wires an...
double moduleHeight() const
Returns the height of the chamber (Distance bottom - topWidth)
Amg::Vector3D chamberStripPos(const IdentifierHash &measHash) const
Returns the local strip position w.r.t. to the chamber origin.
double thickness() const override final
unsigned numChannels(const IdentifierHash &measHash) const
Returns the number of readout channels.
double m_gasThickness
Distance between 2 gas gaps (Z - direction)
virtual ~TgcReadoutElement()
double moduleWidthL() const
Returns the length of the top edge of the chamber (top width)
unsigned nGasGaps() const
Returns the number of gasgaps described by this ReadOutElement (usally 2 or 3)
static IdentifierHash flipIsStrip(const IdentifierHash &meashHash, const bool isStrip)
Flips the isStrip bit from a parsed measurment hash.
double moduleThickness() const
Returns the thickness of the chamber.
unsigned numStrips(const IdentifierHash &layHash) const
Returns the number of strips for a given gasGap [1-3].
IdentifierHash layerHash(const Identifier &measId) const override final
const TgcIdHelper & m_idHelper
virtual const TgcIdHelper & tgcIdHelper() const =0
access to TgcIdHelper
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
DetectorType
Simple enum to Identify the Type of the ACTS sub detector.
@ Tgc
Resitive Plate Chambers.
Definition of ATLAS Math & Geometry primitives (Amg)
Eigen::Affine3d Transform3D
Eigen::Matrix< double, 3, 1 > Vector3D
The ReadoutGeomCnvAlg converts the Run4 Readout geometry build from the GeoModelXML into the legacy M...
std::ostream & operator<<(std::ostream &ostr, const Chamber::defineArgs &args)
GeoModel::TransientConstSharedPtr< StripLayer > StripLayerPtr
Helper struct to ship the defining arguments of the detector element around.
Set of parameters to describe a Tgc chamber.
double halfWidthLong
Half length of the chamber long edge (Top)
double halfHeight
Half height of the chamber (Top - botom edge)
double halfThickness
Describe the chamber dimensions Half thickness of the chamber.
std::array< StripLayerPtr, 6 > sensorLayouts
We have maximum 3 gasgaps times eta / phi measurement.
std::shared_ptr< Acts::SurfaceBoundFactory > layerBounds
Set of surface boundaries.
double halfWidthShort
Half length of the chamber short edge (Bottom)