ATLAS Offline Software
Classes | Public Types | Public Member Functions | Private Attributes | List of all members
MuonGMR4::Chamber Class Reference

#include <Chamber.h>

Collaboration diagram for MuonGMR4::Chamber:

Classes

struct  defineArgs
 

Public Types

using ReadoutSet = std::vector< const MuonReadoutElement * >
 Define the list of read out elements of the chamber. More...
 

Public Member Functions

 Chamber (defineArgs &&args)
 Standard constructor taking the defineArgs. More...
 
 Chamber (const Chamber &other)=delete
 delete the copy constructors More...
 
const Chamberoperator= (const Chamber &other)=delete
 
bool operator< (const Chamber &other) const
 Comparison operator for set ordering. More...
 
std::string identString () const
 Define a string of the chamber used for debugging. More...
 
const Muon::IMuonIdHelperSvcidHelperSvc () const
 Returns a pointer to the idHelperSvc. More...
 
Muon::MuonStationIndex::ChIndex chamberIndex () const
 Returns the chamber index. More...
 
int stationPhi () const
 Returns the station phi of the chamber. More...
 
int stationEta () const
 Returns the station eta of the chamber. More...
 
int stationName () const
 Returns an integer representing the stationName. More...
 
int sector () const
 Returns the MS sector of the chamber. More...
 
bool barrel () const
 Returns whether the chamber is placed in the barrel. More...
 
const ReadoutSetreadoutEles () const
 Returns the list of contained readout elements. More...
 
const Amg::Transform3DlocalToGlobalTrans (const ActsGeometryContext &gctx) const
 Returns the transformation chamber frame -> global transformation. More...
 
Amg::Transform3D globalToLocalTrans (const ActsGeometryContext &gctx) const
 Returns the global -> local transformation. More...
 
double halfXLong () const
 Long-extend of the chamber in the x-direction at positive Y. More...
 
double halfXShort () const
 Short extend of the chamber in the x-direction at negative Y. More...
 
double halfY () const
 Extend of the chamber in the y-direction. More...
 
double halfZ () const
 Thickness of the chamber in the z-direction. More...
 
const defineArgsparameters () const
 Returns the reference to the defining parameters of the chamber. More...
 
std::shared_ptr< Acts::Volume > boundingVolume (const ActsGeometryContext &gctx) const
 Returns the Acts::Volume representation of the chamber. More...
 
std::shared_ptr< Acts::TrapezoidVolumeBounds > bounds () const
 Returns the volume bounds. More...
 
const SpectrometerSectorparent () const
 Returns the pointer to the MS sector enclosing the chamber. More...
 
void setParent (const SpectrometerSector *parent)
 Sets the connection to the MS sector enclosing the chamber. More...
 

Private Attributes

defineArgs m_args {}
 
const SpectrometerSectorm_parent {nullptr}
 

Detailed Description

Definition at line 22 of file Chamber.h.

Member Typedef Documentation

◆ ReadoutSet

Define the list of read out elements of the chamber.

Definition at line 25 of file Chamber.h.

Constructor & Destructor Documentation

◆ Chamber() [1/2]

MuonGMR4::Chamber::Chamber ( defineArgs &&  args)

Standard constructor taking the defineArgs.

Definition at line 30 of file Chamber.cxx.

30  :
31  m_args{std::move(args)} {}

◆ Chamber() [2/2]

MuonGMR4::Chamber::Chamber ( const Chamber other)
delete

delete the copy constructors

Member Function Documentation

◆ barrel()

bool MuonGMR4::Chamber::barrel ( ) const

Returns whether the chamber is placed in the barrel.

Definition at line 47 of file Chamber.cxx.

47  {
48  return !idHelperSvc()->isEndcap(readoutEles().front()->identify());
49  }

◆ boundingVolume()

std::shared_ptr< Acts::Volume > MuonGMR4::Chamber::boundingVolume ( const ActsGeometryContext gctx) const

Returns the Acts::Volume representation of the chamber.

Parameters
gctxGeometry context carrrying the alignment transformations

Definition at line 61 of file Chamber.cxx.

61  {
62  return std::make_shared<Acts::Volume>(localToGlobalTrans(gctx), bounds());
63  }

◆ bounds()

std::shared_ptr< Acts::TrapezoidVolumeBounds > MuonGMR4::Chamber::bounds ( ) const

