339 std::map<EcalLogicID, MonLaserBlueDat> l1Amp;
340 std::map<EcalLogicID, MonTimingLaserBlueCrystalDat> l1Time;
341 std::map<EcalLogicID, MonPNBlueDat> l1PN;
342 std::map<EcalLogicID, MonLaserGreenDat> l2Amp;
343 std::map<EcalLogicID, MonTimingLaserGreenCrystalDat> l2Time;
344 std::map<EcalLogicID, MonPNGreenDat> l2PN;
345 std::map<EcalLogicID, MonLaserIRedDat> l3Amp;
346 std::map<EcalLogicID, MonTimingLaserIRedCrystalDat> l3Time;
347 std::map<EcalLogicID, MonPNIRedDat> l3PN;
348 std::map<EcalLogicID, MonLaserRedDat> l4Amp;
349 std::map<EcalLogicID, MonTimingLaserRedCrystalDat> l4Time;
350 std::map<EcalLogicID, MonPNRedDat> l4PN;
352 MESet
const &ME(
source_.
at(
"Amplitude"));
353 MESet
const &aopME(
source_.
at(
"AOverP"));
354 MESet
const &timeME(
source_.
at(
"Timing"));
355 MESet
const &qualityME(
source_.
at(
"Quality"));
357 MESet
const &pnME(
source_.
at(
"PNAmplitude"));
358 MESet
const &pnQualityME(
source_.
at(
"PNQuality"));
359 MESet
const &pnPedestalME(
source_.
at(
"PNPedestal"));
361 for (std::map<int, unsigned>::iterator wlItr(
wlToME_.begin()); wlItr !=
wlToME_.end(); ++wlItr) {
362 int wl(wlItr->first);
363 unsigned iM(wlItr->second);
365 static_cast<MESetMulti
const &
>(ampME).use(iM);
366 static_cast<MESetMulti
const &
>(aopME).use(iM);
367 static_cast<MESetMulti
const &
>(timeME).use(iM);
368 static_cast<MESetMulti
const &
>(qualityME).use(iM);
369 static_cast<MESetMulti
const &
>(pnME).use(iM);
370 static_cast<MESetMulti
const &
>(pnQualityME).use(iM);
376 for (MESet::const_iterator aItr(ampME.beginChannel(
GetElectronicsMap())); aItr != aEnd;
378 float aEntries(aItr->getBinEntries());
388 float ampMean(aItr->getBinContent());
389 float ampRms(aItr->getBinError() *
std::sqrt(aEntries));
391 float aopEntries(oItr->getBinEntries());
392 float aopMean(oItr->getBinContent());
393 float aopRms(oItr->getBinError() *
std::sqrt(aopEntries));
395 float timeEntries(tItr->getBinEntries());
396 float timeMean(tItr->getBinContent());
397 float timeRms(tItr->getBinError() *
std::sqrt(timeEntries));
399 int channelStatus(qItr->getBinContent());
400 bool channelBad(channelStatus ==
kBad || channelStatus ==
kMBad);
407 aData.setAPDMean(ampMean);
408 aData.setAPDRMS(ampRms);
409 aData.setAPDOverPNMean(aopMean);
410 aData.setAPDOverPNRMS(aopRms);
411 aData.setTaskStatus(channelBad);
414 tData.setTimingMean(timeMean);
415 tData.setTimingRMS(timeRms);
416 tData.setTaskStatus(channelBad);
420 aData.setAPDMean(ampMean);
421 aData.setAPDRMS(ampRms);
422 aData.setAPDOverPNMean(aopMean);
423 aData.setAPDOverPNRMS(aopRms);
424 aData.setTaskStatus(channelBad);
427 tData.setTimingMean(timeMean);
428 tData.setTimingRMS(timeRms);
429 tData.setTaskStatus(channelBad);
433 aData.setAPDMean(ampMean);
434 aData.setAPDRMS(ampRms);
435 aData.setAPDOverPNMean(aopMean);
436 aData.setAPDOverPNRMS(aopRms);
437 aData.setTaskStatus(channelBad);
440 tData.setTimingMean(timeMean);
441 tData.setTimingRMS(timeRms);
442 tData.setTaskStatus(channelBad);
446 aData.setAPDMean(ampMean);
447 aData.setAPDRMS(ampRms);
448 aData.setAPDOverPNMean(aopMean);
449 aData.setAPDOverPNRMS(aopRms);
450 aData.setTaskStatus(channelBad);
453 tData.setTimingMean(timeMean);
454 tData.setTimingRMS(timeRms);
455 tData.setTaskStatus(channelBad);
461 for (
unsigned iMD(0); iMD <
memDCC.size(); ++iMD) {
462 unsigned iDCC(
memDCC[iMD]);
466 for (
unsigned iPN(1); iPN <= 10; ++iPN) {
481 bool channelBad(channelStatus ==
kBad || channelStatus ==
kMBad);
486 data.setADCMeanG1(-1.);
487 data.setADCRMSG1(-1.);
488 data.setPedMeanG1(-1.);
489 data.setPedRMSG1(-1.);
492 data.setPedMeanG16(pedestalMean);
493 data.setPedRMSG16(pedestalRms);
494 data.setTaskStatus(channelBad);
498 data.setADCMeanG1(-1.);
499 data.setADCRMSG1(-1.);
500 data.setPedMeanG1(-1.);
501 data.setPedRMSG1(-1.);
504 data.setPedMeanG16(pedestalMean);
505 data.setPedRMSG16(pedestalRms);
506 data.setTaskStatus(channelBad);
510 data.setADCMeanG1(-1.);
511 data.setADCRMSG1(-1.);
512 data.setPedMeanG1(-1.);
513 data.setPedRMSG1(-1.);
516 data.setPedMeanG16(pedestalMean);
517 data.setPedRMSG16(pedestalRms);
518 data.setTaskStatus(channelBad);
522 data.setADCMeanG1(-1.);
523 data.setADCRMSG1(-1.);
524 data.setPedMeanG1(-1.);
525 data.setPedRMSG1(-1.);
528 data.setPedMeanG16(pedestalMean);
529 data.setPedRMSG16(pedestalRms);
530 data.setTaskStatus(channelBad);
564 }
catch (std::runtime_error &
e) {
std::vector< unsigned > const memDCC
EcalLogicID crystalID(DetId const &, EcalElectronicsMapping const *)
MESet & at(const std::string &key)
std::map< int, unsigned > wlToME_
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
void insertDataArraySet(const std::map< EcalLogicID, DATT > *data, IOVT *iov) noexcept(false)
EcalElectronicsMapping const * GetElectronicsMap()
EcalDQMSetupObjects const getEcalDQMSetupObjects()
bool qualityOK(int _quality)
EcalLogicID lmPNID(EcalPnDiodeDetId const &)
char data[epos_bytes_allocation]