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

#include <NswDcsDbData.h>

Collaboration diagram for NswDcsDbData:

Classes

struct  DcsModule
 
struct  TDaqConstants
 

Public Types

enum  DcsTechType { DcsTechType::MMG, DcsTechType::MMD, DcsTechType::STG }
 
using DcsDataType = MuonCond::DcsDataType
 
using DcsFsmState = MuonCond::DcsFsmState
 
using DcsConstants = MuonCond::DcsConstants
 

Public Member Functions

 NswDcsDbData (const MmIdHelper &mmHelper, const sTgcIdHelper &stgcHelper, const MuonGM::MuonDetectorManager *muonGeoMgr)
 
virtual ~NswDcsDbData ()=default
 
void setDataHv (const DcsTechType tech, const Identifier &chnlId, DcsConstants constants)
 
void setDataTDaq (const DcsTechType tech, const Identifier &chnlId, uint64_t timeSince, uint64_t timeUntil, unsigned int elink, bool permanentlyDisabled)
 
void setDataEltx (const DcsTechType tech, const Identifier &chnlId)
 
std::vector< IdentifiergetChannelIdsHv (const DcsTechType tech, const std::string &side) const
 
const DcsConstantsgetDataForChannelHv (const DcsTechType tech, const Identifier &channelId, bool issTgcQ1OuterHv) const
 Retrieves the calibration constant for a particular readout channel. More...
 
bool isGood (const EventContext &ctx, const Identifier &channelId, bool issTgcQ1OuterHv=false) const
 Returns whether the channel is alive, i.e. DCS state on, etc... More...
 
bool isGoodHv (const Identifier &channelId, bool issTgcQ1OuterHv=false) const
 
bool isGoodTDaq (const EventContext &ctx, const Identifier &channelId, bool &permanentlyDisabled) const
 
bool isGoodEltx (const Identifier &channelId) const
 
bool isConnectedChannel (const Identifier &channelId) const
 

Private Types

using ChannelDcsMap = std::vector< DcsModule >
 
using ChannelTDaqMap = std::vector< std::map< Identifier, std::set< TDaqConstants > >>
 
using ChannelEltxMap = std::vector< std::set< Identifier > >
 

Private Member Functions

unsigned int identToModuleIdx (const Identifier &chan_id) const
 

Private Attributes

ChannelDcsMap m_data_hv_mmg {}
 
ChannelDcsMap m_data_hv_mmd {}
 
ChannelDcsMap m_data_hv_stg {}
 
ChannelTDaqMap m_data_tdaq_mmg {}
 
ChannelTDaqMap m_data_tdaq_stg {}
 
ChannelEltxMap m_data_eltx_mmg {}
 
ChannelEltxMap m_data_eltx_stg {}
 
const MmIdHelperm_mmIdHelper
 
const sTgcIdHelperm_stgcIdHelper
 
const MuonGM::MuonDetectorManagerm_muonGeoMgr {nullptr}
 

Detailed Description

Definition at line 19 of file NswDcsDbData.h.

Member Typedef Documentation

◆ ChannelDcsMap

using NswDcsDbData::ChannelDcsMap = std::vector<DcsModule>
private

Definition at line 74 of file NswDcsDbData.h.

◆ ChannelEltxMap

using NswDcsDbData::ChannelEltxMap = std::vector<std::set<Identifier> >
private

Definition at line 81 of file NswDcsDbData.h.

◆ ChannelTDaqMap

using NswDcsDbData::ChannelTDaqMap = std::vector<std::map<Identifier, std::set<TDaqConstants> >>
private

Definition at line 78 of file NswDcsDbData.h.

◆ DcsConstants

Definition at line 29 of file NswDcsDbData.h.

◆ DcsDataType

Definition at line 27 of file NswDcsDbData.h.

◆ DcsFsmState

Definition at line 28 of file NswDcsDbData.h.

Member Enumeration Documentation

◆ DcsTechType

Enumerator
MMG 
MMD 
STG 

