diff options
Diffstat (limited to 'gr-digital/lib/lms_dd_equalizer_cc_impl.h')
-rw-r--r-- | gr-digital/lib/lms_dd_equalizer_cc_impl.h | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/gr-digital/lib/lms_dd_equalizer_cc_impl.h b/gr-digital/lib/lms_dd_equalizer_cc_impl.h index aa84a71b4a..ca6ba4d84c 100644 --- a/gr-digital/lib/lms_dd_equalizer_cc_impl.h +++ b/gr-digital/lib/lms_dd_equalizer_cc_impl.h @@ -42,18 +42,8 @@ namespace gr { constellation_sptr d_cnst; protected: - gr_complex error(const gr_complex &out) - { - gr_complex decision, error; - d_cnst->map_to_points(d_cnst->decision_maker(&out), &decision); - error = decision - out; - return error; - } - - void update_tap(gr_complex &tap, const gr_complex &in) - { - tap += d_mu*conj(in)*d_error; - } + gr_complex error(const gr_complex &out); + void update_tap(gr_complex &tap, const gr_complex &in); public: lms_dd_equalizer_cc_impl(int num_taps, @@ -61,6 +51,9 @@ namespace gr { constellation_sptr cnst); ~lms_dd_equalizer_cc_impl(); + void set_taps(const std::vector<gr_complex> &taps); + std::vector<gr_complex> taps() const; + float gain() const { return d_mu; |