DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
AVXFixedPedestalSubtractProcessor.cpp
Go to the documentation of this file.
1
8
10
11namespace tpglibs {
12
13REGISTER_AVXPROCESSOR_CREATOR("AVXFixedPedestalSubtractProcessor", AVXFixedPedestalSubtractProcessor)
14
15void
16AVXFixedPedestalSubtractProcessor::configure(const nlohmann::json& config, const int16_t* plane_numbers)
17{
19 m_start_period = config["start_period"];
20}
21
22__m256i
24{
28 }
29 return AVXProcessor::process(_mm256_sub_epi16(signal, m_pedestal));
30}
31
32} // namespace tpglibs
#define REGISTER_AVXPROCESSOR_CREATOR(processor_name, processor_class)
Factory registration macro.
AVX signal processor: Fixes the estimated pedestal after a configured amount of time.
__m256i process(const __m256i &signal) override
Estimates the pedestal for some time and subtracts.
uint16_t m_start_period
Configured number of samples to use before fixing.
void configure(const nlohmann::json &config, const int16_t *plane_numbers) override
Configure the number of startup samples to use before fixing.
void configure(const nlohmann::json &config, const int16_t *plane_numbers) override
Configure the accumulation limit according to plane number.
__m256i process(const __m256i &signal) override
Estimate the pedestal using the given signal and subtract.
__m256i m_pedestal
Vector of estimated pedestals for each channel.
virtual __m256i process(const __m256i &signal) override
Simple signal pass-through on __m256i type.