Definition at line 22 of file NswDcsDbData.h.

22  {
23  MMG, // MM channels
24  MMD, // MM drift channels
25  STG // sTGC
26  };

Constructor & Destructor Documentation

◆ NswDcsDbData()

NswDcsDbData::NswDcsDbData ( const MmIdHelper mmHelper,
const sTgcIdHelper stgcHelper,
const MuonGM::MuonDetectorManager muonGeoMgr 
)

Definition at line 22 of file NswDcsDbData.cxx.

22  :
23  m_mmIdHelper(mmIdHelper),
24  m_stgcIdHelper(stgcIdHelper),
25  m_muonGeoMgr(muonGeoMgr)
26 {
27 }

◆ ~NswDcsDbData()

virtual NswDcsDbData::~NswDcsDbData ( )
virtualdefault

Member Function Documentation

◆ getChannelIdsHv()

std::vector< Identifier > NswDcsDbData::getChannelIdsHv ( const DcsTechType  tech,
const std::string &  side 
) const

Definition at line 117 of file NswDcsDbData.cxx.

117  {
118  std::vector<Identifier> chnls;
119  if(tech == DcsTechType::MMG || tech == DcsTechType::MMD){
120  const ChannelDcsMap& dcsMap = tech == DcsTechType::MMG ? m_data_hv_mmg : m_data_hv_mmd;
121  chnls.reserve(dcsMap.size());
122  for(const DcsModule& module : dcsMap) {
123  if(module.channels.empty()) continue;
124  if(side == "A" && m_mmIdHelper.stationEta(module.layer_id) < 0) continue;
125  if(side == "C" && m_mmIdHelper.stationEta(module.layer_id) > 0) continue;
126  for(unsigned int chn = 1 ; chn <= module.channels.size() ; ++chn) {
127  if(!module.channels[chn -1]) continue;
128  chnls.push_back(m_mmIdHelper.channelID(module.layer_id, m_mmIdHelper.multilayer(module.layer_id), m_mmIdHelper.gasGap(module.layer_id), chn ));
129  }
130  }
131  } else if(tech == DcsTechType::STG){
132  const ChannelDcsMap& dcsMap = m_data_hv_stg;
133  chnls.reserve(dcsMap.size());
134  for(const DcsModule& module : dcsMap) {
135  if(module.channels.empty()) continue;
136  if(side == "A" && m_stgcIdHelper.stationEta(module.layer_id) < 0) continue;
137  if(side == "C" && m_stgcIdHelper.stationEta(module.layer_id) > 0) continue;
138  for(unsigned int chn = 1 ; chn <= module.channels.size() ; ++chn) {
139  if(!module.channels[chn -1]) continue;
140  chnls.push_back(m_stgcIdHelper.channelID(module.layer_id, m_stgcIdHelper.multilayer(module.layer_id),
141  m_stgcIdHelper.gasGap(module.layer_id), m_stgcIdHelper.channelType(module.layer_id), chn ));
142  }
143  }
144  }
145  return chnls;
146 }

◆ getDataForChannelHv()

const NswDcsDbData::DcsConstants * NswDcsDbData::getDataForChannelHv ( const DcsTechType  tech,
const Identifier channelId,
bool  issTgcQ1OuterHv 
) const

Retrieves the calibration constant for a particular readout channel.

Definition at line 149 of file NswDcsDbData.cxx.

