1 #include "../interface/IntegrityClient.h"
17 errFractionThreshold_(0.)
47 MESet& meQualitySummary(
MEs_.at(
"QualitySummary"));
62 DetId id( chSItr->getId() );
78 uint16_t code( chIt->getEncodedStatusCode() );
79 chSItr->setBinContent( code );
90 DetId id(qItr->getId());
94 float entries(occItr->getBinContent());
96 float gain(sGain.getBinContent(
id));
97 float chid(sChId.getBinContent(
id));
98 float gainswitch(sGainSwitch.getBinContent(
id));
100 float towerid(sTowerId.getBinContent(
id));
101 float blocksize(sBlockSize.getBinContent(
id));
103 if(entries + gain + chid + gainswitch + towerid + blocksize < 1.){
105 meQualitySummary.setBinContent(
id, doMask ?
kMUnknown : kUnknown);
109 float chErr((gain + chid + gainswitch + towerid + blocksize) / (entries + gain + chid + gainswitch + towerid + blocksize));
112 qItr->setBinContent(doMask ?
kMBad :
kBad);
113 meQualitySummary.setBinContent(
id, doMask ?
kMBad : kBad);
117 meQualitySummary.setBinContent(
id, doMask ?
kMGood : kGood);
125 std::vector<bool> hasMismatchDCC(
nDCC,
false);
126 for (
unsigned iDCC(0); iDCC <
nDCC; ++iDCC ) {
127 if ( sBXSRP.getBinContent(iDCC + 1) > 50. || sBXTCC.getBinContent(iDCC + 1) > 50. )
128 hasMismatchDCC[iDCC] =
true;
132 DetId id( qsItr->getId() );
133 unsigned iDCC(
dccId(
id)-1 );
134 if ( hasMismatchDCC[iDCC] )
T getUntrackedParameter(std::string const &, T const &) const
#define DEFINE_ECALDQM_WORKER(TYPE)
void producePlots(ProcessType) override
edm::ESHandle< EcalChannelStatus > chStatus
static const int TT_SIZE_ERROR
static const int CH_GAIN_SWITCH_ERROR
const_iterator & toNextChannel()
void setParams(edm::ParameterSet const &) override
std::set< std::string > qualitySummaries_
void endLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override
StatusManager const * statusManager_
static const int CH_GAIN_ZERO_ERROR
std::vector< Item >::const_iterator const_iterator
float errFractionThreshold_
static const int TT_ID_ERROR
static const int CH_ID_ERROR
unsigned dccId(DetId const &)