Returns the volume bounds.

Definition at line 64 of file Chamber.cxx.

64  {
65  return m_args.bounds;
66  }

◆ chamberIndex()

Muon::MuonStationIndex::ChIndex MuonGMR4::Chamber::chamberIndex ( ) const

Returns the chamber index.

Definition at line 53 of file Chamber.cxx.

53  {
54  return readoutEles().front()->chamberIndex();
55  }

◆ globalToLocalTrans()

Amg::Transform3D MuonGMR4::Chamber::globalToLocalTrans ( const ActsGeometryContext gctx) const

Returns the global -> local transformation.

Parameters
gctxGeometry context carrrying the alignment transformations

Definition at line 78 of file Chamber.cxx.

78  {
79  return localToGlobalTrans(gctx).inverse();
80  }

◆ halfXLong()

double MuonGMR4::Chamber::halfXLong ( ) const

Long-extend of the chamber in the x-direction at positive Y.

Definition at line 56 of file Chamber.cxx.

56 { return m_args.bounds->get(BoundEnums::eHalfLengthXposY); }

◆ halfXShort()

double MuonGMR4::Chamber::halfXShort ( ) const

Short extend of the chamber in the x-direction at negative Y.

Definition at line 57 of file Chamber.cxx.

57 { return m_args.bounds->get(BoundEnums::eHalfLengthXnegY); }

◆ halfY()

double MuonGMR4::Chamber::halfY ( ) const

Extend of the chamber in the y-direction.

Definition at line 58 of file Chamber.cxx.

58 { return m_args.bounds->get(BoundEnums::eHalfLengthY); }

◆ halfZ()

double MuonGMR4::Chamber::halfZ ( ) const

Thickness of the chamber in the z-direction.

Definition at line 59 of file Chamber.cxx.

59 { return m_args.bounds->get(BoundEnums::eHalfLengthZ); }

◆ identString()

std::string MuonGMR4::Chamber::identString ( ) const

Define a string of the chamber used for debugging.

Definition at line 42 of file Chamber.cxx.

42  {
43  return std::format("MS chamber {:} eta {:02} phi {:02}",
44  idHelperSvc()->stationNameString(readoutEles().front()->identify()),
45  stationEta(), stationPhi());
46  }

◆ idHelperSvc()

const Muon::IMuonIdHelperSvc * MuonGMR4::Chamber::idHelperSvc ( ) const

Returns a pointer to the idHelperSvc.

Definition at line 50 of file Chamber.cxx.

50  {
51  return readoutEles().front()->idHelperSvc();
52  }

◆ localToGlobalTrans()

const Amg::Transform3D & MuonGMR4::Chamber::localToGlobalTrans ( const ActsGeometryContext gctx) const

Returns the transformation chamber frame -> global transformation.

Parameters
gctxGeometry context carrrying the alignment transformations

Definition at line 75 of file Chamber.cxx.

75  {
76  return m_args.locToGlobTrf;
77  }

◆ operator<()

bool MuonGMR4::Chamber::operator< ( const Chamber other) const

Comparison operator for set ordering.

Definition at line 33 of file Chamber.cxx.

33  {
34  if (stationName() != other.stationName()) {
35  return stationName() < other.stationName();
36  }
37  if (stationEta() != other.stationEta()) {
38  return stationEta() < other.stationEta();
39  }
40  return stationPhi() < other.stationPhi();
41  }

◆ operator=()

const Chamber& MuonGMR4::Chamber::operator= ( const Chamber other)
delete

◆ parameters()

const Chamber::defineArgs & MuonGMR4::Chamber::parameters ( ) const

Returns the reference to the defining parameters of the chamber.

Definition at line 71 of file Chamber.cxx.

71 { return m_args; }

◆ parent()

const SpectrometerSector * MuonGMR4::Chamber::parent ( ) const

Returns the pointer to the MS sector enclosing the chamber.

Definition at line 81 of file Chamber.cxx.

81 { return m_parent; }

◆ readoutEles()

const Chamber::ReadoutSet & MuonGMR4::Chamber::readoutEles ( ) const

Returns the list of contained readout elements.

Definition at line 72 of file Chamber.cxx.

72  {
73  return m_args.detEles;
74  }

◆ sector()

int MuonGMR4::Chamber::sector ( ) const