149  {
150  if(tech == DcsTechType::MMG){
151  if(!m_mmIdHelper.is_mm(channelId)) return nullptr;
152  Identifier dcsChannelIdStripHv = m_mmIdHelper.pcbID(channelId);
153  const ChannelDcsMap& dcsMap = m_data_hv_mmg; // later add something like: type == DcsDataType::HV ? m_data_hv : m_data_lv;
154  const unsigned int array_idx = identToModuleIdx(dcsChannelIdStripHv);
155  const unsigned int channel = m_mmIdHelper.channel(dcsChannelIdStripHv) -1;
156  if (dcsMap.size() > array_idx && dcsMap.at(array_idx).channels.size() > channel && dcsMap[array_idx].channels[channel]) return dcsMap[array_idx].channels[channel].get();
157  } else if (tech == DcsTechType::MMD) {
158  if(!m_mmIdHelper.is_mm(channelId)) return nullptr;
159  Identifier dcsChannelIdDriftHv = m_mmIdHelper.multilayerID(channelId);
160  const ChannelDcsMap& dcsMap = m_data_hv_mmd;
161  const unsigned int array_idx = identToModuleIdx(dcsChannelIdDriftHv);
162  const unsigned int channel = m_mmIdHelper.channel(dcsChannelIdDriftHv) -1;
163  if (dcsMap.size() > array_idx && dcsMap.at(array_idx).channels.size() > channel && dcsMap[array_idx].channels[channel]) return dcsMap[array_idx].channels[channel].get();
164  } else if(tech == DcsTechType::STG){
165  if(!m_stgcIdHelper.is_stgc(channelId)) return nullptr;
166 
167  // the parameter issTgcQ1OuterHv is only relevant for the Q1s of the stgcs. So set it to false if we are not in Q1, just in case
168  if(std::abs(m_stgcIdHelper.stationEta(channelId))!= 1) {issTgcQ1OuterHv=false;}
169  Identifier dcsChannelId = m_stgcIdHelper.hvID(channelId, !issTgcQ1OuterHv /* the function take isInnerQ1 therefore invert the isOuterQ1 variable*/);
170  const ChannelDcsMap& dcsMap = m_data_hv_stg;
171  const unsigned int array_idx = identToModuleIdx(dcsChannelId);
172  const unsigned int channel = m_stgcIdHelper.channel(dcsChannelId) -1;
173  if (dcsMap.size() > array_idx && dcsMap.at(array_idx).channels.size() > channel && dcsMap[array_idx].channels[channel]) return dcsMap[array_idx].channels[channel].get();
174  }
175  return nullptr;
176 }

◆ identToModuleIdx()

unsigned int NswDcsDbData::identToModuleIdx ( const Identifier chan_id) const
private

Definition at line 34 of file NswDcsDbData.cxx.

34  {
35  if (m_mmIdHelper.is_mm(chan_id)) {
38  throw std::runtime_error("NswDcsDbData() - Failed to retrieve valid micromega hash ");
39  }
40  return static_cast<unsigned int>(hash)*(m_mmIdHelper.gasGapMax()) + (m_mmIdHelper.gasGap(chan_id) -1);
41  } else if (m_stgcIdHelper.is_stgc(chan_id)) {
44  throw std::runtime_error("NswDcsDbData() - Failed to retrieve valid stgc hash ");
45  }
46  return static_cast<unsigned int>(hash)*(m_stgcIdHelper.gasGapMax()) + (m_stgcIdHelper.gasGap(chan_id) -1);
47  }
48  throw std::runtime_error("NswDcsDbData() - No NSW identifier");
49  return -1;
50  }

◆ isConnectedChannel()

bool NswDcsDbData::isConnectedChannel ( const Identifier channelId) const

Definition at line 254 of file NswDcsDbData.cxx.

254  {
255  // for stgc we do not have unconnected channels
256  if(m_stgcIdHelper.is_stgc(channelId)) return true;
257 
258  if(!m_mmIdHelper.is_mm(channelId)) throw std::runtime_error("the check for unconnected channels was called with an identifier that is in MM and not sTGC");
259 
260  const MuonGM::MMReadoutElement* detectorReadoutElement = m_muonGeoMgr->getMMReadoutElement(channelId);
261  if(!detectorReadoutElement) {
262  throw std::runtime_error("failed to retrieve MMReadoutElement");
263  }
264  const MuonGM::MuonChannelDesign* channelDesign = detectorReadoutElement->getDesign(channelId);
265  if(!channelDesign) {
266  throw std::runtime_error("failed to retrieve MuonChannelDesign");
267  }
268 
269  int channel_number = m_mmIdHelper.channel(channelId);
271  if(channel_number <= channelDesign->nMissedBottomStereo || channel_number >= channelDesign->totalStrips - channelDesign->nMissedTopStereo) {
272  return false;
273  }
274  } else {
275  if(channel_number <= channelDesign->nMissedBottomEta || channel_number >= channelDesign->totalStrips - channelDesign->nMissedTopEta) {
276  return false;
277  }
278  }
279  return true;
280 
281 }

