38 virtual ~ProductAdder() =
default;
42 template <
typename Product,
typename RealRecord>
43 class ProductAdderT :
public ProductAdder {
55 template <
typename Product,
typename RealRecord>
57 return std::make_unique<ProductAdderT<Product, RealRecord>>(
cc,
label);
79 : thresholdForReducedGranularity_{iConfig.
getParameter<
double>(
"ThresholdForReducedGranularity")},
80 printDebugOutput_{iConfig.getParameter<
bool>(
"PrintDebugOutput")},
81 useEmptyRunInfo_{iConfig.getParameter<
bool>(
"UseEmptyRunInfo")},
82 reduceGranularity_{iConfig.getParameter<
bool>(
"ReduceGranularity")} {
83 auto cc = setWhatProduced(
this);
87 bool doRunInfo =
false;
90 auto toGet = iConfig.getParameter<std::vector<edm::ParameterSet>>(
"ListOfRecordToMerge");
92 for (
const auto& toGetPSet :
toGet) {
97 <<
"[SiStripQualityESProducer::ctor] Going to get data from record " <<
recordName <<
" with tag " <<
tagName;
100 productAdders_.emplace_back(make_ProductAdder<SiStripBadStrip, SiStripBadModuleRcd>(
cc,
tagName));
101 }
else if (
recordName ==
"SiStripBadModuleFedErrRcd") {
102 productAdders_.emplace_back(make_ProductAdder<SiStripBadStrip, SiStripBadModuleFedErrRcd>(
cc,
tagName));
103 }
else if (
recordName ==
"SiStripBadFiberRcd") {
104 productAdders_.emplace_back(make_ProductAdder<SiStripBadStrip, SiStripBadFiberRcd>(
cc,
tagName));
105 }
else if (
recordName ==
"SiStripBadChannelRcd") {
106 productAdders_.emplace_back(make_ProductAdder<SiStripBadStrip, SiStripBadChannelRcd>(
cc,
tagName));
107 }
else if (
recordName ==
"SiStripBadStripRcd") {
108 productAdders_.emplace_back(make_ProductAdder<SiStripBadStrip, SiStripBadStripRcd>(
cc,
tagName));
109 }
else if (
recordName ==
"SiStripDetCablingRcd") {
110 productAdders_.emplace_back(make_ProductAdder<SiStripDetCabling, SiStripDetCablingRcd>(
cc,
tagName));
111 }
else if (
recordName ==
"SiStripDetVOffRcd") {
112 productAdders_.emplace_back(make_ProductAdder<SiStripDetVOff, SiStripDetVOffRcd>(
cc,
tagName));
119 <<
"[SiStripQualityESProducer::ctor] Skipping the requested data for unexisting record " <<
recordName
120 <<
" with tag " <<
tagName << std::endl;
131 auto quality = std::make_unique<SiStripQuality>();
132 edm::LogInfo(
"SiStripQualityESProducer") <<
"produce called";