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

#include <MdtCablingData.h>

Inheritance diagram for MdtCablingData:
Collaboration diagram for MdtCablingData:

Public Member Functions

 MdtCablingData ()=default
bool operator== (const MdtCablingData &other) const
 Equality operator.
bool operator!= (const MdtCablingData &other) const
bool operator< (const MdtCablingData &other) const
bool operator== (const MdtCablingOffData &other) const
 Multilayer inside the MDT station.
bool operator!= (const MdtCablingOffData &other) const
bool operator< (const MdtCablingOffData &other) const
bool operator! () const
bool operator== (const MdtCablingOnData &other) const
bool operator!= (const MdtCablingOnData &other) const
bool operator< (const MdtCablingOnData &other) const
bool operator! () const

Public Attributes

int layer {-99}
int tube {-99}
 Layer inside the multilayer.
uint8_t mezzanine_type {0}
 Tube number in the layer.
uint8_t tdcId {0xFF}
 Mezzanine type.
uint8_t channelId
 Identifier of the corresponding tdc.
int tubes_per_layer {legacy_tube_block_size}
 Helper constants to extract tube,layer, multilayer information.
int layer_block {legacy_layer_block_size}
int8_t & stationIndex
int8_t & eta {m_cache.cache[1]}
 Station of the chamber (i.e, BIL,BIS,etc.)
int8_t & phi {m_cache.cache[2]}
 Eta of the MDT station.
int8_t & multilayer {m_cache.cache[3]}
 Phi sector of the MDT station.
uint8_t & mrod {m_cache.cache[0]}
uint8_t & csm {m_cache.cache[1]}
 MROD number.
uint8_t & subdetectorId {m_cache.cache[2]}
 CSM number.

Static Public Attributes

static constexpr int legacy_tube_block_size = 100
 Identifier of the corresponding channel on the tdc.
static constexpr int legacy_layer_block_size = 10

Private Attributes