◆ isGood()

bool NswDcsDbData::isGood ( const EventContext &  ctx,
const Identifier channelId,
bool  issTgcQ1OuterHv = false 
) const

Returns whether the channel is alive, i.e. DCS state on, etc...

Definition at line 179 of file NswDcsDbData.cxx.

179  {
180  // here we will check the different DCS components that need to be good to declare a detector region as good
181  // for now we only we only have the HV data
182  if(!isGoodHv(channelId, issTgcQ1OuterHv)) return false;
183  //isGoodEltx and isGoodTdaq are still under validation, but since they are switched off in the NswDcsAlg their data will be empty so they do not reject hits for now.
184  bool permanentlyDisabled{false};
185  if(!isGoodTDaq(ctx, channelId, permanentlyDisabled)) return false;
186  if(!isGoodEltx(channelId)) return false;
187  if(!isConnectedChannel(channelId)) return false;
188  return true;
189 
190 }

◆ isGoodEltx()

bool NswDcsDbData::isGoodEltx ( const Identifier channelId) const

Definition at line 245 of file NswDcsDbData.cxx.

245  {
247  const unsigned int array_idx = identToModuleIdx(channelId);
248  if(data.size()<=array_idx || data[array_idx].empty()) return true; // for this ro element no bad elink have been recorded
249  if(data[array_idx].find(channelId) != data[array_idx].end()) return false;
250  return true;
251 }

◆ isGoodHv()

bool NswDcsDbData::isGoodHv ( const Identifier channelId,
bool  issTgcQ1OuterHv = false 
) const

For the moment do not kill the hit if there's no dcs data

Definition at line 193 of file NswDcsDbData.cxx.

193  {
197  return !dcs || dcs->fsmState == DcsFsmState::ON;
198  } else if (m_stgcIdHelper.is_mm(channelId)){
199  const NswDcsDbData::DcsConstants* dcsDrift = getDataForChannelHv(DcsTechType::MMD, channelId, issTgcQ1OuterHv);
200  bool driftHvIsGood = (!dcsDrift || dcsDrift->fsmState == DcsFsmState::ON);
201 
202  const NswDcsDbData::DcsConstants* dcsStrips = getDataForChannelHv(DcsTechType::MMG, channelId, issTgcQ1OuterHv);
203  bool stripHvIsGood = (!dcsStrips || dcsStrips->fsmState == DcsFsmState::ON);
204 
205  return driftHvIsGood && stripHvIsGood;
206  }
207  return false;
208 }

◆ isGoodTDaq()

bool NswDcsDbData::isGoodTDaq ( const EventContext &  ctx,
const Identifier channelId,
bool &  permanentlyDisabled 
) const

Definition at line 210 of file NswDcsDbData.cxx.

