73 std::vector<edm::ESGetToken<SiStripQuality, SiStripQualityRcd>>
_ssqTokens;
95 : m_rhm(consumesCollector()),
97 _mode(iConfig.getUntrackedParameter<unsigned
int>(
"granularityMode", Module)),
98 m_run(iConfig.getParameter<
bool>(
"runProcess")),
99 m_maxLS(iConfig.getUntrackedParameter<unsigned
int>(
"maxLSBeforeRebin", 100)),
100 m_LSfrac(iConfig.getUntrackedParameter<unsigned
int>(
"startingLSFraction", 4)),
118 sprintf(hrunname,
"badmodrun_%s",
name.c_str());
120 sprintf(hruntitle,
"Number of bad modules %s",
name.c_str());
138 for (std::size_t iMon = 0; iMon !=
_monitoredssq.size(); ++iMon) {
142 std::vector<SiStripQuality::BadComponent> bads = ssq.getBadComponentList();
144 LogDebug(
"BadComponents") << bads.size() <<
" bad components found";
149 for (
const auto& bc : bads) {
154 for (
int fiber = 1; fiber < 5; fiber *= 2) {
155 if ((bc.BadFibers & fiber) > 0)
159 for (
int apv = 1; apv < 33; apv *= 2) {
160 if ((bc.BadApvs & apv) > 0)
169 nbad += ssq.decode(*data).range;
183 for (std::size_t iMon = 0; iMon !=
_monitoredssq.size(); ++iMon) {
197 std::vector<SiStripQuality::BadComponent> bads = ssq.getBadComponentList();
199 LogDebug(
"BadComponents") << bads.size() <<
" bad components found";
204 for (
const auto& bc : bads) {
209 for (
int fiber = 1; fiber < 5; fiber *= 2) {
210 if ((bc.BadFibers & fiber) > 0)
214 for (
int apv = 1; apv < 33; apv *= 2) {
215 if ((bc.BadApvs & apv) > 0)
224 nbad += ssq.decode(*data).range;
230 sprintf(runname,
"%d", iRun.
run());
231 LogDebug(
"AnalyzedRun") <<
name <<
" " << runname <<
" " << nbad;