ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
Muon::nsw::helper::NSWOfflineHelper Class Reference

#include <NSWOfflineHelper.h>

Collaboration diagram for Muon::nsw::helper::NSWOfflineHelper:

Public Member Functions

 NSWOfflineHelper (Muon::nsw::NSWResourceId *res_id, uint16_t vmm_number, uint16_t vmm_channel_number)
 
virtual ~NSWOfflineHelper ()
 
bool is_large_station ()
 
int8_t station_eta ()
 
uint8_t station_phi ()
 
uint8_t multi_layer ()
 
uint8_t gas_gap ()
 
uint8_t channel_type ()
 
uint16_t channel_number ()
 
uint16_t vmm ()
 

Private Attributes

Muon::nsw::NSWResourceIdm_elinkId {nullptr}
 
uint16_t m_vmm {0}
 
uint16_t m_chan {0}
 

Detailed Description

Definition at line 18 of file NSWOfflineHelper.h.

Constructor & Destructor Documentation

◆ NSWOfflineHelper()

Muon::nsw::helper::NSWOfflineHelper::NSWOfflineHelper ( Muon::nsw::NSWResourceId res_id,
uint16_t  vmm_number,
uint16_t  vmm_channel_number 
)
inline

Definition at line 21 of file NSWOfflineHelper.h.

22  : m_elinkId (res_id), m_vmm (vmm_number), m_chan (vmm_channel_number) {};

◆ ~NSWOfflineHelper()

virtual Muon::nsw::helper::NSWOfflineHelper::~NSWOfflineHelper ( )
inlinevirtual

Definition at line 24 of file NSWOfflineHelper.h.

24 {};

Member Function Documentation

◆ channel_number()

uint16_t Muon::nsw::helper::NSWOfflineHelper::channel_number ( )

Definition at line 25 of file NSWOfflineHelper.cxx.

26 {
27  uint8_t det_id = m_elinkId->detId ();
29 
30  if (det_id == eformat::MUON_MMEGA_ENDCAP_A_SIDE || det_id == eformat::MUON_MMEGA_ENDCAP_C_SIDE) {
31  static const Muon::nsw::MapperMMG m;
32  return m.channel_number (radius, m_vmm, m_chan);
33 
34  } else if (det_id == eformat::MUON_STGC_ENDCAP_A_SIDE || det_id == eformat::MUON_STGC_ENDCAP_C_SIDE) {
35 
36  static const Muon::nsw::MapperSTG m;
37  uint8_t is_large = m_elinkId->is_large_station () ? 1 : 0;
38  uint8_t layer = m_elinkId->layer (); // in [0, 7]
39  return m.channel_number (this->channel_type(), is_large, radius, layer, m_vmm, m_chan);
40  }
41 
42  return 0;
43 }

◆ channel_type()

uint8_t Muon::nsw::helper::NSWOfflineHelper::channel_type ( )

Definition at line 11 of file NSWOfflineHelper.cxx.

12 {
13  uint8_t det_id = m_elinkId->detId ();
15 
16  if (det_id == eformat::MUON_STGC_ENDCAP_A_SIDE || det_id == eformat::MUON_STGC_ENDCAP_C_SIDE)
19 
20  return chan_type;
21 }

◆ gas_gap()

uint8_t Muon::nsw::helper::NSWOfflineHelper::gas_gap ( )
inline

Definition at line 33 of file NSWOfflineHelper.h.

33 {return m_elinkId->gas_gap ();};

◆ is_large_station()

bool Muon::nsw::helper::NSWOfflineHelper::is_large_station ( )
inline

Definition at line 28 of file NSWOfflineHelper.h.

28 {return m_elinkId->is_large_station ();};

◆ multi_layer()

uint8_t Muon::nsw::helper::NSWOfflineHelper::multi_layer ( )
inline

Definition at line 32 of file NSWOfflineHelper.h.

32 {return m_elinkId->multi_layer ();};

◆ station_eta()

int8_t Muon::nsw::helper::NSWOfflineHelper::station_eta ( )
inline

