23 std::vector<std::string> sourceList(
_params.getUntrackedParameter<std::vector<std::string> >(
"activeSources"));
24 if (
std::find(sourceList.begin(), sourceList.end(),
"Presample") == sourceList.end())
26 if (
std::find(sourceList.begin(), sourceList.end(),
"Timing") == sourceList.end())
28 if (
std::find(sourceList.begin(), sourceList.end(),
"TriggerPrimitives") == sourceList.end())
30 if (
std::find(sourceList.begin(), sourceList.end(),
"HotCell") == sourceList.end())
37 MESet& meReportSummaryContents(
MEs_.
at(
"ReportSummaryContents"));
39 MESet& meReportSummaryMap(
MEs_.
at(
"ReportSummaryMap"));
41 for (
unsigned iDCC(0); iDCC <
nDCC; ++iDCC) {
52 MESet& meReportSummaryContents(
MEs_.
at(
"ReportSummaryContents"));
55 for (
unsigned iDCC(0); iDCC <
nDCC; ++iDCC) {
64 MESet const& sFEStatusErrMapByLumi(
sources_.
at(
"FEStatusErrMapByLumi"));
66 double integrityByLumi[
nDCC];
67 double rawDataByLumi[
nDCC];
68 for (
unsigned iDCC(0); iDCC <
nDCC; ++iDCC) {
75 MESet& meReportSummaryMap(
MEs_.
at(
"ReportSummaryMap"));
81 MESet const* sTriggerPrimitives(
using_(
"TriggerPrimitives") ? &
sources_.
at(
"TriggerPrimitives") :
nullptr);
84 float totalChannels(0.);
85 float totalGood(0.), totalGoodRaw(0);
87 double dccChannels[
nDCC];
88 std::fill_n(dccChannels,
nDCC, 0.);
89 double dccGood[
nDCC], dccGoodRaw[
nDCC];
90 std::fill_n(dccGood,
nDCC, 0.);
91 std::fill_n(dccGoodRaw,
nDCC, 0.);
93 std::map<uint32_t, int> badChannelsCount;
99 std::vector<bool> hasMismatchDCC(
nDCC,
false);
100 for (
unsigned iDCC(0); iDCC <
nDCC; ++iDCC) {
103 hasMismatchDCC[iDCC] =
true;
129 if (integrity ==
kBad && integrityByLumi[iDCC] == 0. && !hasMismatchDCC[iDCC])
132 if (rawdata ==
kBad && rawDataByLumi[iDCC] == 0. && rawdataLS == 0.)
147 qItr->setBinContent(integrity);
151 qItr->setBinContent(
status);
163 dccChannels[iDCC] += 1.;
169 if (rawdataLS == 0. || isMasked) {
170 dccGoodRaw[iDCC] += 1.;
241 for (
unsigned iDCC(0); iDCC <
nDCC; ++iDCC) {
242 if (dccChannels[iDCC] < 1.)
246 float frac(dccGood[iDCC] / dccChannels[iDCC]);
247 float fracRaw(dccGoodRaw[iDCC] / dccChannels[iDCC]);
256 float totalGoodLS(
onlineMode_ ? totalGood : totalGoodRaw);
257 if (totalChannels > 0.)
261 if (totalChannels > 0.)