union { 
   int   hash {0} 
   int8_t   cache [4] 
m_cache

Detailed Description

Definition at line 84 of file MdtCablingData.h.

Constructor & Destructor Documentation

◆ MdtCablingData()

MdtCablingData::MdtCablingData ( )
default

Member Function Documentation

◆ operator!() [1/2]

bool MdtCablingOffData::operator! ( ) const
inlineinherited

Definition at line 43 of file MdtCablingData.h.

43{ return !m_cache.hash; }
union MdtCablingOffData::@146136140275166024214125374003135312065142355135 m_cache

◆ operator!() [2/2]

bool MdtCablingOnData::operator! ( ) const
inlineinherited

Definition at line 76 of file MdtCablingData.h.

76{ return !m_cache.hash; }
union MdtCablingOnData::@254320377220212070036216362204234153063321322235 m_cache

◆ operator!=() [1/3]

bool MdtCablingData::operator!= ( const MdtCablingData & other) const
inline

Definition at line 117 of file MdtCablingData.h.

117 {
118 return !((*this) == other);
119 }

◆ operator!=() [2/3]

bool MdtCablingOffData::operator!= ( const MdtCablingOffData & other) const
inlineinherited

Definition at line 37 of file MdtCablingData.h.

37 {
38 return m_cache.hash != other.m_cache.hash;
39 }

◆ operator!=() [3/3]

bool MdtCablingOnData::operator!= ( const MdtCablingOnData & other) const
inlineinherited

Definition at line 70 of file MdtCablingData.h.

70 {
71 return m_cache.hash != other.m_cache.hash;
72 }

◆ operator<() [1/3]

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

Definition at line 120 of file MdtCablingData.h.

120 {
121 if (this->MdtCablingOffData::operator!=(other))
122 return this->MdtCablingOffData::operator<(other);
123 if (this->MdtCablingOnData::operator!=(other))
124 return this->MdtCablingOnData::operator<(other);
125 if (tdcId != other.tdcId)
126 return tdcId < other.tdcId;
127 return channelId < other.channelId;
128 }
uint8_t tdcId
Mezzanine type.
uint8_t channelId
Identifier of the corresponding tdc.
bool operator<(const MdtCablingOffData &other) const
bool operator<(const MdtCablingOnData &other) const

◆ operator<() [2/3]

bool MdtCablingOffData::operator< ( const MdtCablingOffData & other) const
inlineinherited

Definition at line 40 of file MdtCablingData.h.

40 {
41 return m_cache.hash < other.m_cache.hash;
42 }

◆ operator<() [3/3]

bool MdtCablingOnData::operator< ( const MdtCablingOnData & other) const
inlineinherited

Definition at line 73 of file MdtCablingData.h.

73 {
74 return m_cache.hash < other.m_cache.hash;
75 }

◆ operator==() [1/3]

bool MdtCablingData::operator== ( const MdtCablingData & other) const
inline

Equality operator.

Definition at line 111 of file MdtCablingData.h.

111 {
112 return this->MdtCablingOffData::operator==(other) &&
113 this->MdtCablingOnData::operator==(other) &&
114 tdcId == other.tdcId && layer == other.layer &&
115 tube == other.tube && channelId == other.channelId;
116 }
int tube
Layer inside the multilayer.
bool operator==(const MdtCablingOffData &other) const
Multilayer inside the MDT station.
bool operator==(const MdtCablingOnData &other) const

◆ operator==() [2/3]

bool MdtCablingOffData::operator== ( const MdtCablingOffData & other) const
inlineinherited

Multilayer inside the MDT station.

Equality operator

Definition at line 34 of file MdtCablingData.h.

34 {
35 return m_cache.hash == other.m_cache.hash;
36 }

◆ operator==() [3/3]

bool MdtCablingOnData::operator== ( const MdtCablingOnData & other) const
inlineinherited

Definition at line 67 of file MdtCablingData.h.

67 {
68 return m_cache.hash == other.m_cache.hash;
69 }

Member Data Documentation

◆ cache [1/2]

int8_t MdtCablingOffData::cache[4]
inherited

Definition at line 48 of file MdtCablingData.h.

◆ cache [2/2]

uint8_t MdtCablingOnData::cache[4]
inherited

Definition at line 81 of file MdtCablingData.h.

◆ channelId

uint8_t MdtCablingData::channelId
Initial value:
{
0xff}

Identifier of the corresponding tdc.

Definition at line 94 of file MdtCablingData.h.

94 {
95 0xff};

◆ csm

uint8_t& MdtCablingOnData::csm {m_cache.cache[1]}
inherited

MROD number.

Definition at line 54 of file MdtCablingData.h.

54{m_cache.cache[1]};

◆ eta

int8_t& MdtCablingOffData::eta {m_cache.cache[1]}
inherited

Station of the chamber (i.e, BIL,BIS,etc.)

Definition at line 29 of file MdtCablingData.h.

29{m_cache.cache[1]};

◆ hash [1/2]

int MdtCablingOffData::hash {0}
inherited

Definition at line 47 of file MdtCablingData.h.

47{0};

◆ hash [2/2]

int MdtCablingOnData::hash {0}
inherited

Definition at line 80 of file MdtCablingData.h.

80{0};

◆ layer

int MdtCablingData::layer {-99}

Definition at line 87 of file MdtCablingData.h.

87{-99};

◆ layer_block

int MdtCablingData::layer_block {legacy_layer_block_size}

Definition at line 108 of file MdtCablingData.h.

static constexpr int legacy_layer_block_size

◆ legacy_layer_block_size

int MdtCablingData::legacy_layer_block_size = 10
staticconstexpr

Definition at line 104 of file MdtCablingData.h.

◆ legacy_tube_block_size

int MdtCablingData::legacy_tube_block_size = 100
staticconstexpr

Identifier of the corresponding channel on the tdc.

In the Muon spectrometer layouts, before Run 2, no chamber had more than 100 tubes per multilayer. Hence, the the tube layer and multilayer information is encoded into a 4 digit long number MLTT where M represents the multilayer number, L the layer number and TT is the tube numbering per each multilayer

Definition at line 103 of file MdtCablingData.h.

◆ [union]

union { ... } MdtCablingOffData::m_cache

◆ mezzanine_type

uint8_t MdtCablingData::mezzanine_type {0}

Tube number in the layer.

Definition at line 90 of file MdtCablingData.h.

90{0};

◆ mrod

uint8_t& MdtCablingOnData::mrod {m_cache.cache[0]}
inherited

Definition at line 53 of file MdtCablingData.h.

53{m_cache.cache[0]};

◆ multilayer

int8_t& MdtCablingOffData::multilayer {m_cache.cache[3]}
inherited

Phi sector of the MDT station.

Definition at line 31 of file MdtCablingData.h.

31{m_cache.cache[3]};

◆ phi

int8_t& MdtCablingOffData::phi {m_cache.cache[2]}
inherited

Eta of the MDT station.

Definition at line 30 of file MdtCablingData.h.

30{m_cache.cache[2]};

◆ stationIndex

int8_t& MdtCablingOffData::stationIndex
inherited
Initial value:
{
m_cache.cache[0]}

Definition at line 27 of file MdtCablingData.h.

27 {
28 m_cache.cache[0]};

◆ subdetectorId

uint8_t& MdtCablingOnData::subdetectorId {m_cache.cache[2]}
inherited

CSM number.

Definition at line 55 of file MdtCablingData.h.

55{m_cache.cache[2]};

◆ tdcId

uint8_t MdtCablingData::tdcId {0xFF}

Mezzanine type.

the 0xff used to convert the full station)

Definition at line 92 of file MdtCablingData.h.

92{0xFF};

◆ tube

int MdtCablingData::tube {-99}

Layer inside the multilayer.

Definition at line 88 of file MdtCablingData.h.

88{-99};

◆ tubes_per_layer

int MdtCablingData::tubes_per_layer {legacy_tube_block_size}

Helper constants to extract tube,layer, multilayer information.

Definition at line 107 of file MdtCablingData.h.

static constexpr int legacy_tube_block_size
Identifier of the corresponding channel on the tdc.

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