11#ifndef TPGLIBS_AVXFRUGALPEDESTALSUBTRACTPROCESSOR_HPP_
12#define TPGLIBS_AVXFRUGALPEDESTALSUBTRACTPROCESSOR_HPP_
39 __m256i
process(
const __m256i& signal)
override;
46 void configure(
const nlohmann::json& config,
const int16_t* plane_numbers)
override;
AVX signal processor: Estimates the pedestal and subtracts.
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.
int16_t m_accum_limit
Count limit before committing to a pedestal shift.
__m256i m_accum
Vector of counts that a channel's signal was above or below m_pedestal.
AVX typed abstract signal processor.