15 #include "TObjArray.h"
144 TPRegexp linePat(
"^[ ]*(Crystal|TT|PN)[ ]+(EB[0-9+-]*|EE[0-9+-]*|[0-9]+)[ ]+([0-9]+)[ ]([a-zA-Z_]+)");
148 std::getline(_input, line);
149 if(!_input.good())
break;
151 if(!linePat.MatchB(line))
continue;
153 TObjArray*
matches(linePat.MatchS(line));
154 TString channelType(
matches->At(1)->GetName());
156 unsigned channel(TString(
matches->At(3)->GetName()).Atoi());
157 TString statusName(
matches->At(4)->GetName());
160 std::map<std::string, uint32_t>::const_iterator dItr(
dictionary_.find(statusName.Data()));
162 uint32_t statusVal(dItr->second);
164 if(channelType ==
"Crystal"){
177 else if(channelType ==
"TT"){
181 if(
module.Contains(
"EB")){
184 int iEta((channel - 1) / 4 + 1);
189 iPhi = (channel - 1) % 4 + 1;
193 iPhi = (68 - channel) % 4 + 1;
198 else if(
module.Contains(
"EE")){
200 for(
unsigned iS(0); iS != scIds.size(); ++iS)
201 status_.insert(std::pair<uint32_t, uint32_t>(scIds[iS].rawId(), statusVal));
204 else if(channelType ==
"PN"){
207 unsigned iDCC(
module.Atoi() - 1);
267 std::map<uint32_t, uint32_t>::const_iterator itr(
status_.find(_key));
268 if(itr ==
status_.end())
return 0;
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()
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
uint32_t rawId() const
get the raw id
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
string key
FastSim: produces sample of signal events, overlayed with premixed minbias events.
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)