![]() |
ATLAS Offline Software
|
Readout element to describe the Monitored Drift Tube (Mdt) chambers Mdt chambers usually comrpise out of two packs consisting out of 3 or 4 tube layers which are separated by a space frame onto which they are glued. More...
#include <MdtReadoutElement.h>
Classes | |
| struct | defineArgs |
| Declare the define args as concatination of the parameters to describe the chamber and the defineArgs from the MuonReadoutElement holding the Identifier && GeoModel objects. More... | |
| struct | parameterBook |
| Set of parameters to describe a MDT chamber. More... | |
Public Member Functions | |
| MdtReadoutElement (defineArgs &&args) | |
| Constructor with the define arguments. | |
| virtual | ~MdtReadoutElement () |
| Destructor. | |
| const parameterBook & | getParameters () const |
| Get a const reference to the parameter book. | |
| ActsTrk::DetectorType | detectorType () const override final |
| Overload the detector type. | |
| double | thickness () const override final |
| Overload from the Acts::DetectorElement (2 * halfheight) | |
| StatusCode | initElement () override final |
| Overload from MuonReadoutElement. | |
| unsigned | multilayer () const |
| Returns the multi layer of the readout element [1;\2]. | |
| unsigned | numLayers () const |
| Returns how many tube layers are inside the multi layer [1;4]. | |
| unsigned | numTubesInLay () const |
| Returns the number of tubes in a layer. | |
| IdentifierHash | measurementHash (const Identifier &measId) const override final |
| Constructs the measurement hash from the full measurement Identifier. | |
| IdentifierHash | layerHash (const Identifier &measId) const override final |
| Projects the measurement hash onto the layerHash mainly used to access the plane surface in the center of each tube layer. | |
| Identifier | measurementId (const IdentifierHash &measHash) const override final |
| Back conversion of the measurement hash towards a full identifier Tube & layer number are extracted from the hash and combined with the mising Identifier fields from the readout element. | |
| bool | isValid (const IdentifierHash &measHash) const |
| Checks whether the passed meaurement hash corresponds to a valid tube described by the readout element. | |
| bool | isBarrel () const |
| States whether the chamber is built into the barrel or not. | |
| double | tubePitch () const |
| Returns the pitch between 2 tubes in a layer. | |
| double | innerTubeRadius () const |
| Returns the inner tube radius. | |
| double | tubeRadius () const |
| Adds the thickness of the tube wall onto the radius. | |
| double | moduleWidthS () const |
| Returns the length of the bottom edge of the chamber (short width) | |
| double | moduleWidthL () const |
| Returns the length of the top edge of the chamber (top width) | |
| double | moduleHeight () const |
| Returns the height of the chamber (Distance bottom - topWidth) | |
| double | moduleThickness () const |
| Returns the thickness of the chamber. | |
| Amg::Vector3D | globalTubePos (const ActsTrk::GeometryContext &ctx, const Identifier &measId) const |
| Returns the position of the tube mid point in the ATLAS coordinate frame. | |
| Amg::Vector3D | globalTubePos (const ActsTrk::GeometryContext &ctx, const IdentifierHash &hash) const |
| Returns the position of the tube mid point in the ATLAS coordinate frame. | |
| Amg::Vector3D | readOutPos (const ActsTrk::GeometryContext &ctx, const Identifier &measId) const |
| Returns the endpoint of the tube where the readout card is mounted in the ATLAS coordinate frame. | |
| Amg::Vector3D | readOutPos (const ActsTrk::GeometryContext &ctx, const IdentifierHash &hash) const |
| Returns the endpoint of the tube where the readout card is mounted in the ATLAS coordinate frame. | |
| Amg::Vector3D | highVoltPos (const ActsTrk::GeometryContext &ctx, const Identifier &measId) const |
| Returns the endpoint of the tube connected to the high voltage in the ATLAS coordinate frame. | |
| Amg::Vector3D | highVoltPos (const ActsTrk::GeometryContext &ctx, const IdentifierHash &hash) const |
| Returns the endpoint of the tube connected to the high voltage in the ATLAS coordinate frame. | |
| double | distanceToReadout (const ActsTrk::GeometryContext &ctx, const Identifier &measId, const Amg::Vector3D &globPoint) const |
| Returns the distance to the readout card along the wire. | |
| double | distanceToReadout (const ActsTrk::GeometryContext &ctx, const IdentifierHash &measHash, const Amg::Vector3D &globPoint) const |
| Returns the distance to the readout card along the wire. | |
| double | distanceToReadout (const IdentifierHash &measHash, const Amg::Vector3D &localPoint) const |
| Returns the distance to the readout assuming that the parsed point is expressed in the local coordinate system of the tube. | |
| double | activeTubeLength (const IdentifierHash &hash) const |
| double | tubeLength (const IdentifierHash &hash) const |
| double | wireLength (const IdentifierHash &hash) const |
| double | uncutTubeLength (const IdentifierHash &tubeHash) const |
| Returns the uncut tube length. | |
| void | setComplementaryReadoutEle (const MdtReadoutElement *other) |
| Set the link to the second readout element inside the muon station. | |
| Amg::Vector3D | bLineReferencePoint () const |
| Returns the fixed point of the B-line & as-bult defromation model expressed in the as-built frame. | |
| Amg::Vector3D | localTubePos (const IdentifierHash &hash) const |
| Returns the tube position in the chamber coordinate frame (Not applying the B-line corrections) | |
| Amg::Transform3D | asBuiltRefFrame () const |
| Returns the transformation to go into the reference frame of the as-buit & b-line model starting from the readout element frame. | |
| const MdtReadoutElement * | complementaryRE () const |
| Returns the pointer to the other readout element inside the muon station. | |
| const GeoAlignableTransform * | alignableTransform () const |
| Return the alignable transform node of the readout element. | |
| Identifier | identify () const override final |
| Return the ATLAS identifier. | |
| IdentifierHash | identHash () const |
| Returns the hash of the readout element which is identical to the detector element hash provided by the associated idHelper. | |
| int | stationName () const |
| Returns the stationName (BIS, BOS, etc) encoded into the integer. | |
| int | stationEta () const |
| Returns the stationEta (positive A site, negative C site) | |
| int | stationPhi () const |
| Returns the stationPhi (1-8) -> sector (2*phi - (isSmall)) | |
| Muon::MuonStationIndex::ChIndex | chamberIndex () const |
| Returns the chamber index of the Identifier (MMS & STS) have the same chamber Index (EIS) | |
| const std::string & | chamberDesign () const |
| The chamber design refers to the construction parameters of a readout element. | |
| const Muon::IMuonIdHelperSvc * | idHelperSvc () const |
| Returns the pointer to the muonIdHelperSvc. | |
| Amg::Vector3D | center (const ActsTrk::GeometryContext &ctx) const |
| Returns the geometrical center point of the readout element. | |
| Amg::Vector3D | center (const ActsTrk::GeometryContext &ctx, const Identifier &id) const |
| Returns the origin of the readout element's transform. | |
| Amg::Vector3D | center (const ActsTrk::GeometryContext &ctx, const IdentifierHash &hash) const |
| Returns the origin of the readout element's transform. | |
| Amg::Transform3D | globalToLocalTransform (const ActsTrk::GeometryContext &ctx) const |
| Returns the transformation from the global ATLAS coordinate system into the local coordinate system of the readout element. | |
| Amg::Transform3D | globalToLocalTransform (const ActsTrk::GeometryContext &ctx, const Identifier &id) const |
| Returns the transformations from the ATLAS coordinate system into the local coordinate system of the readout sensor. | |
| Amg::Transform3D | globalToLocalTransform (const ActsTrk::GeometryContext &ctx, const IdentifierHash &hash) const |
| Returns the transformations from the ATLAS coordinate system into the local coordinate system using the measurement / layer hash mechanism. | |
| const Amg::Transform3D & | localToGlobalTransform (const ActsTrk::GeometryContext &ctx) const |
| Returns the transformation from the local coordinate system of the readout element into the global ATLAS coordinate system (inverse of globalToLocal). | |
| const Amg::Transform3D & | localToGlobalTransform (const ActsTrk::GeometryContext &ctx, const Identifier &id) const |
| Returns the transformation from the local coordinate system of the readout element into the global ATLAS coordinate system (inverse of globalToLocal). | |
| const Amg::Transform3D & | localToGlobalTransform (const ActsTrk::GeometryContext &ctx, const IdentifierHash &id) const |
| Returns the transformation from the local coordinate system of the readout element into the global ATLAS coordinate system (inverse of globalToLocal). | |
| const Amg::Transform3D & | localToGlobalTransform (const Acts::GeometryContext &gctx) const override final |
| Wrapper function of the localToGlobalTransform method to satisfy the Acts::IDetectorElementBase interface. | |
| const Acts::Surface & | surface () const override final |
| Returns the surface associated with the readout element. | |
| Acts::Surface & | surface () override final |
| Returns the mutable surface associated with the readout element. | |
| const Acts::Surface & | surface (const IdentifierHash &hash) const |
| Returns the surface associated with the transform of a given readout layer. | |
| Acts::Surface & | surface (const IdentifierHash &hash) |
| Returns the mutable surface associated with the transform of a given readout layer. | |
| std::shared_ptr< Acts::Surface > | surfacePtr (const IdentifierHash &hash) const |
| Returns the mutable surface pointer associated with the transform of a given readout layer. | |
| std::vector< std::shared_ptr< Acts::Surface > > | getSurfaces () const |
| Returns all surfaces that are associated with the active readout planes. | |
| void | setChamberLink (const Chamber *chamber) |
| Sets the link to the enclosing chamber. | |
| void | setSectorLink (const SpectrometerSector *envelope) |
| Set the link to the enclosing sector envelope. | |
| const SpectrometerSector * | msSector () const |
| Returns the pointer to the envelope volume enclosing all chambers in the sector. | |
| const Chamber * | chamber () const |
| Returns the pointer to the chamber enclosing this readout element. | |
| virtual bool | isSensitive () const final override |
| Returns whether the detector element is sensitive. | |
| void | releaseUnAlignedTrfs () const |
| Release all transforms from the memory that are not connected with a geometry context but cached by the readout element itself. | |
| unsigned int | storeAlignedTransforms (const ActsTrk::DetectorAlignStore &store) const override final |
| Construct the final aligned transformations and store them in the alignment store. | |
| bool | msgLvl (const MSG::Level lvl) const |
| Test the output level. | |
| MsgStream & | msg () const |
| The standard message stream. | |
| MsgStream & | msg (const MSG::Level lvl) const |
| The standard message stream. | |
| void | setLevel (MSG::Level lvl) |
| Change the current logging level. | |
Static Public Member Functions | |
| static IdentifierHash | measurementHash (unsigned layerNumber, unsigned tubeNumber) |
| Constructs a Measurement hash from layer && tube number. | |
| static unsigned | tubeNumber (const IdentifierHash &hash) |
| Transforms the measurement hash into a tube number ranging from [0; numTubeInLay() -1]. | |
| static unsigned | layerNumber (const IdentifierHash &hash) |
| Transforms the measurement hash into a tube-layer number ranging from [0; numLayers() -1]. | |
| static IdentifierHash | layerHash (const IdentifierHash &measHash) |
| Static method to tranform a measurement hash into a layer hash. | |
Protected Member Functions | |
| const Amg::Transform3D & | toStation (const ActsTrk::DetectorAlignStore *alignStore) const |
| Returns the transformation from the GeoModel tree and applies the A-lines if a valid alignment store pointer is provided. | |
| template<class MuonDetImpl> | |
| StatusCode | insertTransform (const IdentifierHash &hash) |
| Constructs the TransformDetEleCache associated with the hash of the given Mdt tube or strip layer. | |
| StatusCode | createGeoTransform () |
| Creates the TransformCacheDetEle corresponding the generic local -> global transformation of the readout element. | |
| StatusCode | strawSurfaceFactory (const IdentifierHash &hash, std::shared_ptr< const Acts::LineBounds > lBounds) |
| Invokes the factory to create straw surfaces && to associate them with the particular transform cache. | |
| StatusCode | planeSurfaceFactory (const IdentifierHash &hash, std::shared_ptr< const Acts::PlanarBounds > pBounds) |
| Invokes the factory to create plane surfaces && to associate them with the particular transform cache. | |
Static Protected Member Functions | |
| static IdentifierHash | geoTransformHash () |
| Returns the hash that is associated with the surface cache holding the transformation that is placing the ReadoutElement inside the ATLAS coordinate system. | |
Private Types | |
| using | tubeSide_t = MdtAsBuiltPar::tubeSide_t |
| Moves the wire endpoints according to the as-built model. | |
| using | TransformCacheMap = std::vector<std::unique_ptr<ActsTrk::TransformCache>> |
| The transform caches corresponding to the surfaces of the tubes and gas gap planes. | |
Private Member Functions | |
| Amg::Transform3D | toChamberLayer (const IdentifierHash &hash) const |
| Returns the transformation into the rest frame of the tube x-axis: Pointing towards the next layer y-axis: Pointing parallel to the wire layer z-axis: Pointing along the wire. | |
| Amg::Transform3D | toTubeFrame (const IdentifierHash &hash) const |
| Returns the transformation into the rest frame of the tube x-axis: Pointing towards the next layer y-axis: Pointing parallel to the wire layer z-axis: Pointing along the wire. | |
| Amg::Transform3D | fromIdealToDeformed (const IdentifierHash &tubeHash, const ActsTrk::DetectorAlignStore *store) const |
| Applies the B & as-built parameters. | |
| Amg::Vector3D | wireEndpointAsBuilt (const MdtAsBuiltPar &asBuilt, const IdentifierHash &tubeHash, const Amg::Vector3D &nominalEnd, const tubeSide_t side) const |
| Amg::Vector3D | applyBlineCorrections (const BLinePar &bline, const Amg::Vector3D &localTubeEndPoint, const Amg::Vector3D &fixedPoint, const double thickness) const |
| Apply the B-line model correction to a tube endpoint. | |
| const ActsTrk::TransformCache * | transformCache (const IdentifierHash &measHash) const |
| Returns the pointer to the TransformCache associated with this measurement hash. | |
| void | initMessaging () const |
| Initialize our message level and MessageSvc. | |
Private Attributes | |
| parameterBook | m_pars {} |
| defining parameter set | |
| const MdtIdHelper & | m_idHelper {idHelperSvc()->mdtIdHelper()} |
| Detector identifier helper to quickly extract the ID fields. | |
| int | m_stML {m_idHelper.multilayer(identify())} |
| Identifier index of the multilayer (1-2) | |
| bool | m_isBarrel {m_idHelper.isBarrel(identify())} |
| Flag defining whether the chamber is barrel or not. | |
| const MdtReadoutElement * | m_reOtherMl {this} |
| Complementary readout element. | |
| ServiceHandle< Muon::IMuonIdHelperSvc > | m_idHelperSvc {"Muon::MuonIdHelperSvc/MuonIdHelperSvc", "MuonReadoutElement"} |
| IdHelperSvc for Identifier manipulation. | |
| const defineArgs | m_args {} |
| IdentifierHash | m_detElHash {} |
| Cache of the detector element hash. | |
| int | m_stName {-1} |
| Cache the station name of the identifier. | |
| int | m_stEta {-1} |
| Cache the station eta of the identifier. | |
| int | m_stPhi {-1} |
| Cache the station phi of the identifier. | |
| TransformCacheMap | m_localToGlobalCaches {} |
| std::unique_ptr< ActsTrk::TransformCache > | m_centralTrfCache {} |
| Cache of the transform of the readout element itself. | |
| Muon::MuonStationIndex::ChIndex | m_chIdx {Muon::MuonStationIndex::ChIndex::ChUnknown} |
| Cache the chamber index of the Identifier. | |
| ActsTrk::SurfaceCacheSet | m_surfaces |
| Cache of all associated surfaces. | |
| const SpectrometerSector * | m_msSectorLink {} |
| Pointer to the associated MS-sector & MuonChamber. | |
| const Chamber * | m_chambLink {nullptr} |
| std::string | m_nm |
| Message source name. | |
| boost::thread_specific_ptr< MsgStream > | m_msg_tls |
| MsgStream instance (a std::cout like with print-out levels) | |
| std::atomic< IMessageSvc * > | m_imsg { nullptr } |
| MessageSvc pointer. | |
| std::atomic< MSG::Level > | m_lvl { MSG::NIL } |
| Current logging level. | |
| std::atomic_flag m_initialized | ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT |
| Messaging initialized (initMessaging) | |
Readout element to describe the Monitored Drift Tube (Mdt) chambers Mdt chambers usually comrpise out of two packs consisting out of 3 or 4 tube layers which are separated by a space frame onto which they are glued.
Each readout element covers the description of one such pack called a multilayer. The multilayers have an internal numbering of tubes and layers. The first tube of the first layer is defined to be closed to the IP.
Definition at line 25 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MdtReadoutElement.h.
|
privateinherited |
The transform caches corresponding to the surfaces of the tubes and gas gap planes.
Definition at line 271 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonReadoutElement.h.
|
private |
Moves the wire endpoints according to the as-built model.
| asBuilt | As-built model parameters |
| tubeHash | Measurement hash of the considered tube |
| nominalEnd | Tube end of a nominally uncut tube |
| side | Does the end represent positive or negative z |
Definition at line 263 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MdtReadoutElement.h.
| MuonGMR4::MdtReadoutElement::MdtReadoutElement | ( | defineArgs && | args | ) |
Constructor with the define arguments.
Definition at line 41 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
virtualdefault |
Destructor.
| double MuonGMR4::MdtReadoutElement::activeTubeLength | ( | const IdentifierHash & | hash | ) | const |
Definition at line 173 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
inherited |
Return the alignable transform node of the readout element.
|
private |
Apply the B-line model correction to a tube endpoint.
| bline | Set of b-line parameters |
| localTubeEndPoint | Endpoint of the tube to correct |
| fixedPoint | Point in the chamber that's invariant in the b-line model |
| thickness | Thickness of the two multilayers |
Definition at line 320 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
| Amg::Transform3D MuonGMR4::MdtReadoutElement::asBuiltRefFrame | ( | ) | const |
Returns the transformation to go into the reference frame of the as-buit & b-line model starting from the readout element frame.
Definition at line 219 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
| Amg::Vector3D MuonGMR4::MdtReadoutElement::bLineReferencePoint | ( | ) | const |
Returns the fixed point of the B-line & as-bult defromation model expressed in the as-built frame.
Definition at line 233 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
inherited |
Returns the geometrical center point of the readout element.
| ctx | Geometry context to take the alignment corrections into account |
|
inherited |
Returns the origin of the readout element's transform.
| ctx | Geometry context to take the alignment corrections into account |
| id | Identifier of the measurement channel to be retrieved |
|
inherited |
Returns the origin of the readout element's transform.
| ctx | Geometry context to take the alignment corrections into account |
| hash | Measurement hash of the transform to be retrieved |
|
inherited |
Returns the pointer to the chamber enclosing this readout element.
|
inherited |
The chamber design refers to the construction parameters of a readout element.
It's used for the retrieval of the chamber meta data containing the information about the number of sensors, their sepration etc.
|
inherited |
Returns the chamber index of the Identifier (MMS & STS) have the same chamber Index (EIS)
| const MdtReadoutElement * MuonGMR4::MdtReadoutElement::complementaryRE | ( | ) | const |
Returns the pointer to the other readout element inside the muon station.
|
protectedinherited |
Creates the TransformCacheDetEle corresponding the generic local -> global transformation of the readout element.
Needs to be called by each technology during initialization
Check that the alignable node has been assigned
Definition at line 32 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
|
inlinefinaloverridevirtual |
Overload the detector type.
Implements ActsTrk::IDetectorElementBase.
Definition at line 89 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MdtReadoutElement.h.
| double MuonGMR4::MdtReadoutElement::distanceToReadout | ( | const ActsTrk::GeometryContext & | ctx, |
| const Identifier & | measId, | ||
| const Amg::Vector3D & | globPoint ) const |
Returns the distance to the readout card along the wire.
| ctx | Geometry context carrying the current alignment |
| measId | Identifier of the tube for which the distance is to be calculated |
| globPoint | External point in the ATLAS coordinate frame |
| double MuonGMR4::MdtReadoutElement::distanceToReadout | ( | const ActsTrk::GeometryContext & | ctx, |
| const IdentifierHash & | measHash, | ||
| const Amg::Vector3D & | globPoint ) const |
Returns the distance to the readout card along the wire.
| ctx | Geometry context carrying the current alignment |
| measHash | Measurement hash of the tube for which the distance is to be calculated |
| globPoint | External point in the ATLAS coordinate frame |
Definition at line 191 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
| double MuonGMR4::MdtReadoutElement::distanceToReadout | ( | const IdentifierHash & | measHash, |
| const Amg::Vector3D & | localPoint ) const |
Returns the distance to the readout assuming that the parsed point is expressed in the local coordinate system of the tube.
I.e. the wire points along the z-axis
| measHash | IdentifierHash of the tube |
| localPoint | External local point inside the tube (No check is made whether that's the case). |
The position of the readout chip is at the negative tube side
Definition at line 197 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
private |
Applies the B & as-built parameters.
No deformation parameters were parsed at all
No deformation parameters were stored for this particular readout element
Relative sign to calculate the thickness. If multilayer == 1, we want the lower point and the upper point otherwise.
Move the tube into the center
Apply as-built correction
Switch tube ends back to MGM coordinates
Definition at line 440 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
staticprotectedinherited |
Returns the hash that is associated with the surface cache holding the transformation that is placing the ReadoutElement inside the ATLAS coordinate system.
Definition at line 41 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
| const MdtReadoutElement::parameterBook & MuonGMR4::MdtReadoutElement::getParameters | ( | ) | const |
Get a const reference to the parameter book.
Definition at line 45 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
inherited |
Returns all surfaces that are associated with the active readout planes.
Definition at line 146 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
|
inherited |
Returns the transformation from the global ATLAS coordinate system into the local coordinate system of the readout element.
The local axes are oriented such that x-axis: Is parallel to the sensors measuring the eta coordinate (e.g. parallel to the Mdt tube wire) y-axis: Is parallel to the sensors measuring the phi coordinate (e.g. to the next tube wire) z-axis: Points vertically outwards the chamber (e.g. radially outwards for barrel or to the endcap cavern wall)
| ctx | Geometry context to take the alignment corrections into account |
Definition at line 71 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
|
inherited |
Returns the transformations from the ATLAS coordinate system into the local coordinate system of the readout sensor.
The orientiation of the axes depends on whether the sensor is described by a plane or by a tube wire. In the former case, the axes are oriented such that x-axis: Points to the next eta sensor such that local-x always constrains the precision coordinate y-axis: Points to the next phi sensor such that local y always constains the coordinate along the precision sensor z-axis: Is the cross-product of the other two For Mdt tubes the axis orientiation is such that x-axis: Points to the next tube in the same tube-layer y-axis: Points to the next tube-layer plane z-axis: Points along the tube wire
| ctx | Geometry context to take the alignment corrections into account |
| id | Identifier of the measurement for which the transform shall be retrieved |
|
inherited |
Returns the transformations from the ATLAS coordinate system into the local coordinate system using the measurement / layer hash mechanism.
For strip-like detectors a layer hash must always be parsed. For the Mdts a measurement or layer hash can be parsed depending on whether the plane transform or the particular tube transform shall be retrieved.
| ctx | Geometry context to take the alignment corrections into account. |
| hash | Hash of the transform to fetch (Measurement or layer hash). |
| Amg::Vector3D MuonGMR4::MdtReadoutElement::globalTubePos | ( | const ActsTrk::GeometryContext & | ctx, |
| const Identifier & | measId ) const |
Returns the position of the tube mid point in the ATLAS coordinate frame.
| ctx | Geometry context carrying the current alignment |
| measId | Identifier of the tube for which the position is to be retrieved |
| Amg::Vector3D MuonGMR4::MdtReadoutElement::globalTubePos | ( | const ActsTrk::GeometryContext & | ctx, |
| const IdentifierHash & | hash ) const |
Returns the position of the tube mid point in the ATLAS coordinate frame.
| ctx | Geometry context carrying the current alignment |
| hash | Measurement hash of the tube for which the position is to be retrieved |
Definition at line 144 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
| Amg::Vector3D MuonGMR4::MdtReadoutElement::highVoltPos | ( | const ActsTrk::GeometryContext & | ctx, |
| const Identifier & | measId ) const |
Returns the endpoint of the tube connected to the high voltage in the ATLAS coordinate frame.
| ctx | Geometry context carrying the current alignment |
| measId | Identifier of the tube for which the position is to be retrieved |
| Amg::Vector3D MuonGMR4::MdtReadoutElement::highVoltPos | ( | const ActsTrk::GeometryContext & | ctx, |
| const IdentifierHash & | hash ) const |
Returns the endpoint of the tube connected to the high voltage in the ATLAS coordinate frame.
| ctx | Geometry context carrying the current alignment |
| hash | Measurement hash of the tube for which the position is to be retrieved |
Definition at line 157 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
inherited |
Returns the hash of the readout element which is identical to the detector element hash provided by the associated idHelper.
|
finaloverridevirtualinherited |
Return the ATLAS identifier.
Implements ActsTrk::IDetectorElementBase.
|
inherited |
Returns the pointer to the muonIdHelperSvc.
|
finaloverridevirtual |
Overload from MuonReadoutElement.
First check whether we're having tubes
Create bounds that are representing the surface planes of each tube layer & the readout element itself
Coordinate system of the trapezoid is in the center while the tubes are defined w.r.t. to the chamber edge. Move first tube into the proper position
Cache the transformations to the chamber layers
Cache the transformations to the tube layers
Ensure that all linear transformations are rotations
Ensure that all tubes have the same pitch
Implements MuonGMR4::MuonReadoutElement.
Definition at line 51 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
privateinherited |
Initialize our message level and MessageSvc.
This method should only be called once.
Definition at line 39 of file AthMessaging.cxx.
| double MuonGMR4::MdtReadoutElement::innerTubeRadius | ( | ) | const |
Returns the inner tube radius.
|
protectedinherited |
Constructs the TransformDetEleCache associated with the hash of the given Mdt tube or strip layer.
The method is templated over the specific implementation of the readout element as the TransformCacheDetEle implements the assembly of the final transforms. The method returns a failure of an instance for the same hash has already been invoked earlier
| hash | Measurement / layer hash to identifier the transform of the readout layer |
| bool MuonGMR4::MdtReadoutElement::isBarrel | ( | ) | const |
States whether the chamber is built into the barrel or not.
|
inlinefinaloverridevirtualinherited |
Returns whether the detector element is sensitive.
Definition at line 206 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonReadoutElement.h.
| bool MuonGMR4::MdtReadoutElement::isValid | ( | const IdentifierHash & | measHash | ) | const |
Checks whether the passed meaurement hash corresponds to a valid tube described by the readout element.
| measHash | Associated measurement hash encoding tube & layer number |
|
finaloverridevirtual |
Projects the measurement hash onto the layerHash mainly used to access the plane surface in the center of each tube layer.
| measId | Identifier of an associated Mdt measurement |
Implements MuonGMR4::MuonReadoutElement.
|
static |
Static method to tranform a measurement hash into a layer hash.
| measHash | Measurement corresponding to this readout element |
|
static |
Transforms the measurement hash into a tube-layer number ranging from [0; numLayers() -1].
| hash | Measurement hash to transform |
|
finaloverrideinherited |
Wrapper function of the localToGlobalTransform method to satisfy the Acts::IDetectorElementBase interface.
| gctx | Acts representation of the GeometryContext |
Definition at line 78 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
|
inherited |
Returns the transformation from the local coordinate system of the readout element into the global ATLAS coordinate system (inverse of globalToLocal).
| ctx | Geometry context to take the alignment corrections into account. |
Definition at line 74 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
|
inherited |
Returns the transformation from the local coordinate system of the readout element into the global ATLAS coordinate system (inverse of globalToLocal).
| ctx | Geometry context to take the alignment corrections into account |
| id | Identifier of the measurement for which the transform shall be retrieved |
|
inherited |
Returns the transformation from the local coordinate system of the readout element into the global ATLAS coordinate system (inverse of globalToLocal).
| ctx | Geometry context to take the alignment corrections into account |
| hash | Hash of the transform to fetch (Measurement or layer hash). |
| Amg::Vector3D MuonGMR4::MdtReadoutElement::localTubePos | ( | const IdentifierHash & | hash | ) | const |
Returns the tube position in the chamber coordinate frame (Not applying the B-line corrections)
Definition at line 149 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
finaloverridevirtual |
Constructs the measurement hash from the full measurement Identifier.
The hash is always defined w.r.t the specific detector element and used to access the information in memory quickly
| measId | Identifier of an associated Mdt measurement |
Implements MuonGMR4::MuonReadoutElement.
|
static |
Constructs a Measurement hash from layer && tube number.
| layerNumber | Number of the tube layer [1;numLayers()] |
| tubenumber | Number of the tube inside the layer [1;numTubesInLay()] |
|
finaloverridevirtual |
Back conversion of the measurement hash towards a full identifier Tube & layer number are extracted from the hash and combined with the mising Identifier fields from the readout element.
| measHash | Measurement hash to transform |
Implements MuonGMR4::MuonReadoutElement.
Definition at line 46 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
| double MuonGMR4::MdtReadoutElement::moduleHeight | ( | ) | const |
Returns the height of the chamber (Distance bottom - topWidth)
| double MuonGMR4::MdtReadoutElement::moduleThickness | ( | ) | const |
Returns the thickness of the chamber.
| double MuonGMR4::MdtReadoutElement::moduleWidthL | ( | ) | const |
Returns the length of the top edge of the chamber (top width)
| double MuonGMR4::MdtReadoutElement::moduleWidthS | ( | ) | const |
Returns the length of the bottom edge of the chamber (short width)
|
inlineinherited |
The standard message stream.
Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.
Definition at line 167 of file AthMessaging.h.
|
inlineinherited |
The standard message stream.
Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.
Definition at line 182 of file AthMessaging.h.
|
inlineinherited |
Test the output level.
| lvl | The message level to test against |
| true | Messages at level "lvl" will be printed |
Definition at line 151 of file AthMessaging.h.
|
inherited |
Returns the pointer to the envelope volume enclosing all chambers in the sector.
| unsigned MuonGMR4::MdtReadoutElement::multilayer | ( | ) | const |
Returns the multi layer of the readout element [1;\2].
| unsigned MuonGMR4::MdtReadoutElement::numLayers | ( | ) | const |
Returns how many tube layers are inside the multi layer [1;4].
| unsigned MuonGMR4::MdtReadoutElement::numTubesInLay | ( | ) | const |
Returns the number of tubes in a layer.
|
protectedinherited |
Invokes the factory to create plane surfaces && to associate them with the particular transform cache.
| hash | Layer hash of the readout plane of interest |
| lBounds | Bounds describing the rectangle or trapezoidal surface's dimensions |
Definition at line 118 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
| Amg::Vector3D MuonGMR4::MdtReadoutElement::readOutPos | ( | const ActsTrk::GeometryContext & | ctx, |
| const Identifier & | measId ) const |
Returns the endpoint of the tube where the readout card is mounted in the ATLAS coordinate frame.
| ctx | Geometry context carrying the current alignment |
| measId | Identifier of the tube for which the position is to be retrieved |
| Amg::Vector3D MuonGMR4::MdtReadoutElement::readOutPos | ( | const ActsTrk::GeometryContext & | ctx, |
| const IdentifierHash & | hash ) const |
Returns the endpoint of the tube where the readout card is mounted in the ATLAS coordinate frame.
| ctx | Geometry context carrying the current alignment |
| hash | Measurement hash of the tube for which the position is to be retrieved |
Definition at line 152 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
inherited |
Release all transforms from the memory that are not connected with a geometry context but cached by the readout element itself.
Definition at line 49 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
|
inherited |
Sets the link to the enclosing chamber.
Definition at line 139 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
| void MuonGMR4::MdtReadoutElement::setComplementaryReadoutEle | ( | const MdtReadoutElement * | other | ) |
Set the link to the second readout element inside the muon station.
| other | pointer to the readoutElement |
Definition at line 207 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
inherited |
Change the current logging level.
Use this rather than msg().setLevel() for proper operation with MT.
Definition at line 28 of file AthMessaging.cxx.
|
inherited |
Set the link to the enclosing sector envelope.
Definition at line 142 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
|
inherited |
Returns the stationEta (positive A site, negative C site)
|
inherited |
Returns the stationName (BIS, BOS, etc) encoded into the integer.
|
inherited |
Returns the stationPhi (1-8) -> sector (2*phi - (isSmall))
|
finaloverridevirtualinherited |
Construct the final aligned transformations and store them in the alignment store.
Returns the number of how many transformations have been stored
Implements ActsTrk::IDetectorElement.
Definition at line 58 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
|
protectedinherited |
Invokes the factory to create straw surfaces && to associate them with the particular transform cache.
| hash | Measurement hash of the tube of interest |
| lBounds | Surface bound object describing the straw radius and the active tube length |
Definition at line 95 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
|
finaloverrideinherited |
Returns the surface associated with the readout element.
It is placed in the center of the readout element's volume and has the volumes surface bounds
Definition at line 90 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
|
finaloverrideinherited |
Returns the mutable surface associated with the readout element.
Definition at line 91 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
|
inherited |
Returns the mutable surface associated with the transform of a given readout layer.
(E.g. tube or the strip plane)
| hash | Hash of the surface to fetch (Measurement or layer hash). |
Definition at line 93 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
|
inherited |
Returns the surface associated with the transform of a given readout layer.
(E.g. tube or the strip plane)
| hash | Hash of the surface to fetch (Measurement or layer hash). |
Definition at line 92 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
|
inherited |
Returns the mutable surface pointer associated with the transform of a given readout layer.
(E.g. tube or the strip plane)
| hash | Hash of the surface to fetch (Measurement or layer hash). |
Definition at line 82 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
|
finaloverridevirtual |
Overload from the Acts::DetectorElement (2 * halfheight)
Implements MuonGMR4::MuonReadoutElement.
|
private |
Returns the transformation into the rest frame of the tube x-axis: Pointing towards the next layer y-axis: Pointing parallel to the wire layer z-axis: Pointing along the wire.
Definition at line 162 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
protectedinherited |
Returns the transformation from the GeoModel tree and applies the A-lines if a valid alignment store pointer is provided.
The local coordinate system in GeoModel differs from the system used by the localToGlobaTransformations. It is referred to the AMDB coordinate system used to describe the MS in Run 1-3 x-axis: Points along the thickness of the readout element (e.g. radially outwards for barrel chambers or along global Z for detector mounted in the endcaps) y-axis: Points along the edge which is parallel to the eta sensors z-axis: Points along towards the next eta sensor
Definition at line 46 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonReadoutElement.cxx.
|
private |
Returns the transformation into the rest frame of the tube x-axis: Pointing towards the next layer y-axis: Pointing parallel to the wire layer z-axis: Pointing along the wire.
Definition at line 167 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
privateinherited |
Returns the pointer to the TransformCache associated with this measurement hash.
| measHash | Measurement hash for which the cache shall be returned |
| double MuonGMR4::MdtReadoutElement::tubeLength | ( | const IdentifierHash & | hash | ) | const |
Definition at line 185 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
static |
Transforms the measurement hash into a tube number ranging from [0; numTubeInLay() -1].
| hash | Measurement hash to transform |
| double MuonGMR4::MdtReadoutElement::tubePitch | ( | ) | const |
Returns the pitch between 2 tubes in a layer.
| double MuonGMR4::MdtReadoutElement::tubeRadius | ( | ) | const |
Adds the thickness of the tube wall onto the radius.
| double MuonGMR4::MdtReadoutElement::uncutTubeLength | ( | const IdentifierHash & | tubeHash | ) | const |
Returns the uncut tube length.
Definition at line 179 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
private |
Definition at line 250 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
| double MuonGMR4::MdtReadoutElement::wireLength | ( | const IdentifierHash & | hash | ) | const |
Definition at line 188 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MdtReadoutElement.cxx.
|
mutableprivateinherited |
Messaging initialized (initMessaging)
Definition at line 141 of file AthMessaging.h.
|
privateinherited |
Definition at line 261 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonReadoutElement.h.
|
privateinherited |
Cache of the transform of the readout element itself.
Definition at line 274 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonReadoutElement.h.
|
privateinherited |
Definition at line 284 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonReadoutElement.h.
|
privateinherited |
Cache the chamber index of the Identifier.
Definition at line 277 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonReadoutElement.h.
|
privateinherited |
Cache of the detector element hash.
Definition at line 263 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonReadoutElement.h.
|
private |
Detector identifier helper to quickly extract the ID fields.
Definition at line 283 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MdtReadoutElement.h.
|
privateinherited |
IdHelperSvc for Identifier manipulation.
Definition at line 259 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonReadoutElement.h.
|
mutableprivateinherited |
|
private |
Flag defining whether the chamber is barrel or not.
Definition at line 287 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MdtReadoutElement.h.
|
privateinherited |
Definition at line 272 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonReadoutElement.h.
|
mutableprivateinherited |
|
mutableprivateinherited |
MsgStream instance (a std::cout like with print-out levels)
Definition at line 132 of file AthMessaging.h.
|
privateinherited |
Pointer to the associated MS-sector & MuonChamber.
Definition at line 283 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonReadoutElement.h.
|
privateinherited |
Message source name.
Definition at line 129 of file AthMessaging.h.
|
private |
defining parameter set
Definition at line 281 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MdtReadoutElement.h.
|
private |
Complementary readout element.
Definition at line 289 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MdtReadoutElement.h.
|
privateinherited |
Cache the station eta of the identifier.
Definition at line 267 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonReadoutElement.h.
|
private |
Identifier index of the multilayer (1-2)
Definition at line 285 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MdtReadoutElement.h.
|
privateinherited |
Cache the station name of the identifier.
Definition at line 265 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonReadoutElement.h.
|
privateinherited |
Cache the station phi of the identifier.
Definition at line 269 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonReadoutElement.h.
|
privateinherited |
Cache of all associated surfaces.
Definition at line 281 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonReadoutElement.h.