25 doFullCorruptBufferChecks_(
false),
26 doAPVEmulatorCheck_(
true) {
28 LogTrace(
"SiStripRawToDigi") <<
"[sistrip::RawToDigiModule::" << __func__ <<
"]" 29 <<
" Constructing object...";
33 int16_t appended_bytes = pset.
getParameter<
int>(
"AppendedBytes");
34 int16_t trigger_fed_id = pset.
getParameter<
int>(
"TriggerFedId");
35 bool legacy_unpacker = pset.
getParameter<
bool>(
"LegacyUnpacker");
36 bool use_daq_register = pset.
getParameter<
bool>(
"UseDaqRegister");
37 bool using_fed_key = pset.
getParameter<
bool>(
"UseFedKey");
38 bool unpack_bad_channels = pset.
getParameter<
bool>(
"UnpackBadChannels");
39 bool mark_missing_feds = pset.
getParameter<
bool>(
"MarkModulesOnMissingFeds");
48 uint32_t errorThreshold = pset.
getParameter<
unsigned int>(
"ErrorThreshold");
58 rawToDigi_->legacy(legacy_unpacker);
59 rawToDigi_->quiet(quiet);
60 rawToDigi_->useDaqRegister(use_daq_register);
61 rawToDigi_->extractCm(extractCm_);
62 rawToDigi_->doFullCorruptBufferChecks(doFullCorruptBufferChecks_);
63 rawToDigi_->doAPVEmulatorCheck(doAPVEmulatorCheck_);
65 produces<SiStripEventSummary>();
66 produces<edm::DetSetVector<SiStripRawDigi> >(
"ScopeMode");
67 produces<edm::DetSetVector<SiStripRawDigi> >(
"VirginRaw");
68 produces<edm::DetSetVector<SiStripRawDigi> >(
"ProcessedRaw");
69 produces<edm::DetSetVector<SiStripDigi> >(
"ZeroSuppressed");
70 produces<DetIdCollection>();
72 produces<edm::DetSetVector<SiStripRawDigi> >(
"CommonMode");
83 LogTrace(
"SiStripRawToDigi") <<
"[sistrip::RawToDigiModule::" << __func__ <<
"]" 84 <<
" Destructing object...";
101 event.getByToken(
token_, buffers);
104 auto summary = std::make_unique<SiStripEventSummary>();
121 std::unique_ptr<edm::DetSetVector<SiStripRawDigi> > sm_dsv(sm);
122 std::unique_ptr<edm::DetSetVector<SiStripRawDigi> > vr_dsv(vr);
123 std::unique_ptr<edm::DetSetVector<SiStripRawDigi> > pr_dsv(pr);
124 std::unique_ptr<edm::DetSetVector<SiStripDigi> > zs_dsv(zs);
125 std::unique_ptr<DetIdCollection> det_ids(ids);
126 std::unique_ptr<edm::DetSetVector<SiStripRawDigi> > cm_dsv(cm);
130 event.put(
std::move(sm_dsv),
"ScopeMode");
131 event.put(
std::move(vr_dsv),
"VirginRaw");
132 event.put(
std::move(pr_dsv),
"ProcessedRaw");
133 event.put(
std::move(zs_dsv),
"ZeroSuppressed");
136 event.put(
std::move(cm_dsv),
"CommonMode");
149 std::stringstream
ss;
150 ss <<
"[sistrip::RawToDigiModule::" << __func__ <<
"]" 151 <<
" Updating cabling for first time..." << std::endl
152 <<
" Terse print out of FED cabling:" << std::endl;
154 LogTrace(
"SiStripRawToDigi") << ss.str();
159 std::stringstream sss;
160 sss <<
"[sistrip::RawToDigiModule::" << __func__ <<
"]" 161 <<
" Summary of FED cabling:" << std::endl;
165 LogTrace(
"SiStripRawToDigi") << sss.str();
void triggerFed(const FEDRawDataCollection &, SiStripEventSummary &, const uint32_t &event)
trigger info
T getParameter(std::string const &) const
EventNumber_t event() const
T getUntrackedParameter(std::string const &, T const &) const
RawToDigiModule(const edm::ParameterSet &)
void terse(std::stringstream &) const
edm::EDGetTokenT< FEDRawDataCollection > token_
void produce(edm::Event &, const edm::EventSetup &) override
void updateCabling(const edm::EventSetup &)
void printWarningSummary() const
~RawToDigiModule() override
void beginRun(const edm::Run &, const edm::EventSetup &) override
void summary(std::stringstream &ss, const TrackerTopology *trackerTopo) const
LEFT FOR COMPATIBILITY. SHOULD BE REPLACED BY PRINTSUMMARY.
void createDigis(const SiStripFedCabling &, const FEDRawDataCollection &, SiStripEventSummary &, RawDigis &scope_mode, RawDigis &virgin_raw, RawDigis &proc_raw, Digis &zero_suppr, DetIdCollection &, RawDigis &common_mode)
creates digis
bool doFullCorruptBufferChecks_
edm::EDCollection< DetId > DetIdCollection
RawToDigiUnpacker * rawToDigi_
void endStream() override
const SiStripFedCabling * cabling_
T const * product() const