|
ATLAS Offline Software
|
Go to the documentation of this file.
8 #include <GaudiKernel/SystemOfUnits.h>
11 #ifndef SIMULATIONBASE
12 # include "Acts/Surfaces/TrapezoidBounds.hpp"
20 ostr<<
"chamber shortWidth/longWidth/length [mm]: "<<(2.*
pars.halfShortWidth)<<
"/";
21 ostr<<(2.*
pars.halfLongWidth)<<
"/"<<(2.*
pars.halfHeight)<<std::endl;
27 m_pars{std::move(
args)} {
38 return StatusCode::FAILURE;
40 #ifndef SIMULATIONBASE
47 IdentifierHash layHash{
layer};
50 return StatusCode::FAILURE;
52 ATH_CHECK(insertTransform<MmReadoutElement>(layHash));
53 #ifndef SIMULATIONBASE
57 design.longHalfHeight(),
62 #ifndef SIMULATIONBASE
65 return StatusCode::SUCCESS;
74 const IdentifierHash lHash =
layerHash(measHash);
75 if (
static_cast<unsigned int>(lHash) <
m_pars.
layers.size()) {
78 ATH_MSG_WARNING(__FILE__<<
":"<<__LINE__<<
" The layer hash "<<
static_cast<unsigned int>(lHash)
79 <<
" is out of range. Maximum range "<<
m_pars.
layers.size());
85 const IdentifierHash lHash =
layerHash(measHash);
86 if (
static_cast<unsigned int>(lHash) <
m_pars.
layers.size()) {
89 ATH_MSG_WARNING(__FILE__<<
":"<<__LINE__<<
" The layer hash "<<
static_cast<unsigned int>(lHash)
90 <<
" is out of range. Maximum range "<<
m_pars.
layers.size());
95 const IdentifierHash lHash =
layerHash(measHash);
96 if (
static_cast<unsigned int>(lHash) <
m_pars.
layers.size()) {
99 ATH_MSG_WARNING(__FILE__<<
":"<<__LINE__<<
" The layer hash "<<
static_cast<unsigned int>(lHash)
100 <<
" is out of range. Maximum range "<<
m_pars.
layers.size());
104 #ifndef SIMULATIONBASE
106 std::map<Identifier, std::shared_ptr<Acts::Surface>> surfaces{};
MmReadoutElement::parameterBook parameterBook
Amg::Transform3D fromGapToChamOrigin(const IdentifierHash &layerHash) const
static IdentifierHash createHash(const int gasGap, const int strip)
unsigned int nGasGaps() const
Returns the number of gas gaps.
Set of parameters to describe a RPC chamber.
const Amg::Transform3D & toOrigin() const
Returns the transformation to go from the strip layer center to the origin of the Strip chamber.
The MuonReadoutElement is an abstract class representing the geometry representing the muon detector.
StatusCode createGeoTransform()
std::map< Identifier, std::shared_ptr< Acts::Surface > > getSurfaces() const override final
Returns all surfaces that are associated with the active readout planes.
double halfShortWidth
width of the lower edge
A muon chamber is a collection of readout elements belonging to the same station.
Amg::Vector3D stripPosition(const ActsGeometryContext &ctx, const Identifier &measId) const
Returns the position of the strip center.
const Muon::IMuonIdHelperSvc * idHelperSvc() const
Returns the pointer to the muonIdHelperSvc.
::StatusCode StatusCode
StatusCode definition for legacy code.
static unsigned int stripNumber(const IdentifierHash &measHash)
double halfHeight
length in the radial direction
Eigen::Affine3d Transform3D
Identifier measurementId(const IdentifierHash &measHash) const override final
Converts the measurement hash back to the full Identifier.
MsgStream & operator<<(MsgStream &out, const ActsUtils::Stat &stat)
double halfLongWidth
width of the upper edge
Include the GeoPrimitives which need to be put first.
std::vector< StripLayerPtr > layers
Pointers to the strip layers.
Amg::Vector3D leftStripEdge(const ActsGeometryContext &ctx, const Identifier &measId) const
Returns the global position of the strip edge.
const StripLayer & stripLayer(const Identifier &measId) const
const parameterBook & getParameters() const
Amg::Vector3D localStripPos(unsigned int stripum) const
Returns the position of the strip expressed in the local frame.
static IdentifierHash geoTransformHash()
Returns the hash that is associated with the surface cache holding the transformation that is placing...
Identifier identify() const override final
Return the athena identifier.
Eigen::Matrix< double, 3, 1 > Vector3D
StatusCode planeSurfaceFactory(const IdentifierHash &hash, std::shared_ptr< Acts::PlanarBounds > pBounds)
std::shared_ptr< Acts::Surface > surfacePtr(const IdentifierHash &hash) const
Returns the pointer associated to a certain wire / plane.
IdentifierHash layerHash(const Identifier &measId) const override final
ActsTrk::SurfaceBoundSetPtr< Acts::TrapezoidBounds > layerBounds
#define ATH_MSG_WARNING(x)
Amg::Vector3D rightStripEdge(const ActsGeometryContext &ctx, const Identifier &measId) const
Returns the global position of the strip edge.
StatusCode initElement() override final
Element initialization.
const Amg::Transform3D & localToGlobalTrans(const ActsGeometryContext &ctx) const
Returns the local to global transformation into the ATLAS coordinate system.
Amg::Vector3D localStripLeftEdge(unsigned int stripNum) const
Returns the position of the left strip edge (positive local y) expressed in the local frame.
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Amg::Vector3D localStripRightEdge(unsigned int stripNum) const
Returns the position of the right strip edge (negative local y) exoressed in the local frame.