From d857caa7f1a703731c69fdcdd1fdb6c7d0a99a7c Mon Sep 17 00:00:00 2001
From: Tom Rondeau <trondeau@vt.edu>
Date: Sun, 9 Sep 2012 14:34:08 -0400
Subject: digital: Fixes LMS and CMA equalizers.

filter: updated fir_filter_* by adding a method that allows the update of a single tap in the filter in a way that propagates to all of the aligned tap vectors. Mostly to support the adaptive equalizers.
---
 gr-digital/include/digital/cma_equalizer_cc.h    | 2 ++
 gr-digital/include/digital/lms_dd_equalizer_cc.h | 2 ++
 2 files changed, 4 insertions(+)

(limited to 'gr-digital/include/digital')

diff --git a/gr-digital/include/digital/cma_equalizer_cc.h b/gr-digital/include/digital/cma_equalizer_cc.h
index f2ec636577..60c58db1e1 100644
--- a/gr-digital/include/digital/cma_equalizer_cc.h
+++ b/gr-digital/include/digital/cma_equalizer_cc.h
@@ -61,6 +61,8 @@ namespace gr {
        */
       static sptr make(int num_taps, float modulus, float mu, int sps);
 
+      virtual void set_taps(const std::vector<gr_complex> &taps) = 0;
+      virtual std::vector<gr_complex> taps() const = 0;
       virtual float gain() const = 0;
       virtual void set_gain(float mu) = 0;
       virtual float modulus() const = 0;
diff --git a/gr-digital/include/digital/lms_dd_equalizer_cc.h b/gr-digital/include/digital/lms_dd_equalizer_cc.h
index ecac9ac476..8084396759 100644
--- a/gr-digital/include/digital/lms_dd_equalizer_cc.h
+++ b/gr-digital/include/digital/lms_dd_equalizer_cc.h
@@ -89,6 +89,8 @@ namespace gr {
 		       float mu, int sps,
 		       constellation_sptr cnst);
 
+      virtual void set_taps(const std::vector<gr_complex> &taps) = 0;
+      virtual std::vector<gr_complex> taps() const = 0;
       virtual float gain() const = 0;
       virtual void set_gain(float mu) = 0;
     };
-- 
cgit v1.2.3