18 return std::unique_ptr<SiStripRawProcessingAlgorithms>(
30 return std::unique_ptr<SiStripPedestalsSubtractor>(
41 if (
mode ==
"Percentile") {
42 return std::unique_ptr<SiStripCommonModeNoiseSubtractor>(
46 if (
mode ==
"IteratedMedian") {
51 if (
mode ==
"FastLinear")
55 return std::unique_ptr<SiStripCommonModeNoiseSubtractor>(
59 edm::LogError(
"SiStripRawProcessingFactory::create_SubtractorCMN")
60 <<
"Unregistered Algorithm: " <<
mode <<
". Use one of {Median, Percentile, IteratedMedian, FastLinear, TT6}";
66 const uint32_t
mode = conf.
getParameter<uint32_t>(
"SiStripFedZeroSuppressionMode");
68 const bool trunc10bits = conf.
getParameter<
bool>(
"Use10bitsTruncation");
74 return std::make_unique<SiStripFedZeroSuppression>(
mode, &iC,
trunc, trunc10bits);
76 edm::LogError(
"SiStripRawProcessingFactory::createSuppressor")
77 <<
"Unregistered mode: " <<
mode <<
". Use one of {1,2,3,4}.";
78 return std::make_unique<SiStripFedZeroSuppression>(4, &iC,
true, trunc10bits);
84 if (!conf.
exists(
"APVRestoreMode")) {
85 return std::unique_ptr<SiStripAPVRestorer>(
nullptr);