8#include <Acts/Geometry/TrapezoidVolumeBounds.hpp>
9#include <Acts/Surfaces/PlaneSurface.hpp>
17 ostr<<
"halfY: "<<
halfY(*args.bounds)<<
" [mm], ";
18 ostr<<
"halfZ: "<<
halfZ(*args.bounds)<<
" [mm], ";
22 ostr<<chamber.identString()<<
" "<<chamber.parameters();
48 other.readoutEles().front()->identify();
53 return std::format(
"MS chamber {:}",
56 return std::format(
"MS chamber {:} station {:} eta {:02} phi {:02}",
Acts::GeometryContext context() const
Chamber represent the volume enclosing a muon station.
const SpectrometerSector * m_parent
std::string identString() const
Define a string of the chamber used for debugging.
const Acts::PlaneSurface & surface() const
Returns the surface associated with the chamber.
int stationEta() const
Returns the station eta of the chamber.
const Amg::Transform3D & localToGlobalTransform(const ActsTrk::GeometryContext &gctx) const
Returns the transformation chamber frame -> global transformation.
const ReadoutSet & readoutEles() const
Returns the list of contained readout elements.
double halfXLong() const
Long-extend of the chamber in the x-direction at positive Y.
bool operator<(const Chamber &other) const
Comparison operator for set ordering.
Chamber(defineArgs &&args)
Standard constructor taking the defineArgs.
void setParent(const SpectrometerSector *parent)
Sets the connection to the MS sector enclosing the chamber.
const SpectrometerSector * parent() const
Returns the pointer to the MS sector enclosing the chamber.
double halfY() const
Extend of the chamber in the y-direction.
ActsTrk::DetectorType detectorType() const
Returns the first readout elements detectorType (sorted by techIdx)
int sector() const
Returns the MS sector of the chamber.
Amg::Transform3D globalToLocalTransform(const ActsTrk::GeometryContext &gctx) const
Returns the global -> local transformation.
Muon::MuonStationIndex::ChIndex chamberIndex() const
Returns the chamber index.
int stationPhi() const
Returns the station phi of the chamber.
int stationName() const
Returns an integer representing the stationName.
std::shared_ptr< Acts::Volume > boundingVolume(const ActsTrk::GeometryContext &gctx) const
Returns the Acts::Volume representation of the chamber.
const defineArgs & parameters() const
Returns the reference to the defining parameters of the chamber.
std::vector< const MuonReadoutElement * > ReadoutSet
Define the list of read out elements of the chamber.
bool barrel() const
Returns whether the chamber is placed in the barrel.
double halfXShort() const
Short extend of the chamber in the x-direction at negative Y.
int8_t side() const
Returns the side of the chamber.
double halfZ() const
Thickness of the chamber in the z-direction.
std::shared_ptr< Acts::VolumeBounds > bounds() const
Returns the volume bounds.
const Muon::IMuonIdHelperSvc * idHelperSvc() const
Returns a pointer to the idHelperSvc.
A spectrometer sector forms the envelope of all chambers that are placed in the same MS sector & laye...
Interface for Helper service that creates muon Identifiers and can be used to print Identifiers.
virtual int sector(const Identifier &id) const =0
return sector number 1-16, odd=large, even=small
virtual bool isEndcap(const Identifier &id) const =0
returns whether this is an endcap Identifier or not
std::string to_string(const DetectorType &type)
DetectorType
Simple enum to Identify the Type of the ACTS sub detector.
@ Mm
Maybe not needed in the migration.
Eigen::Affine3d Transform3D
The ReadoutGeomCnvAlg converts the Run4 Readout geometry build from the GeoModelXML into the legacy M...
double halfY(const Acts::VolumeBounds &bounds)
Returns the half-Y length for the parsed volume bounds (Trapezoid/ Cuboid)
std::ostream & operator<<(std::ostream &ostr, const Chamber::defineArgs &args)
double halfZ(const Acts::VolumeBounds &bounds)
Returns the half-Z length for the parsed volume bounds (Trapezoid/ Cuboid)
double halfXhighY(const Acts::VolumeBounds &bounds)
Returns the half-Y length @ posiive Y for the parsed volume bounds (Trapezoid/ Cuboid)
double halfXlowY(const Acts::VolumeBounds &bounds)
Returns the half-X length @ negative Y for the parsed volume bounds (Trapezoid/ Cuboid)
ChIndex
enum to classify the different chamber layers in the muon spectrometer