Definition at line 30 of file NSWOfflineHelper.h.

30 {return m_elinkId->station_eta ();};

◆ station_phi()

uint8_t Muon::nsw::helper::NSWOfflineHelper::station_phi ( )
inline

Definition at line 31 of file NSWOfflineHelper.h.

31 {return m_elinkId->station_phi ();};

◆ vmm()

uint16_t Muon::nsw::helper::NSWOfflineHelper::vmm ( )
inline

Definition at line 39 of file NSWOfflineHelper.h.

39 { return m_vmm; }

Member Data Documentation

◆ m_chan

uint16_t Muon::nsw::helper::NSWOfflineHelper::m_chan {0}
private

Definition at line 45 of file NSWOfflineHelper.h.

◆ m_elinkId

Muon::nsw::NSWResourceId* Muon::nsw::helper::NSWOfflineHelper::m_elinkId {nullptr}
private

Definition at line 42 of file NSWOfflineHelper.h.

◆ m_vmm

uint16_t Muon::nsw::helper::NSWOfflineHelper::m_vmm {0}
private

Definition at line 44 of file NSWOfflineHelper.h.


The documentation for this class was generated from the following files:
python.SystemOfUnits.m
int m
Definition: SystemOfUnits.py:91
Muon::nsw::NSWResourceId::multi_layer
uint8_t multi_layer() const
Definition: NSWResourceId.h:120
xAOD::uint8_t
uint8_t
Definition: Muon_v1.cxx:575
Muon::nsw::NSWResourceId::detId
uint8_t detId() const
Definition: NSWResourceId.h:71
Muon::nsw::helper::NSWOfflineHelper::m_chan
uint16_t m_chan
Definition: NSWOfflineHelper.h:45
Muon::nsw::NSW_RESOURCE_PAD
@ NSW_RESOURCE_PAD
Definition: NSWResourceId.h:19
Muon::nsw::NSWResourceId::station_eta
int8_t station_eta() const
Definition: NSWResourceId.h:99
Muon::nsw::OFFLINE_CHANNEL_TYPE_PAD
@ OFFLINE_CHANNEL_TYPE_PAD
Definition: NSWDecodeHelper.h:19
Muon::nsw::NSWResourceId::resourceType
uint8_t resourceType() const
Definition: NSWResourceId.h:68
Muon::nsw::NSWResourceId::is_large_station
bool is_large_station() const
Definition: NSWResourceId.h:93
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
Muon::nsw::NSWResourceId::radius
uint8_t radius() const
Definition: NSWResourceId.h:65
Muon::nsw::NSWResourceId::station_phi
uint8_t station_phi() const
Definition: NSWResourceId.h:114
Muon::nsw::helper::NSWOfflineHelper::m_vmm
uint16_t m_vmm
Definition: NSWOfflineHelper.h:44
Muon::nsw::MapperMMG
Definition: MapperMMG.h:15
Muon::nsw::OFFLINE_CHANNEL_TYPE_WIRE
@ OFFLINE_CHANNEL_TYPE_WIRE
Definition: NSWDecodeHelper.h:21
ParticleGun_SamplingFraction.radius
radius
Definition: ParticleGun_SamplingFraction.py:96
Muon::nsw::helper::NSWOfflineHelper::channel_type
uint8_t channel_type()
Definition: NSWOfflineHelper.cxx:11
Muon::nsw::NSWResourceId::layer
uint8_t layer() const
Definition: NSWResourceId.h:66
Muon::nsw::OFFLINE_CHANNEL_TYPE_STRIP
@ OFFLINE_CHANNEL_TYPE_STRIP
Definition: NSWDecodeHelper.h:20
Muon::nsw::helper::NSWOfflineHelper::m_elinkId
Muon::nsw::NSWResourceId * m_elinkId
Definition: NSWOfflineHelper.h:42
Muon::nsw::NSWResourceId::gas_gap
uint8_t gas_gap() const
Definition: NSWResourceId.h:126
Muon::nsw::MapperSTG
Definition: MapperSTG.h:18