ATLAS Offline Software
MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonChamber.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef MUONREADOUTGEOMETRYR4_MUONCHAMBER_H
5 #define MUONREADOUTGEOMETRYR4_MUONCHAMBER_H
6 
7 #ifndef SIMULATIONBASE
8 
19 #include <Acts/Geometry/TrapezoidVolumeBounds.hpp>
20 #include <Acts/Geometry/Volume.hpp>
21 
22 #include <set>
23 
24 namespace MuonGMR4{
25  class MuonChamber;
26 }
27 namespace ActsTrk {
30 
31  template <> Amg::Transform3D
33  template <> const IDetectorElement*
35 
36 }
37 
38 namespace MuonGMR4 {
39  class MuonChamber {
40  public:
41  using ReadoutSet = std::vector<const MuonReadoutElement*>;
42  struct defineArgs{
46  double halfXLong{0.};
47  double halfXShort{0.};
48  double halfY{0.};
49  double halfZ{0.};
51  Amg::Transform3D centerTrans{Amg::Transform3D::Identity()};
52  };
53 
59 
61  const Muon::IMuonIdHelperSvc* idHelperSvc() const;
64  // Returns the station name of the chamber
65  int stationName() const;
67  int stationEta() const;
69  int stationPhi() const;
73  int sector() const;
75  const ReadoutSet& readOutElements() const;
80  double halfXLong() const;
81  double halfXShort() const;
82  double halfY() const;
83  double halfZ() const;
84 
85  std::shared_ptr<Acts::Volume> boundingVolume(const ActsGeometryContext& gctx) const;
86  std::shared_ptr<Acts::TrapezoidVolumeBounds> bounds() const;
87 
88  const defineArgs& parameters() const;
89  private:
93  };
94 
95  std::ostream& operator<<(std::ostream& ostr,
97 
98  std::ostream& operator<<(std::ostream& ostr,
99  const MuonChamber& chamber);
100 
101 }
102 
103 
104 #endif
105 #endif
MuonGMR4::MuonChamber::m_localToGlobal
ActsTrk::TransformCacheDetEle< MuonChamber > m_localToGlobal
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonChamber.h:92
store
StoreGateSvc * store
Definition: fbtTestBasics.cxx:69
MuonGMR4::ReadoutSet
MuonChamber::ReadoutSet ReadoutSet
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:40
MuonGMR4::MuonChamber::operator=
MuonChamber & operator=(const MuonChamber &other)
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:48
MuonGMR4::MuonChamber::stationEta
int stationEta() const
Returns the station eta of the chamber.
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:65
MuonGMR4::MuonChamber::defineArgs::halfY
double halfY
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonChamber.h:48
MuonGMR4::MuonChamber::MuonChamber
MuonChamber(defineArgs &&args)
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:42
MuonGMR4::MuonChamber::stationName
int stationName() const
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:63
ActsTrk::DetectorType
DetectorType
Simple enum to Identify the Type of the ACTS sub detector.
Definition: GeometryDefs.h:17
calibdata.chamber
chamber
Definition: calibdata.py:32
ActsTrk::DetectorAlignStore
Definition: DetectorAlignStore.h:20
ActsTrk::TransformCacheDetEle
Definition: TransformCache.h:65
ActsTrk::TransformCacheDetEle::parent
const IDetectorElement * parent() const override final
Returns the parent IDetectorElement owning the cache.
MuonGMR4::MuonChamber::ReadoutSet
std::vector< const MuonReadoutElement * > ReadoutSet
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonChamber.h:41
MuonGMR4::MuonChamber::defineArgs::halfXShort
double halfXShort
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonChamber.h:47
MuonGMR4::MuonChamber
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonChamber.h:39
ActsGeometryContext::AlignmentStore
ActsTrk::DetectorAlignStore AlignmentStore
Definition: ActsGeometryContext.h:31
MuonGMR4::MuonChamber::m_args
defineArgs m_args
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonChamber.h:90
MuonGMR4::MuonChamber::defineArgs::readoutEles
ReadoutSet readoutEles
List of readout elements in the chamber.
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonChamber.h:44
MuonGMR4::MuonChamber::idHelperSvc
const Muon::IMuonIdHelperSvc * idHelperSvc() const
Returns the idHelperSvc.
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:61
MuonGMR4
A muon chamber is a collection of readout elements belonging to the same station.
Definition: ChamberAssembleTool.h:16
MuonGMR4::MuonChamber::readOutElements
const ReadoutSet & readOutElements() const
Returns the list of all associated readout elements.
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:67
MuonGMR4::MuonChamber::boundingVolume
std::shared_ptr< Acts::Volume > boundingVolume(const ActsGeometryContext &gctx) const
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:80
MuonGMR4::MuonChamber::defineArgs::centerTrans
Amg::Transform3D centerTrans
Transformation to the chamber volume.
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonChamber.h:51
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition: GeoPrimitives.h:46
MuonGMR4::MuonChamber::defineArgs::halfXLong
double halfXLong
Definition of the surrounding box.
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonChamber.h:46
ActsTrk::TransformCacheDetEle::TransformCacheDetEle
TransformCacheDetEle(const IdentifierHash &hash, const CachingDetectorEle *parentEle)
: Standard constructor taking the hash of the sensor element and and the TransformMaker expressed usu...
ActsTrk::IDetectorElement
Definition: IDetectorElement.h:28
MuonGMR4::MuonChamber::stationPhi
int stationPhi() const
Returns the station phi of the chamber.
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:64
MuonGMR4::MuonChamber::defineArgs::halfZ
double halfZ
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonChamber.h:49
ActsGeometryContext
Include the GeoPrimitives which need to be put first.
Definition: ActsGeometryContext.h:28
MuonGMR4::MuonChamber::bounds
std::shared_ptr< Acts::TrapezoidVolumeBounds > bounds() const
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:83
MuonGMR4::MuonChamber::halfXShort
double halfXShort() const
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:75
MuonGMR4::MuonChamber::detectorType
ActsTrk::DetectorType detectorType() const
Returns the detector type of the primary detector element.
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:66
MuonGMR4::MuonChamber::halfZ
double halfZ() const
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:77
MuonGMR4::MuonChamber::halfXLong
double halfXLong() const
Surrounding box dimensions.
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:74
MuonGMR4::MuonChamber::parameters
const defineArgs & parameters() const
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:60
MuonGMR4::MuonChamber::defineArgs
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonChamber.h:42
MuonGMR4::MuonChamber::localToGlobalTrans
const Amg::Transform3D & localToGlobalTrans(const ActsGeometryContext &gctx) const
Returns the transformation of the MuonChamber.
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:68
ActsTrk::TransformCacheDetEle::fetchTransform
Amg::Transform3D fetchTransform(const DetectorAlignStore *store) const override final
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
CaloCondBlobAlgs_fillNoiseFromASCII.hash
dictionary hash
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:109
MuonGMR4::MuonChamber::halfY
double halfY() const
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:76
Muon::IMuonIdHelperSvc
Interface for Helper service that creates muon Identifiers and can be used to print Identifiers.
Definition: IMuonIdHelperSvc.h:26
Muon::MuonStationIndex::ChIndex
ChIndex
enum to classify the different chamber layers in the muon spectrometer
Definition: MuonStationIndex.h:15
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MuonDetectorBuilderTool.cxx:34
IdentifierHash
Definition: IdentifierHash.h:38
MuonGMR4::operator<<
std::ostream & operator<<(std::ostream &ostr, const CutOutArea &cut)
Definition: CutOutArea.h:23
MuonGMR4::MuonChamber::chamberIndex
Muon::MuonStationIndex::ChIndex chamberIndex() const
Returns the chamber index.
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:62
MuonGMR4::MuonChamber::sector
int sector() const
Returns the sector of the detector element.
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:78
MuonReadoutElement.h
MuonGMR4::MuonChamber::globalToLocalTrans
Amg::Transform3D globalToLocalTrans(const ActsGeometryContext &gctx) const
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonChamber.cxx:71
python.CaloScaleNoiseConfig.args
args
Definition: CaloScaleNoiseConfig.py:80
MuonGMR4::defineArgs
MuonChamber::defineArgs defineArgs
Definition: ChamberAssembleTool.cxx:32