185template <
typename T =
float>
189 :
mImpl(tau_seconds, initial) {}
212template <
typename T =
float>
216 :
mImpl(attack_tau, decay_tau, initial) {}
239template <
typename T =
float>
262template <
typename T =
float,
int K = 2>
289template <
typename T =
float,
int Stages = 2>
293 :
mImpl(tau_seconds, initial) {}
317template <
typename T =
float>
323 :
mImpl(b0, b1, b2, a1, a2) {}
359template <
typename T =
float>
363 :
mImpl(process_noise, measurement_noise, initial) {}
384template <
typename T =
float>
388 :
mImpl(min_cutoff, beta, d_cutoff) {}
421template <
typename T =
float, fl::size N = 8>
456template <
typename T =
float, fl::size N = 5>
489template <
typename T =
float, fl::size N = 8>
524template <
typename T =
float, fl::size N = 7>
558template <
typename T =
float, fl::size N = 5>
594template <
typename T =
float, fl::size N = 7>
622template <
typename T =
float, fl::size N = 5>
657template <
typename T =
float, fl::size N = 5>
688template <
typename T =
float, fl::size N = 5>
728template <
typename T =
float>
AlphaTrimmedMean(fl::size capacity, fl::size trim_count)
FASTLED_FORCE_INLINE T value() const
FASTLED_FORCE_INLINE void reset()
FASTLED_FORCE_INLINE T update(T input)
AlphaTrimmedMean(fl::size trim_count=1)
FASTLED_FORCE_INLINE void resize(fl::size new_capacity, fl::size trim_count)
FASTLED_FORCE_INLINE fl::size size() const
FASTLED_FORCE_INLINE fl::size capacity() const
detail::AlphaTrimmedMeanImpl< T, N > mImpl
FASTLED_FORCE_INLINE T update(fl::span< const T > values)
AttackDecayFilter(T attack_tau, T decay_tau, T initial=T(0))
FASTLED_FORCE_INLINE void reset(T initial=T(0))
detail::AttackDecayFilterImpl< T > mImpl
FASTLED_FORCE_INLINE void setDecayTau(T tau_seconds)
FASTLED_FORCE_INLINE T value() const
FASTLED_FORCE_INLINE T update(T input, T dt_seconds)
FASTLED_FORCE_INLINE void setAttackTau(T tau_seconds)
FASTLED_FORCE_INLINE T update(fl::span< const T > values)
FASTLED_FORCE_INLINE fl::size capacity() const
FASTLED_FORCE_INLINE T value() const
FASTLED_FORCE_INLINE T update(T input)
FASTLED_FORCE_INLINE bool full() const
FASTLED_FORCE_INLINE void reset()
FASTLED_FORCE_INLINE void resize(fl::size new_capacity)
FASTLED_FORCE_INLINE fl::size size() const
BilateralFilter(T sigma_range=T(1.0f))
BilateralFilter(fl::size capacity, T sigma_range)
detail::BilateralFilterImpl< T, N > mImpl
FASTLED_FORCE_INLINE void reset()
BiquadFilter(T b0, T b1, T b2, T a1, T a2)
detail::BiquadFilterImpl< T > Impl
BiquadFilter(const Impl &impl)
static BiquadFilter bandpass(float center_hz, float sample_rate, float q=1.0f)
static BiquadFilter notch(float center_hz, float sample_rate, float q=1.0f)
FASTLED_FORCE_INLINE T value() const
FASTLED_FORCE_INLINE T update(T input)
static BiquadFilter butterworth(float cutoff_hz, float sample_rate)
static BiquadFilter highpass(float cutoff_hz, float sample_rate)
FASTLED_FORCE_INLINE void setTau(T tau_seconds)
CascadedEMA(T tau_seconds, T initial=T(0))
detail::CascadedEMAImpl< T, Stages > mImpl
FASTLED_FORCE_INLINE T value() const
FASTLED_FORCE_INLINE void reset(T initial=T(0))
FASTLED_FORCE_INLINE T update(T input, T dt_seconds)
FASTLED_FORCE_INLINE T value() const
FASTLED_FORCE_INLINE T update(T input)
FASTLED_FORCE_INLINE void reset()
detail::DCBlockerImpl< T > mImpl
FASTLED_FORCE_INLINE void setR(T r)
FASTLED_FORCE_INLINE void setTau(T tau_seconds)
ExponentialSmoother(T tau_seconds, T initial=T(0))
detail::ExponentialSmootherImpl< T > mImpl
FASTLED_FORCE_INLINE T update(T input, T dt_seconds)
FASTLED_FORCE_INLINE void reset(T initial=T(0))
FASTLED_FORCE_INLINE T value() const
FASTLED_FORCE_INLINE void resize(fl::size new_capacity)
FASTLED_FORCE_INLINE fl::size size() const
FASTLED_FORCE_INLINE T value() const
FASTLED_FORCE_INLINE T update(fl::span< const T > values)
GaussianFilter() FL_NOEXCEPT=default
detail::GaussianFilterImpl< T, N > mImpl
FASTLED_FORCE_INLINE fl::size capacity() const
FASTLED_FORCE_INLINE T update(T input)
FASTLED_FORCE_INLINE bool full() const
FASTLED_FORCE_INLINE void reset()
FASTLED_FORCE_INLINE T update(T input)
FASTLED_FORCE_INLINE T update(fl::span< const T > values)
detail::HampelFilterImpl< T, N > mImpl
FASTLED_FORCE_INLINE T value() const
FASTLED_FORCE_INLINE fl::size capacity() const
FASTLED_FORCE_INLINE void resize(fl::size new_capacity)
FASTLED_FORCE_INLINE fl::size size() const
HampelFilter(fl::size capacity, T threshold)
HampelFilter(T threshold=T(3.0f))
FASTLED_FORCE_INLINE void reset()
FASTLED_FORCE_INLINE void reset(T initial=T(0))
KalmanFilter(T process_noise, T measurement_noise, T initial=T(0))
FASTLED_FORCE_INLINE T update(T measurement)
detail::KalmanFilterImpl< T > mImpl
FASTLED_FORCE_INLINE T value() const
LeakyIntegrator() FL_NOEXCEPT=default
FASTLED_FORCE_INLINE void reset(T initial=T(0))
detail::LeakyIntegratorImpl< T, K > mImpl
FASTLED_FORCE_INLINE T value() const
FASTLED_FORCE_INLINE T update(T input)
detail::MovingAverageImpl< T, N > mImpl
FASTLED_FORCE_INLINE fl::size size() const
FASTLED_FORCE_INLINE void reset()
FASTLED_FORCE_INLINE T update(T input)
FASTLED_FORCE_INLINE fl::size capacity() const
MovingAverage() FL_NOEXCEPT=default
FASTLED_FORCE_INLINE void resize(fl::size new_capacity)
FASTLED_FORCE_INLINE bool full() const
FASTLED_FORCE_INLINE T value() const
detail::OneEuroFilterImpl< T > mImpl
FASTLED_FORCE_INLINE T value() const
FASTLED_FORCE_INLINE void reset(T initial=T(0))
OneEuroFilter(T min_cutoff, T beta, T d_cutoff=T(1.0f))
FASTLED_FORCE_INLINE T update(T input, T dt)
FASTLED_FORCE_INLINE fl::size size() const
FASTLED_FORCE_INLINE T update(fl::span< const T > values)
FASTLED_FORCE_INLINE T update(T input)
FASTLED_FORCE_INLINE fl::size capacity() const
FASTLED_FORCE_INLINE void resize(fl::size new_capacity)
SavitzkyGolayFilter() FL_NOEXCEPT=default
FASTLED_FORCE_INLINE bool full() const
detail::SavitzkyGolayFilterImpl< T, N > mImpl
FASTLED_FORCE_INLINE void reset()
FASTLED_FORCE_INLINE T value() const
FASTLED_FORCE_INLINE fl::size size() const
FASTLED_FORCE_INLINE void setFloor(T floor)
FASTLED_FORCE_INLINE T value() const
detail::SpectralVarianceImpl< T > mImpl
FASTLED_FORCE_INLINE T update(fl::span< const T > bins)
FASTLED_FORCE_INLINE void reset()
SpectralVariance(T alpha=T(0.2f), T floor=T(1e-4f))
FASTLED_FORCE_INLINE void setAlpha(T alpha)
FASTLED_FORCE_INLINE fl::size capacity() const
detail::TriangularFilterImpl< T, N > mImpl
FASTLED_FORCE_INLINE T update(fl::span< const T > values)
FASTLED_FORCE_INLINE T value() const
FASTLED_FORCE_INLINE void resize(fl::size new_capacity)
TriangularFilter() FL_NOEXCEPT=default
FASTLED_FORCE_INLINE T update(T input)
FASTLED_FORCE_INLINE fl::size size() const
FASTLED_FORCE_INLINE bool full() const
FASTLED_FORCE_INLINE void reset()
WeightedMovingAverage() FL_NOEXCEPT=default
FASTLED_FORCE_INLINE T update(T input)
FASTLED_FORCE_INLINE void reset()
FASTLED_FORCE_INLINE fl::size size() const
detail::WeightedMovingAverageImpl< T, N > mImpl
FASTLED_FORCE_INLINE void resize(fl::size new_capacity)
FASTLED_FORCE_INLINE T value() const
FASTLED_FORCE_INLINE T update(fl::span< const T > values)
FASTLED_FORCE_INLINE fl::size capacity() const
FASTLED_FORCE_INLINE bool full() const
static BiquadFilterImpl highpass(float cutoff_hz, float sample_rate)
static BiquadFilterImpl butterworth(float cutoff_hz, float sample_rate)
static BiquadFilterImpl bandpass(float center_hz, float sample_rate, float q=1.0f)
static BiquadFilterImpl notch(float center_hz, float sample_rate, float q=1.0f)
Multi-channel EMA with per-bin relative deviation measurement.
constexpr enable_if< is_fixed_point< T >::value, T >::type floor(T x) FL_NOEXCEPT
Base definition for an LED controller.
#define FASTLED_FORCE_INLINE