ATLAS Offline Software
NSWOfflineHelper.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef _MUON_NSW_OFFLINE_HELPER_H_
5 #define _MUON_NSW_OFFLINE_HELPER_H_
6 
7 #include <memory>
8 
11 
12 namespace Muon
13 {
14  namespace nsw
15  {
16  namespace helper
17  {
19  {
20  public:
21  NSWOfflineHelper (Muon::nsw::NSWResourceId *res_id, uint16_t vmm_number, uint16_t vmm_channel_number)
22  : m_elinkId (res_id), m_vmm (vmm_number), m_chan (vmm_channel_number) {};
23 
24  virtual ~NSWOfflineHelper () {};
25 
26  // Direct access to offline parameters from elinkId
27 
29 
30  int8_t station_eta () {return m_elinkId->station_eta ();};
33  uint8_t gas_gap () {return m_elinkId->gas_gap ();};
34 
35  // Offline parameters
36 
39  uint16_t vmm () { return m_vmm; }
40 
41  private:
43 
46  };
47 
49  {
50  public:
51  NSWOfflineRobId (const std::string &station_name, int8_t station_eta, uint8_t station_phi);
52  virtual ~NSWOfflineRobId () {};
53 
54  const std::vector<uint32_t>& get_ids () const {return m_sourceIds;};
55 
56  private:
57  std::vector<uint32_t> m_sourceIds;
58  };
59 
60  static const std::map <const std::pair <std::string, bool>, const uint32_t> s_station_to_detector_map =
61  {
62  {{"MM", true}, eformat::MUON_MMEGA_ENDCAP_A_SIDE},
63  {{"MM", false}, eformat::MUON_MMEGA_ENDCAP_C_SIDE},
64  {{"ST", true}, eformat::MUON_STGC_ENDCAP_A_SIDE},
65  {{"ST", false}, eformat::MUON_STGC_ENDCAP_C_SIDE}
66  };
67  }
68  }
69 }
70 
71 #endif // _MUON_NSW_OFFLINE_HELPER_H_
72 
Muon::nsw::helper::NSWOfflineHelper::station_phi
uint8_t station_phi()
Definition: NSWOfflineHelper.h:31
Muon::nsw::helper::NSWOfflineHelper::vmm
uint16_t vmm()
Definition: NSWOfflineHelper.h:39
Muon::nsw::NSWResourceId::multi_layer
uint8_t multi_layer() const
Definition: NSWResourceId.h:120
xAOD::uint8_t
uint8_t
Definition: Muon_v1.cxx:557
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
Muon::nsw::helper::NSWOfflineHelper::m_chan
uint16_t m_chan
Definition: NSWOfflineHelper.h:45
Muon::nsw::helper::NSWOfflineRobId::NSWOfflineRobId
NSWOfflineRobId(const std::string &station_name, int8_t station_eta, uint8_t station_phi)
Definition: NSWOfflineHelper.cxx:47
Muon::nsw::helper::NSWOfflineHelper::multi_layer
uint8_t multi_layer()
Definition: NSWOfflineHelper.h:32
Muon::nsw::helper::NSWOfflineHelper::gas_gap
uint8_t gas_gap()
Definition: NSWOfflineHelper.h:33
Muon::nsw::NSWResourceId::station_eta
int8_t station_eta() const
Definition: NSWResourceId.h:99
Muon::nsw::helper::NSWOfflineHelper::station_eta
int8_t station_eta()
Definition: NSWOfflineHelper.h:30
Muon::nsw::helper::NSWOfflineHelper
Definition: NSWOfflineHelper.h:19
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:45
Muon::nsw::helper::NSWOfflineRobId::~NSWOfflineRobId
virtual ~NSWOfflineRobId()
Definition: NSWOfflineHelper.h:52
runBeamSpotCalibration.helper
helper
Definition: runBeamSpotCalibration.py:112
Muon::nsw::helper::NSWOfflineHelper::channel_number
uint16_t channel_number()
Definition: NSWOfflineHelper.cxx:25
xAOD::uint16_t
setWord1 uint16_t
Definition: eFexEMRoI_v1.cxx:88
Muon::nsw::helper::NSWOfflineHelper::~NSWOfflineHelper
virtual ~NSWOfflineHelper()
Definition: NSWOfflineHelper.h:24
Muon::nsw::NSWResourceId::is_large_station
bool is_large_station() const
Definition: NSWResourceId.h:93
Muon::nsw::NSWResourceId::station_phi
uint8_t station_phi() const
Definition: NSWResourceId.h:114
Muon::nsw::NSWResourceId
Definition: NSWResourceId.h:42
Muon::nsw::helper::NSWOfflineHelper::m_vmm
uint16_t m_vmm
Definition: NSWOfflineHelper.h:44
Muon::nsw::helper::NSWOfflineRobId
Definition: NSWOfflineHelper.h:49
NSWDecodeHelper.h
NSWResourceId.h
CalibCoolCompareRT.station_eta
station_eta
Definition: CalibCoolCompareRT.py:88
Muon::nsw::helper::NSWOfflineRobId::m_sourceIds
std::vector< uint32_t > m_sourceIds
Definition: NSWOfflineHelper.h:54
Muon::nsw::helper::NSWOfflineHelper::channel_type
uint8_t channel_type()
Definition: NSWOfflineHelper.cxx:11
Muon::nsw::helper::NSWOfflineRobId::get_ids
const std::vector< uint32_t > & get_ids() const
Definition: NSWOfflineHelper.h:54
Muon::nsw::helper::NSWOfflineHelper::is_large_station
bool is_large_station()
Definition: NSWOfflineHelper.h:28
CalibCoolCompareRT.station_phi
station_phi
Definition: CalibCoolCompareRT.py:87
createCablingJSON.station_name
string station_name
Simple script to generate a BIS78 cabling map as used for the Monte Carlo processing.
Definition: createCablingJSON.py:8
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::helper::NSWOfflineHelper::NSWOfflineHelper
NSWOfflineHelper(Muon::nsw::NSWResourceId *res_id, uint16_t vmm_number, uint16_t vmm_channel_number)
Definition: NSWOfflineHelper.h:21