210  {
212  const unsigned int array_idx = identToModuleIdx(channelId);
213  if(data.size()<=array_idx || data[array_idx].empty()) return true; // for this ro element no bad elink have been recorded
214  const std::map<Identifier, std::set<TDaqConstants>>& dataInRoElement = data[array_idx];
215  Identifier mapIdentifier{0};
216  uint elink{0};
217 
219  mapIdentifier = m_stgcIdHelper.febID(channelId);
220  auto mapper = Muon::nsw::MapperSTG();
222  } else {
223  mapIdentifier = m_mmIdHelper.febID(channelId);
224  auto mapper = Muon::nsw::MapperMMG();
225  mapper.elink_info(std::abs(m_mmIdHelper.stationEta(channelId))-1, m_mmIdHelper.channel(channelId), elink);
226  }
227 
228  auto elm = dataInRoElement.find(mapIdentifier);
229  if(elm == dataInRoElement.end()) return true; // channel in question was not deactivated at all
230  TDaqConstants x;
231  uint64_t evtTime = ctx.eventID().time_stamp()*1e9; // go from seconds to nanoseconds
232  evtTime += ctx.eventID().time_stamp_ns_offset();
233  x.timeSince = evtTime;
234  x.timeUntil = evtTime;
235  x.elink = elink;
236 
237  auto disabledLink = elm->second.find(x);
238  if(disabledLink != elm->second.end()){// elink was deactivated for this time period
239  permanentlyDisabled = disabledLink->permanentlyDisabled;
240  return false;
241  }
242  return true; // checked the channel in question, not deactivated for given run and lumi block combination, all good
243 }

◆ setDataEltx()

void NswDcsDbData::setDataEltx ( const DcsTechType  tech,
const Identifier chnlId 
)

Definition at line 104 of file NswDcsDbData.cxx.

104  {
106  const uint array_idx = identToModuleIdx(channelId);
107  if (array_idx >= data.size()) data.resize(array_idx + 1);
108  data[array_idx].insert(channelId);
109 }

◆ setDataHv()

void NswDcsDbData::setDataHv ( const DcsTechType  tech,
const Identifier chnlId,
DcsConstants  constants 
)

Definition at line 56 of file NswDcsDbData.cxx.

56  {
57  if(tech == DcsTechType::MMG || tech == DcsTechType::MMD) {
59  const unsigned int array_idx = identToModuleIdx(chnlId);
60  if (array_idx >= dcsMap.size()) dcsMap.resize(array_idx + 1);
61  DcsModule& dcs_mod = dcsMap[array_idx];
62  const unsigned int channel = m_mmIdHelper.channel(chnlId)-1;
63  if(dcs_mod.channels.empty())
64  dcs_mod.layer_id = m_mmIdHelper.channelID(chnlId, m_mmIdHelper.multilayer(chnlId), m_mmIdHelper.gasGap(chnlId), 1);
65  if(dcs_mod.channels.size() <= channel) dcs_mod.channels.resize(channel +1);
66  if(dcs_mod.channels[channel]) {
67  throw std::runtime_error("NswDcsDbData::setData() -- Cannot overwrite channel");
68  return;
69  }
70  dcs_mod.channels[channel] = std::make_unique<DcsConstants>(std::move(constants));
71  } else if(tech == DcsTechType::STG) {
72  ChannelDcsMap& dcsMap = m_data_hv_stg;
73  const unsigned int array_idx = identToModuleIdx(chnlId);
74  if (array_idx >= dcsMap.size()) dcsMap.resize(array_idx + 1);
75  DcsModule& dcs_mod = dcsMap.at(array_idx);
76  const unsigned int channel = m_stgcIdHelper.channel(chnlId)-1;
77  if(dcs_mod.channels.empty()) {
78  dcs_mod.layer_id = m_stgcIdHelper.channelID(chnlId, m_stgcIdHelper.multilayer(chnlId), m_stgcIdHelper.gasGap(chnlId), m_stgcIdHelper.channelType(chnlId), 1);
79  }
80  if(dcs_mod.channels.size() <= channel) dcs_mod.channels.resize(channel +1);
81  if(dcs_mod.channels[channel]) {
82  throw std::runtime_error("setData() -- Cannot overwrite channel");
83  return;
84  }
85  dcs_mod.channels[channel] = std::make_unique<DcsConstants>(std::move(constants));
86  }
87 }

◆ setDataTDaq()

void NswDcsDbData::setDataTDaq ( const DcsTechType  tech,
const Identifier chnlId,
uint64_t  timeSince,
uint64_t  timeUntil,
unsigned int  elink,
bool  permanentlyDisabled 
)

