DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
tpglibs
include
tpglibs
AVXFrugalPedestalSubtractProcessor.hpp
Go to the documentation of this file.
1
8
9
#include "
tpglibs/AVXFactory.hpp
"
10
#include <memory>
11
12
#ifndef TPGLIBS_AVXFRUGALPEDESTALSUBTRACTPROCESSOR_HPP_
13
#define TPGLIBS_AVXFRUGALPEDESTALSUBTRACTPROCESSOR_HPP_
14
15
namespace
tpglibs
{
16
23
class
AVXFrugalPedestalSubtractProcessor
:
public
AVXProcessor
24
{
25
protected
:
27
__m256i
m_pedestal
= _mm256_set1_epi16(0x4000);
// Set initial start to 14-bit max. Prevents garbage TPs at start.
28
30
__m256i
m_accum
= _mm256_setzero_si256();
31
33
int16_t
m_accum_limit
{ 10 };
34
35
public
:
36
AVXFrugalPedestalSubtractProcessor
() =
default
;
37
~AVXFrugalPedestalSubtractProcessor
() noexcept = default;
38
44
__m256i
process
(const __m256i& signal) override;
45
51
void
configure
(const nlohmann::json& config, const int16_t* plane_numbers) override;
52
};
53
54
}
// namespace tpglibs
55
56
#endif
// TPGLIBS_AVXFRUGALPEDESTALSUBTRACTPROCESSOR_HPP_
AVXFactory.hpp
tpglibs::AVXFrugalPedestalSubtractProcessor::configure
void configure(const nlohmann::json &config, const int16_t *plane_numbers) override
Configure the accumulation limit according to plane number.
Definition
AVXFrugalPedestalSubtractProcessor.cpp:16
tpglibs::AVXFrugalPedestalSubtractProcessor::~AVXFrugalPedestalSubtractProcessor
~AVXFrugalPedestalSubtractProcessor() noexcept=default
tpglibs::AVXFrugalPedestalSubtractProcessor::process
__m256i process(const __m256i &signal) override
Estimate the pedestal using the given signal and subtract.
Definition
AVXFrugalPedestalSubtractProcessor.cpp:29
tpglibs::AVXFrugalPedestalSubtractProcessor::m_pedestal
__m256i m_pedestal
Vector of estimated pedestals for each channel.
Definition
AVXFrugalPedestalSubtractProcessor.hpp:27
tpglibs::AVXFrugalPedestalSubtractProcessor::AVXFrugalPedestalSubtractProcessor
AVXFrugalPedestalSubtractProcessor()=default
tpglibs::AVXFrugalPedestalSubtractProcessor::m_accum_limit
int16_t m_accum_limit
Count limit before committing to a pedestal shift.
Definition
AVXFrugalPedestalSubtractProcessor.hpp:33
tpglibs::AVXFrugalPedestalSubtractProcessor::m_accum
__m256i m_accum
Vector of counts that a channel's signal was above or below m_pedestal.
Definition
AVXFrugalPedestalSubtractProcessor.hpp:30
tpglibs::AVXProcessor
AVX typed abstract signal processor.
Definition
AVXProcessor.hpp:24
tpglibs
Definition
AbstractFactory.hpp:20
Generated on
for DUNE-DAQ by
1.18.0