ATLAS Offline Software
Loading...
Searching...
No Matches
MdtChamber Struct Reference

Helper struct to represent a full Mdt chamber. More...

Collaboration diagram for MdtChamber:

Classes

struct  TubePositioning

Public Types

using chamberIdentifier = MdtCablingOffData
 Identifier of the mdt chamber.

Public Member Functions

 MdtChamber ()=default
 Default constructor.
bool operator< (const MdtChamber &other) const
 Sorting operator to insert the object into std::set.
const TubePositioninggetTube (unsigned int layer, unsigned int tube) const
 Returns the access to the full tube information Layer : (1 -nLayers), Tube : (1-nTubes)
void insertTube (TubePositioning &&newTube)

Public Attributes

chamberIdentifier id {}
std::string design {}
Amg::Transform3D geoModelTransform {Amg::Transform3D::Identity()}
 Transformation of the underlying GeoModel element.
Amg::Transform3D alignableTransform {Amg::Transform3D::Identity()}
 Transformation of the underlying Alignable node.
unsigned int numLayers {0}
 Number of tube layers.
unsigned int numTubes {0}
 Number of tubes.
double tubePitch {0.}
 Pitch between two tubes.
double tubeRadius {0.}
 Inner tube radius.
std::vector< TubePositioningtubeInfo {}

Detailed Description

Helper struct to represent a full Mdt chamber.

Definition at line 28 of file runMdtGeoComparison.cxx.

Member Typedef Documentation

◆ chamberIdentifier

Identifier of the mdt chamber.

Definition at line 33 of file runMdtGeoComparison.cxx.

Constructor & Destructor Documentation

◆ MdtChamber()

MdtChamber::MdtChamber ( )
default

Default constructor.

Member Function Documentation

◆ getTube()

const TubePositioning & MdtChamber::getTube ( unsigned int layer,
unsigned int tube ) const
inline

Returns the access to the full tube information Layer : (1 -nLayers), Tube : (1-nTubes)

Definition at line 75 of file runMdtGeoComparison.cxx.

75 {
76 static const TubePositioning dummy{};
77 unsigned int idx = (layer -1)*numTubes + (tube -1);
78 return idx < tubeInfo.size() ? tubeInfo[idx] : dummy;
79 }
@ layer
Definition HitInfo.h:79
std::vector< TubePositioning > tubeInfo
unsigned int numTubes
Number of tubes.

◆ insertTube()

void MdtChamber::insertTube ( TubePositioning && newTube)
inline

Definition at line 80 of file runMdtGeoComparison.cxx.

80 {
81 unsigned int idx = (newTube.layerNum - 1)*numTubes + (newTube.tubeNum -1);
82 if (tubeInfo.size() <= idx) tubeInfo.resize(idx+1);
83 tubeInfo[idx] = std::move(newTube);
84 }

◆ operator<()

bool MdtChamber::operator< ( const MdtChamber & other) const
inline

Sorting operator to insert the object into std::set.

Definition at line 38 of file runMdtGeoComparison.cxx.

38 {
39 return id < other.id;
40 }

Member Data Documentation

◆ alignableTransform

Amg::Transform3D MdtChamber::alignableTransform {Amg::Transform3D::Identity()}

Transformation of the underlying Alignable node.

Definition at line 45 of file runMdtGeoComparison.cxx.

45{Amg::Transform3D::Identity()};

◆ design

std::string MdtChamber::design {}

Definition at line 35 of file runMdtGeoComparison.cxx.

35{};

◆ geoModelTransform

Amg::Transform3D MdtChamber::geoModelTransform {Amg::Transform3D::Identity()}

Transformation of the underlying GeoModel element.

Definition at line 43 of file runMdtGeoComparison.cxx.

43{Amg::Transform3D::Identity()};

◆ id

chamberIdentifier MdtChamber::id {}

Definition at line 34 of file runMdtGeoComparison.cxx.

34{};

◆ numLayers

unsigned int MdtChamber::numLayers {0}

Number of tube layers.

Definition at line 47 of file runMdtGeoComparison.cxx.

47{0};

◆ numTubes

unsigned int MdtChamber::numTubes {0}

Number of tubes.

Definition at line 49 of file runMdtGeoComparison.cxx.

49{0};

◆ tubeInfo

std::vector<TubePositioning> MdtChamber::tubeInfo {}

Definition at line 72 of file runMdtGeoComparison.cxx.

72{};

◆ tubePitch

double MdtChamber::tubePitch {0.}

Pitch between two tubes.

Definition at line 51 of file runMdtGeoComparison.cxx.

51{0.};

◆ tubeRadius

double MdtChamber::tubeRadius {0.}

Inner tube radius.

Definition at line 53 of file runMdtGeoComparison.cxx.

53{0.};

The documentation for this struct was generated from the following file: