From cd1f5ca494eaa6dad2a4dfabcc2e916dcd3cb7ae Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Sun, 6 Jun 2021 16:47:03 +1000 Subject: [PATCH] Filter: use CLASS_NO_COPY --- libraries/Filter/LowPassFilter.h | 4 ++++ libraries/Filter/LowPassFilter2p.h | 6 +++++- libraries/Filter/SlewLimiter.h | 2 ++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/libraries/Filter/LowPassFilter.h b/libraries/Filter/LowPassFilter.h index 9e8b9c02a7..497d0ddf97 100644 --- a/libraries/Filter/LowPassFilter.h +++ b/libraries/Filter/LowPassFilter.h @@ -56,6 +56,8 @@ public: T apply(const T &sample, float cutoff_freq, float dt); T apply(const T &sample); + CLASS_NO_COPY(DigitalLPF); + void compute_alpha(float sample_freq, float cutoff_freq); // get latest filtered value from filter (equal to the value returned by latest call to apply method) @@ -79,6 +81,8 @@ public: LowPassFilter(float cutoff_freq); LowPassFilter(float sample_freq, float cutoff_freq); + CLASS_NO_COPY(LowPassFilter); + // change parameters void set_cutoff_frequency(float cutoff_freq); void set_cutoff_frequency(float sample_freq, float cutoff_freq); diff --git a/libraries/Filter/LowPassFilter2p.h b/libraries/Filter/LowPassFilter2p.h index 5197f97579..88175d84a2 100644 --- a/libraries/Filter/LowPassFilter2p.h +++ b/libraries/Filter/LowPassFilter2p.h @@ -34,7 +34,9 @@ public: float b1; float b2; }; - + + CLASS_NO_COPY(DigitalBiquadFilter); + DigitalBiquadFilter(); T apply(const T &sample, const struct biquad_params ¶ms); @@ -63,6 +65,8 @@ public: void reset(void); void reset(const T &value); + CLASS_NO_COPY(LowPassFilter2p); + protected: struct DigitalBiquadFilter::biquad_params _params; diff --git a/libraries/Filter/SlewLimiter.h b/libraries/Filter/SlewLimiter.h index 1d4282d080..34be2501e5 100644 --- a/libraries/Filter/SlewLimiter.h +++ b/libraries/Filter/SlewLimiter.h @@ -17,6 +17,8 @@ class SlewLimiter { public: SlewLimiter(const float &slew_rate_max, const float &slew_rate_tau); + CLASS_NO_COPY(SlewLimiter); + /* apply filter to sample, returning multiplier between 0 and 1 to keep output within slew rate