summaryrefslogtreecommitdiff
path: root/gr-digital/lib/lms_dd_equalizer_cc_impl.h
diff options
context:
space:
mode:
Diffstat (limited to 'gr-digital/lib/lms_dd_equalizer_cc_impl.h')
-rw-r--r--gr-digital/lib/lms_dd_equalizer_cc_impl.h17
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;