Definition at line 91 of file NswDcsDbData.cxx.

91  {
93  const unsigned int array_idx = identToModuleIdx(chnlId);
94  if (array_idx >= data.size()) data.resize(array_idx + 1);
95  TDaqConstants x;
96  x.timeSince = timeSince;
97  x.timeUntil = timeUntil;
98  x.elink = elink;
99  x.permanentlyDisabled = permanentlyDisabled;
100  data[array_idx][chnlId].insert(x);
101 }

Member Data Documentation

◆ m_data_eltx_mmg

ChannelEltxMap NswDcsDbData::m_data_eltx_mmg {}
private

Definition at line 82 of file NswDcsDbData.h.

◆ m_data_eltx_stg

ChannelEltxMap NswDcsDbData::m_data_eltx_stg {}
private

Definition at line 83 of file NswDcsDbData.h.

◆ m_data_hv_mmd

ChannelDcsMap NswDcsDbData::m_data_hv_mmd {}
private

Definition at line 76 of file NswDcsDbData.h.

◆ m_data_hv_mmg

ChannelDcsMap NswDcsDbData::m_data_hv_mmg {}
private

Definition at line 75 of file NswDcsDbData.h.

◆ m_data_hv_stg

ChannelDcsMap NswDcsDbData::m_data_hv_stg {}
private

Definition at line 77 of file NswDcsDbData.h.

◆ m_data_tdaq_mmg

ChannelTDaqMap NswDcsDbData::m_data_tdaq_mmg {}
private

Definition at line 79 of file NswDcsDbData.h.

◆ m_data_tdaq_stg

ChannelTDaqMap NswDcsDbData::m_data_tdaq_stg {}
private

Definition at line 80 of file NswDcsDbData.h.

◆ m_mmIdHelper

const MmIdHelper& NswDcsDbData::m_mmIdHelper
private

Definition at line 86 of file NswDcsDbData.h.

◆ m_muonGeoMgr

const MuonGM::MuonDetectorManager* NswDcsDbData::m_muonGeoMgr {nullptr}
private

Definition at line 89 of file NswDcsDbData.h.

◆ m_stgcIdHelper

const sTgcIdHelper& NswDcsDbData::m_stgcIdHelper
private

Definition at line 87 of file NswDcsDbData.h.