Returns the MS sector of the chamber.

Definition at line 70 of file Chamber.cxx.

70 { return idHelperSvc()->sector(readoutEles().front()->identify()); }

◆ setParent()

void MuonGMR4::Chamber::setParent ( const SpectrometerSector parent)

Sets the connection to the MS sector enclosing the chamber.

Definition at line 82 of file Chamber.cxx.

82 { m_parent = parent; }

◆ stationEta()

int MuonGMR4::Chamber::stationEta ( ) const

Returns the station eta of the chamber.

Definition at line 68 of file Chamber.cxx.

68 { return readoutEles().front()->stationEta(); }

◆ stationName()

int MuonGMR4::Chamber::stationName ( ) const

Returns an integer representing the stationName.

Definition at line 69 of file Chamber.cxx.

69 { return readoutEles().front()->stationName(); }

◆ stationPhi()

int MuonGMR4::Chamber::stationPhi ( ) const

Returns the station phi of the chamber.

Definition at line 67 of file Chamber.cxx.

67 { return readoutEles().front()->stationPhi(); }

Member Data Documentation

◆ m_args

defineArgs MuonGMR4::Chamber::m_args {}
private

Definition at line 86 of file Chamber.h.

◆ m_parent

const SpectrometerSector* MuonGMR4::Chamber::m_parent {nullptr}
private

Definition at line 87 of file Chamber.h.


The documentation for this class was generated from the following files:
xAOD::identify
const Identifier & identify(const UncalibratedMeasurement *meas)
Returns the associated identifier from the muon measurement.
Definition: MuonSpectrometer/MuonPhaseII/Event/xAOD/xAODMuonPrepData/Root/UtilFunctions.cxx:61
MuonGMR4::Chamber::parent
const SpectrometerSector * parent() const
Returns the pointer to the MS sector enclosing the chamber.
Definition: Chamber.cxx:81
MuonGMR4::Chamber::defineArgs::detEles
ReadoutSet detEles
List of associated readout elements.
Definition: Chamber.h:30
vtune_athena.format
format
Definition: vtune_athena.py:14
MuonGMR4::Chamber::m_parent
const SpectrometerSector * m_parent
Definition: Chamber.h:87
MuonGMR4::Chamber::stationEta
int stationEta() const
Returns the station eta of the chamber.
Definition: Chamber.cxx:68
MuonGMR4::Chamber::localToGlobalTrans
const Amg::Transform3D & localToGlobalTrans(const ActsGeometryContext &gctx) const
Returns the transformation chamber frame -> global transformation.
Definition: Chamber.cxx:75
MuonGMR4::Chamber::stationPhi
int stationPhi() const
Returns the station phi of the chamber.
Definition: Chamber.cxx:67
MuonGMR4::Chamber::idHelperSvc
const Muon::IMuonIdHelperSvc * idHelperSvc() const
Returns a pointer to the idHelperSvc.
Definition: Chamber.cxx:50
MuonGMR4::Chamber::readoutEles
const ReadoutSet & readoutEles() const
Returns the list of contained readout elements.
Definition: Chamber.cxx:72
Muon::IMuonIdHelperSvc::isEndcap
virtual bool isEndcap(const Identifier &id) const =0
returns whether this is an endcap Identifier or not
MuonGMR4::Chamber::m_args
defineArgs m_args
Definition: Chamber.h:86
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
MuonGMR4::Chamber::bounds
std::shared_ptr< Acts::TrapezoidVolumeBounds > bounds() const
Returns the volume bounds.
Definition: Chamber.cxx:64
MuonGMR4::Chamber::defineArgs::bounds
std::shared_ptr< Acts::TrapezoidVolumeBounds > bounds
Chamber volume bounds.
Definition: Chamber.h:32
Muon::IMuonIdHelperSvc::sector
virtual int sector(const Identifier &id) const =0
return sector number 1-16, odd=large, even=small
MuonGMR4::Chamber::stationName
int stationName() const
Returns an integer representing the stationName.
Definition: Chamber.cxx:69
python.CaloScaleNoiseConfig.args
args
Definition: CaloScaleNoiseConfig.py:80
MuonGMR4::Chamber::defineArgs::locToGlobTrf
Amg::Transform3D locToGlobTrf
Transformation of the chamber.
Definition: Chamber.h:28