14 #include "TObjArray.h" 34 dictionary_[
"PEDESTAL_ONLINE_HIGH_GAIN_MEAN_ERROR"] = 0x1
36 dictionary_[
"PEDESTAL_ONLINE_HIGH_GAIN_RMS_ERROR"] = 0x1
126 "^[ ]*(Crystal|TT|PN)[ ]+(EB[0-9+-]*|EE[0-9+-]*|[0-9]+)[ " 127 "]+([0-9]+)[ ]([a-zA-Z_]+)");
131 std::getline(_input, line);
135 if (!linePat.MatchB(line))
138 TObjArray *
matches(linePat.MatchS(line));
139 TString channelType(
matches->At(1)->GetName());
141 unsigned channel(TString(
matches->At(3)->GetName()).Atoi());
142 TString statusName(
matches->At(4)->GetName());
145 std::map<std::string, uint32_t>::const_iterator dItr(
dictionary_.find(statusName.Data()));
148 uint32_t statusVal(dItr->second);
150 if (channelType ==
"Crystal") {
159 }
else if (
module ==
"EE") {
164 }
else if (channelType ==
"TT") {
169 if (
module.Contains(
"EB")) {
172 int iEta((channel - 1) / 4 + 1);
177 iPhi = (channel - 1) % 4 + 1;
180 iPhi = (68 - channel) % 4 + 1;
185 }
else if (
module.Contains(
"EE")) {
187 for (
unsigned iS(0); iS != scIds.size(); ++iS)
188 status_.insert(std::pair<uint32_t, uint32_t>(scIds[iS].rawId(), statusVal));
190 }
else if (channelType ==
"PN") {
193 unsigned iDCC(
module.Atoi() - 1);
214 barrelTowStatus[iC].getStatusCode()));
247 std::map<uint32_t, uint32_t>::const_iterator itr(
status_.find(_key));
static const int LED_MEAN_ERROR
static const int PEDESTAL_MIDDLE_GAIN_RMS_ERROR
static EcalTrigTowerDetId detIdFromDenseIndex(uint32_t di)
static const int LASER_MEAN_ERROR
static const int TESTPULSE_LOW_GAIN_RMS_ERROR
static const int PHYSICS_BAD_CHANNEL_WARNING
void readFromStream(std::istream &)
uint32_t getStatus(uint32_t) const
std::vector< Item > Items
static const int LASER_TIMING_RMS_ERROR
static const int PEDESTAL_HIGH_GAIN_MEAN_ERROR
const Items & barrelItems() const
EcalElectronicsMapping const * getElectronicsMap()
constexpr uint32_t rawId() const
get the raw id
static const int PEDESTAL_ONLINE_HIGH_GAIN_RMS_ERROR
static EcalScDetId unhashIndex(int hi)
static const int PHYSICS_BAD_CHANNEL_ERROR
static const int TT_SIZE_ERROR
static const int CH_GAIN_SWITCH_ERROR
static const int TESTPULSE_MIDDLE_GAIN_MEAN_ERROR
static EEDetId unhashIndex(int hi)
static const int PEDESTAL_LOW_GAIN_RMS_ERROR
std::map< std::string, uint32_t > dictionary_
const Items & endcapItems() const
void setValue(const uint32_t id, const Item &item)
static const int PEDESTAL_HIGH_GAIN_RMS_ERROR
static const int STATUS_FLAG_ERROR
void writeToStream(std::ostream &) const
void setValue(const uint32_t id, const Item &item)
static const int TESTPULSE_MIDDLE_GAIN_RMS_ERROR
const Items & barrelItems() const
static const int TESTPULSE_HIGH_GAIN_RMS_ERROR
static const int LED_TIMING_MEAN_ERROR
static const int PEDESTAL_LOW_GAIN_MEAN_ERROR
static const int TESTPULSE_LOW_GAIN_MEAN_ERROR
static const int LED_TIMING_RMS_ERROR
static const int CH_GAIN_ZERO_ERROR
static const int PEDESTAL_ONLINE_HIGH_GAIN_MEAN_ERROR
std::vector< Item > Items
static const int LASER_TIMING_MEAN_ERROR
static EBDetId unhashIndex(int hi)
get a DetId from a compact index for arrays
std::map< uint32_t, uint32_t > status_
static bool validDenseIndex(uint32_t din)
void writeToObj(EcalDQMChannelStatus &, EcalDQMTowerStatus &) const
static const int TT_ID_ERROR
static const int LED_RMS_ERROR
static const int PEDESTAL_MIDDLE_GAIN_MEAN_ERROR
static const int TESTPULSE_HIGH_GAIN_MEAN_ERROR
static const int LASER_RMS_ERROR
const Items & endcapItems() const
static const int CH_ID_ERROR
unsigned dccId(DetId const &)
void readFromObj(EcalDQMChannelStatus const &, EcalDQMTowerStatus const &)
static bool validDenseIndex(uint32_t din)