The documentation for this class was generated from the following files:
sTgcIdHelper::multilayer
int multilayer(const Identifier &id) const
Definition: sTgcIdHelper.cxx:1017
data
char data[hepevt_bytes_allocation_ATLAS]
Definition: HepEvt.cxx:11
NswDcsDbData::getDataForChannelHv
const DcsConstants * getDataForChannelHv(const DcsTechType tech, const Identifier &channelId, bool issTgcQ1OuterHv) const
Retrieves the calibration constant for a particular readout channel.
Definition: NswDcsDbData.cxx:149
NswDcsDbData::DcsTechType::STG
@ STG
NswDcsDbData::m_data_tdaq_mmg
ChannelTDaqMap m_data_tdaq_mmg
Definition: NswDcsDbData.h:79
plotting.yearwise_efficiency.channel
channel
Definition: yearwise_efficiency.py:28
find
std::string find(const std::string &s)
return a remapped string
Definition: hcg.cxx:135
sTgcIdHelper::gasGapMax
static int gasGapMax()
Definition: sTgcIdHelper.cxx:1044
sTgcIdHelper::channelID
Identifier channelID(int stationName, int stationEta, int stationPhi, int multilayer, int gasGap, int channelType, int channel) const
Definition: sTgcIdHelper.cxx:886
MuonIdHelper::detectorElement_hash_max
size_type detectorElement_hash_max() const
Definition: MuonIdHelper.h:186
MuonGM::MMReadoutElement::getDesign
const MuonChannelDesign * getDesign(const Identifier &id) const
returns the MuonChannelDesign class for the given identifier
Definition: MMReadoutElement.h:193
MmIdHelper::febID
Identifier febID(int stationName, int stationEta, int stationPhi, int multilayer, int gasGap, int radius) const
Definition: MmIdHelper.cxx:339
MmIdHelper::get_detectorElement_hash
virtual int get_detectorElement_hash(const Identifier &id, IdentifierHash &hash_id) const override
Definition: MmIdHelper.cxx:268
x
#define x
NswDcsDbData::m_data_hv_stg
ChannelDcsMap m_data_hv_stg
Definition: NswDcsDbData.h:77
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
MmIdHelper::multilayer
int multilayer(const Identifier &id) const
Definition: MmIdHelper.cxx:796
MuonIdHelper::isSmall
bool isSmall(const Identifier &id) const
Definition: MuonIdHelper.cxx:835
TRT::Hit::side
@ side
Definition: HitInfo.h:83
MuonCond::DcsFsmState::ON
@ ON
MuonIdHelper::is_stgc
bool is_stgc(const Identifier &id) const
Definition: MuonIdHelper.cxx:798
python.PyAthena.module
module
Definition: PyAthena.py:134
MmIdHelper::multilayerID
Identifier multilayerID(const Identifier &channeldID) const
Definition: MmIdHelper.cxx:276
uint
unsigned int uint
Definition: LArOFPhaseFill.cxx:20
NswDcsDbData::identToModuleIdx
unsigned int identToModuleIdx(const Identifier &chan_id) const
Definition: NswDcsDbData.cxx:34
sTgcIdHelper::channel
int channel(const Identifier &id) const override
Definition: sTgcIdHelper.cxx:1027
NswDcsDbData::DcsTechType::MMD
@ MMD
NswDcsDbData::isGoodHv
bool isGoodHv(const Identifier &channelId, bool issTgcQ1OuterHv=false) const
Definition: NswDcsDbData.cxx:193
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
sTgcIdHelper::gasGap
int gasGap(const Identifier &id) const override
get the hashes
Definition: sTgcIdHelper.cxx:1020
NswDcsDbData::isGoodEltx
bool isGoodEltx(const Identifier &channelId) const
Definition: NswDcsDbData.cxx:245
MuonCond::DcsConstants
Helper struct to cache all dcs constants in a common place of the memory.
Definition: MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/MuonCondData/Defs.h:31
MmIdHelper::gasGapMax
static int gasGapMax()
Definition: MmIdHelper.cxx:827
xAOD::uint64_t
uint64_t
Definition: EventInfo_v1.cxx:123
NswDcsDbData::ChannelDcsMap
std::vector< DcsModule > ChannelDcsMap
Definition: NswDcsDbData.h:74
Muon::nsw::MapperMMG
Definition: MapperMMG.h:15
MuonIdHelper::is_mm
bool is_mm(const Identifier &id) const
Definition: MuonIdHelper.cxx:801
MuonCond::DcsConstants::fsmState
DcsFsmState fsmState
Definition: MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/MuonCondData/Defs.h:34
CaloCondBlobAlgs_fillNoiseFromASCII.channelId
channelId
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:122
NswDcsDbData::m_data_hv_mmd
ChannelDcsMap m_data_hv_mmd
Definition: NswDcsDbData.h:76
NswDcsDbData::DcsTechType::MMG
@ MMG
MuonGM::MuonChannelDesign::nMissedTopStereo
int nMissedTopStereo
Definition: MuonChannelDesign.h:45
NswDcsDbData::ChannelEltxMap
std::vector< std::set< Identifier > > ChannelEltxMap
Definition: NswDcsDbData.h:81
NswDcsDbData::isGoodTDaq
bool isGoodTDaq(const EventContext &ctx, const Identifier &channelId, bool &permanentlyDisabled) const
Definition: NswDcsDbData.cxx:210
MuonGM::MuonChannelDesign::totalStrips
int totalStrips
Definition: MuonChannelDesign.h:47
MuonIdHelper::stationEta
int stationEta(const Identifier &id) const
Definition: MuonIdHelper.cxx:809
sTgcIdHelper::get_detectorElement_hash
virtual int get_detectorElement_hash(const Identifier &id, IdentifierHash &hash_id) const override
Definition: sTgcIdHelper.cxx:287
MuonGM::MuonChannelDesign
Definition: MuonChannelDesign.h:24
NswDcsDbData::m_data_eltx_mmg
ChannelEltxMap m_data_eltx_mmg
Definition: NswDcsDbData.h:82
MmIdHelper::channel
int channel(const Identifier &id) const override
Definition: MmIdHelper.cxx:800
MmIdHelper::gasGap
int gasGap(const Identifier &id) const override
get the hashes
Definition: MmIdHelper.cxx:798
CaloCondBlobAlgs_fillNoiseFromASCII.hash
dictionary hash
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:109
NswDcsDbData::ChannelTDaqMap
std::vector< std::map< Identifier, std::set< TDaqConstants > >> ChannelTDaqMap
Definition: NswDcsDbData.h:78
constants
Definition: Calorimeter/CaloClusterCorrection/python/constants.py:1
NswDcsDbData::m_data_hv_mmg
ChannelDcsMap m_data_hv_mmg
Definition: NswDcsDbData.h:75
MuonGM::MuonDetectorManager::getMMReadoutElement
const MMReadoutElement * getMMReadoutElement(const Identifier &id) const
access via extended identifier (requires unpacking)
Definition: MuonDetDescr/MuonReadoutGeometry/src/MuonDetectorManager.cxx:255
NswDcsDbData::m_mmIdHelper
const MmIdHelper & m_mmIdHelper
Definition: NswDcsDbData.h:86
NswDcsDbData::isConnectedChannel
bool isConnectedChannel(const Identifier &channelId) const
Definition: NswDcsDbData.cxx:254
MmIdHelper::pcbID
Identifier pcbID(int stationName, int stationEta, int stationPhi, int multilayer, int gasGap, int pcb) const
Definition: MmIdHelper.cxx:303
MuonGM::MMReadoutElement
An MMReadoutElement corresponds to a single STGC module; therefore typicaly a barrel muon station con...
Definition: MMReadoutElement.h:23
MuonGM::MuonChannelDesign::nMissedTopEta
int nMissedTopEta
Definition: MuonChannelDesign.h:43
sTgcIdHelper::febID
Identifier febID(int stationName, int stationEta, int stationPhi, int multilayer, int gasGap, int channelType) const
Definition: sTgcIdHelper.cxx:321
NswDcsDbData::m_stgcIdHelper
const sTgcIdHelper & m_stgcIdHelper
Definition: NswDcsDbData.h:87
NswDcsDbData::m_muonGeoMgr
const MuonGM::MuonDetectorManager * m_muonGeoMgr
Definition: NswDcsDbData.h:89
IdentifierHash
Definition: IdentifierHash.h:38
sTgcIdHelper::hvID
Identifier hvID(int stationName, int stationEta, int stationPhi, int multilayer, int gasGap, bool isInnerQ1) const
Definition: sTgcIdHelper.cxx:338
MmIdHelper::channelID
Identifier channelID(int stationName, int stationEta, int stationPhi, int multilayer, int gasGap, int channel) const
Definition: MmIdHelper.cxx:736
MmIdHelper::isStereo
bool isStereo(const Identifier &id) const
Definition: MmIdHelper.cxx:817
sTgcIdHelper::channelType
int channelType(const Identifier &id) const
Definition: sTgcIdHelper.cxx:1022
NswDcsDbData::m_data_tdaq_stg
ChannelTDaqMap m_data_tdaq_stg
Definition: NswDcsDbData.h:80
Muon::nsw::MapperSTG
Definition: MapperSTG.h:18
NswDcsDbData::m_data_eltx_stg
ChannelEltxMap m_data_eltx_stg
Definition: NswDcsDbData.h:83