From f7185e3468e7d24b8f726dd717157cf2fed4b19a Mon Sep 17 00:00:00 2001
From: Tom Rondeau <trondeau@vt.edu>
Date: Wed, 20 Jul 2011 21:35:31 -0400
Subject: digital: removed LMS and CMA equalizers from core that are supplanted
 in gr-digital.

---
 gnuradio-core/src/lib/filter/Makefile.am           |   5 +-
 gnuradio-core/src/lib/filter/filter.i              |   2 -
 .../src/lib/filter/gr_cma_equalizer_cc.cc          |  42 ------
 gnuradio-core/src/lib/filter/gr_cma_equalizer_cc.h |  62 ---------
 gnuradio-core/src/lib/filter/gr_cma_equalizer_cc.i |  37 ------
 gnuradio-core/src/lib/general/Makefile.am          |   6 -
 gnuradio-core/src/lib/general/general.i            |   4 -
 gnuradio-core/src/lib/general/gr_lms_dfe_cc.cc     | 148 ---------------------
 gnuradio-core/src/lib/general/gr_lms_dfe_cc.h      |  64 ---------
 gnuradio-core/src/lib/general/gr_lms_dfe_cc.i      |  37 ------
 gnuradio-core/src/lib/general/gr_lms_dfe_ff.cc     | 122 -----------------
 gnuradio-core/src/lib/general/gr_lms_dfe_ff.h      |  62 ---------
 gnuradio-core/src/lib/general/gr_lms_dfe_ff.i      |  34 -----
 13 files changed, 1 insertion(+), 624 deletions(-)
 delete mode 100644 gnuradio-core/src/lib/filter/gr_cma_equalizer_cc.cc
 delete mode 100644 gnuradio-core/src/lib/filter/gr_cma_equalizer_cc.h
 delete mode 100644 gnuradio-core/src/lib/filter/gr_cma_equalizer_cc.i
 delete mode 100644 gnuradio-core/src/lib/general/gr_lms_dfe_cc.cc
 delete mode 100644 gnuradio-core/src/lib/general/gr_lms_dfe_cc.h
 delete mode 100644 gnuradio-core/src/lib/general/gr_lms_dfe_cc.i
 delete mode 100644 gnuradio-core/src/lib/general/gr_lms_dfe_ff.cc
 delete mode 100644 gnuradio-core/src/lib/general/gr_lms_dfe_ff.h
 delete mode 100644 gnuradio-core/src/lib/general/gr_lms_dfe_ff.i

(limited to 'gnuradio-core/src/lib')

diff --git a/gnuradio-core/src/lib/filter/Makefile.am b/gnuradio-core/src/lib/filter/Makefile.am
index d8f634c382..48ec55a622 100644
--- a/gnuradio-core/src/lib/filter/Makefile.am
+++ b/gnuradio-core/src/lib/filter/Makefile.am
@@ -1,5 +1,5 @@
 #
-# Copyright 2001,2002,2004,2005,2006,2007,2008,2009,2010,2011 Free Software Foundation, Inc.
+# Copyright 2001,2002,2004-2011 Free Software Foundation, Inc.
 # 
 # This file is part of GNU Radio
 # 
@@ -190,7 +190,6 @@ libfilter_la_common_SOURCES = 		\
 	$(GENERATED_CC)			\
 	gr_adaptive_fir_ccc.cc		\
 	gr_adaptive_fir_ccf.cc		\
-	gr_cma_equalizer_cc.cc		\
 	gri_fft_filter_fff_generic.cc	\
 	gri_fft_filter_ccc_generic.cc	\
 	gr_fft_filter_ccc.cc		\
@@ -276,7 +275,6 @@ grinclude_HEADERS = 			\
 	gr_adaptive_fir_ccc.h		\
 	gr_adaptive_fir_ccf.h		\
 	gr_altivec.h			\
-	gr_cma_equalizer_cc.h		\
 	gr_cpu.h			\
 	gri_fft_filter_fff_generic.h	\
 	gri_fft_filter_ccc_generic.h	\
@@ -361,7 +359,6 @@ swiginclude_HEADERS =			\
 	filter_generated.i		\
 	gr_adaptive_fir_ccc.i		\
 	gr_adaptive_fir_ccf.i		\
-	gr_cma_equalizer_cc.i		\
 	gr_fft_filter_ccc.i		\
 	gr_fft_filter_fff.i		\
 	gr_filter_delay_fc.i		\
diff --git a/gnuradio-core/src/lib/filter/filter.i b/gnuradio-core/src/lib/filter/filter.i
index 58bb4f0d5d..2af7fcc5c6 100644
--- a/gnuradio-core/src/lib/filter/filter.i
+++ b/gnuradio-core/src/lib/filter/filter.i
@@ -31,7 +31,6 @@
 #include <gr_fractional_interpolator_ff.h>
 #include <gr_fractional_interpolator_cc.h>
 #include <gr_goertzel_fc.h>
-#include <gr_cma_equalizer_cc.h>
 #include <gr_pfb_channelizer_ccf.h>
 #include <gr_pfb_synthesis_filterbank_ccf.h>
 #include <gr_pfb_decimator_ccf.h>
@@ -53,7 +52,6 @@
 %include "gr_fractional_interpolator_ff.i"
 %include "gr_fractional_interpolator_cc.i"
 %include "gr_goertzel_fc.i"
-%include "gr_cma_equalizer_cc.i"
 %include "gr_pfb_channelizer_ccf.i"
 %include "gr_pfb_synthesis_filterbank_ccf.i"
 %include "gr_pfb_decimator_ccf.i"
diff --git a/gnuradio-core/src/lib/filter/gr_cma_equalizer_cc.cc b/gnuradio-core/src/lib/filter/gr_cma_equalizer_cc.cc
deleted file mode 100644
index f80bfd5184..0000000000
--- a/gnuradio-core/src/lib/filter/gr_cma_equalizer_cc.cc
+++ /dev/null
@@ -1,42 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2006,2010 Free Software Foundation, Inc.
- * 
- * This file is part of GNU Radio
- * 
- * GNU Radio is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3, or (at your option)
- * any later version.
- * 
- * GNU Radio is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License
- * along with GNU Radio; see the file COPYING.  If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <gr_cma_equalizer_cc.h>
-
-gr_cma_equalizer_cc_sptr
-gr_make_cma_equalizer_cc(int num_taps, float modulus, float mu)
-{
-  return gnuradio::get_initial_sptr(new gr_cma_equalizer_cc(num_taps, modulus, mu));
-}
-
-gr_cma_equalizer_cc::gr_cma_equalizer_cc(int num_taps, float modulus, float mu)
-  : gr_adaptive_fir_ccf("cma_equalizer_cc", 1, std::vector<float>(num_taps)),
-    d_modulus(modulus), d_mu(mu)
-{
-  if (num_taps > 0)
-    d_taps[0] = 1.0;
-}
-
diff --git a/gnuradio-core/src/lib/filter/gr_cma_equalizer_cc.h b/gnuradio-core/src/lib/filter/gr_cma_equalizer_cc.h
deleted file mode 100644
index c78047c16d..0000000000
--- a/gnuradio-core/src/lib/filter/gr_cma_equalizer_cc.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2006 Free Software Foundation, Inc.
- * 
- * This file is part of GNU Radio
- * 
- * GNU Radio is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3, or (at your option)
- * any later version.
- * 
- * GNU Radio is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License
- * along with GNU Radio; see the file COPYING.  If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef INCLUDED_GR_CMA_EQUALIZER_CC_H
-#define	INCLUDED_GR_CMA_EQUALIZER_CC_H
-
-#include <gr_adaptive_fir_ccf.h>
-
-class gr_cma_equalizer_cc;
-typedef boost::shared_ptr<gr_cma_equalizer_cc> gr_cma_equalizer_cc_sptr;
-
-gr_cma_equalizer_cc_sptr 
-gr_make_cma_equalizer_cc(int num_taps, float modulus, float mu);
-
-/*!
- * \brief Implements constant modulus adaptive filter on complex stream
- * \ingroup eq_blk
- */
-class gr_cma_equalizer_cc : public gr_adaptive_fir_ccf
-{
-private:
-  float d_modulus;
-  float d_mu;
-  
-  friend gr_cma_equalizer_cc_sptr gr_make_cma_equalizer_cc(int num_taps, float modulus, float mu);
-  gr_cma_equalizer_cc(int num_taps, float modulus, float mu);
-
-protected:
-
-  virtual float error(const gr_complex &out) 
-  { 
-    return (d_modulus - norm(out)); 
-  }
-
-  virtual void update_tap(float &tap, const gr_complex &in) 
-  {
-    tap += d_mu*d_error*abs(in);
-  }
-  
-public:
-};
-
-#endif
diff --git a/gnuradio-core/src/lib/filter/gr_cma_equalizer_cc.i b/gnuradio-core/src/lib/filter/gr_cma_equalizer_cc.i
deleted file mode 100644
index 30e2fb8bd9..0000000000
--- a/gnuradio-core/src/lib/filter/gr_cma_equalizer_cc.i
+++ /dev/null
@@ -1,37 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2006,2009 Free Software Foundation, Inc.
- * 
- * This file is part of GNU Radio
- * 
- * GNU Radio is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3, or (at your option)
- * any later version.
- * 
- * GNU Radio is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License
- * along with GNU Radio; see the file COPYING.  If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street,
- * Boston, MA 02110-1301, USA.
- */
-
-GR_SWIG_BLOCK_MAGIC(gr,cma_equalizer_cc)
-
-// retrieve info on the base class, without generating wrappers since
-// the base class has a pure virual method.
-%import "gr_adaptive_fir_ccf.i"
-
-gr_cma_equalizer_cc_sptr gr_make_cma_equalizer_cc(int num_taps, float modulus, float mu);
-
-class gr_cma_equalizer_cc : public gr_adaptive_fir_ccf
-{
-private:
-  gr_cma_equalizer_cc(int num_taps, float modulus, float mu);
-
-public:
-};
diff --git a/gnuradio-core/src/lib/general/Makefile.am b/gnuradio-core/src/lib/general/Makefile.am
index f0679388d4..f3244d4dbb 100644
--- a/gnuradio-core/src/lib/general/Makefile.am
+++ b/gnuradio-core/src/lib/general/Makefile.am
@@ -92,8 +92,6 @@ libgeneral_la_SOURCES = 		\
 	gr_keep_one_in_n.cc		\
 	gr_kludge_copy.cc		\
 	gr_lfsr_32k_source_s.cc		\
-	gr_lms_dfe_cc.cc		\
-	gr_lms_dfe_ff.cc		\
 	gr_map_bb.cc			\
 	gr_misc.cc			\
 	gr_mpsk_receiver_cc.cc		\
@@ -247,8 +245,6 @@ grinclude_HEADERS = 			\
 	gr_keep_one_in_n.h		\
 	gr_kludge_copy.h		\
 	gr_lfsr_32k_source_s.h		\
-	gr_lms_dfe_cc.h			\
-	gr_lms_dfe_ff.h			\
 	gr_log2_const.h			\
 	gr_map_bb.h			\
 	gr_math.h			\
@@ -412,8 +408,6 @@ swiginclude_HEADERS =			\
 	gr_keep_one_in_n.i		\
 	gr_kludge_copy.i		\
 	gr_lfsr_32k_source_s.i		\
-	gr_lms_dfe_cc.i			\
-	gr_lms_dfe_ff.i			\
 	gr_map_bb.i			\
 	gr_mpsk_receiver_cc.i		\
 	gr_nlog10_ff.i			\
diff --git a/gnuradio-core/src/lib/general/general.i b/gnuradio-core/src/lib/general/general.i
index 1c3ebeae4b..37e304481c 100644
--- a/gnuradio-core/src/lib/general/general.i
+++ b/gnuradio-core/src/lib/general/general.i
@@ -80,8 +80,6 @@
 #include <gr_crc32.h>
 #include <gr_threshold_ff.h>
 #include <gr_packet_sink.h>
-#include <gr_lms_dfe_cc.h>
-#include <gr_lms_dfe_ff.h>
 #include <gr_dpll_bb.h>
 #include <gr_fmdet_cf.h>
 #include <gr_pll_freqdet_cf.h>
@@ -202,8 +200,6 @@
 %include "gr_crc32.i"
 %include "gr_threshold_ff.i"
 %include "gr_packet_sink.i"
-%include "gr_lms_dfe_cc.i"
-%include "gr_lms_dfe_ff.i"
 %include "gr_dpll_bb.i"
 %include "gr_fmdet_cf.i"
 %include "gr_pll_freqdet_cf.i"
diff --git a/gnuradio-core/src/lib/general/gr_lms_dfe_cc.cc b/gnuradio-core/src/lib/general/gr_lms_dfe_cc.cc
deleted file mode 100644
index 8659386d50..0000000000
--- a/gnuradio-core/src/lib/general/gr_lms_dfe_cc.cc
+++ /dev/null
@@ -1,148 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2005,2010 Free Software Foundation, Inc.
- * 
- * This file is part of GNU Radio
- * 
- * GNU Radio is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3, or (at your option)
- * any later version.
- * 
- * GNU Radio is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License
- * along with GNU Radio; see the file COPYING.  If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <gr_lms_dfe_cc.h>
-#include <gr_io_signature.h>
-#include <gr_misc.h>
-#include <iostream>
-
-gr_complex
-gr_lms_dfe_cc::slicer_0deg (gr_complex sample)
-{
-  gr_complex out;
-  if(fabs(real(sample))>fabs(imag(sample))) {
-    if(real(sample) > 0)
-      out = gr_complex(1,0);
-    else
-      out = gr_complex(-1,0);
-  }
-  else {
-    if(imag(sample) > 0)
-      out = gr_complex(0,1);
-    else
-      out = gr_complex(0,-1);
-  }
-  return out;
-}
-
-gr_complex
-gr_lms_dfe_cc::slicer_45deg (gr_complex sample)
-{
-  gr_complex out;
-  if(real(sample) > 0)
-    out = gr_complex(1,0);
-  else
-    out = gr_complex(-1,0);
-  if(imag(sample) > 0)
-    out += gr_complex(0,1);
-  else
-    out += gr_complex(0,-1);
-  return out;
-}
-
-gr_lms_dfe_cc_sptr
-gr_make_lms_dfe_cc (float lambda_ff, float lambda_fb, 
-		    unsigned int num_fftaps, unsigned int num_fbtaps)
-{
-  return gnuradio::get_initial_sptr(new gr_lms_dfe_cc (lambda_ff, lambda_fb,
-						num_fftaps, num_fbtaps));
-}
-
-gr_lms_dfe_cc::gr_lms_dfe_cc (float lambda_ff, float lambda_fb , 
-			      unsigned int num_fftaps, unsigned int num_fbtaps)
-  : gr_sync_block ("lms_dfe_cc",
-		   gr_make_io_signature (1, 1, sizeof (gr_complex)),
-		   gr_make_io_signature (1, 1, sizeof (gr_complex))),
-    d_lambda_ff (lambda_ff), d_lambda_fb (lambda_fb), 
-    d_ff_delayline(gr_rounduppow2(num_fftaps)),
-    d_fb_delayline(gr_rounduppow2(num_fbtaps)),
-    d_ff_taps(num_fftaps),d_fb_taps(num_fbtaps),
-    d_ff_index(0), d_fb_index(0)
-{
-  gr_zero_vector(d_ff_taps);
-  d_ff_taps [d_ff_taps.size()/2] = 1;
-
-  gr_zero_vector(d_fb_taps);
-  gr_zero_vector(d_ff_delayline);
-  gr_zero_vector(d_fb_delayline);
-}
-
-int
-gr_lms_dfe_cc::work (int noutput_items,
-		   gr_vector_const_void_star &input_items,
-		   gr_vector_void_star &output_items)
-{
-  const gr_complex *iptr = (const gr_complex *) input_items[0];
-  gr_complex *optr = (gr_complex *) output_items[0];
-  
-  gr_complex acc, decision, error;
-  unsigned int i;
-
-  unsigned int ff_mask = d_ff_delayline.size() - 1;	// size is power of 2
-  unsigned int fb_mask = d_fb_delayline.size() - 1;
-
-  int	size = noutput_items;
-  while (size-- > 0){
-    acc = 0; 
-    d_ff_delayline[d_ff_index] = *iptr++;
-
-    // Compute output
-    for (i=0; i < d_ff_taps.size(); i++) 
-      acc += conj(d_ff_delayline[(i+d_ff_index) & ff_mask]) * d_ff_taps[i];
-    
-    for (i=0; i < d_fb_taps.size(); i++)
-      acc -= conj(d_fb_delayline[(i+d_fb_index) & fb_mask]) * d_fb_taps[i];
-
-    decision = slicer_45deg(acc);
-    error = decision - acc;
-    
-    //  Update taps
-    for (i=0; i < d_ff_taps.size(); i++)
-      d_ff_taps[i] += d_lambda_ff * conj(error) * d_ff_delayline[(i+d_ff_index) & ff_mask];
-    
-    for (i=0; i < d_fb_taps.size(); i++)
-      d_fb_taps[i] -= d_lambda_fb * conj(error) * d_fb_delayline[(i+d_fb_index) & fb_mask];
-    
-    d_fb_index = (d_fb_index - 1) & fb_mask;	// Decrement index
-    d_ff_index = (d_ff_index - 1) & ff_mask;	// Decrement index
-
-    d_fb_delayline[d_fb_index] = decision;	// Save decision in feedback
-
-    *optr++ = acc;   // Output decision
-  }
-
-  if (0){
-    std::cout << "FF Taps\t";
-    for(i=0;i<d_ff_taps.size();i++)
-      std::cout << d_ff_taps[i] << "\t";
-    std::cout << std::endl << "FB Taps\t";
-    for(i=0;i<d_fb_taps.size();i++)
-      std::cout << d_fb_taps[i] << "\t";
-    std::cout << std::endl;
-  }
-
-  return noutput_items;
-}
diff --git a/gnuradio-core/src/lib/general/gr_lms_dfe_cc.h b/gnuradio-core/src/lib/general/gr_lms_dfe_cc.h
deleted file mode 100644
index 7b3a2c84eb..0000000000
--- a/gnuradio-core/src/lib/general/gr_lms_dfe_cc.h
+++ /dev/null
@@ -1,64 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2005 Free Software Foundation, Inc.
- * 
- * This file is part of GNU Radio
- * 
- * GNU Radio is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3, or (at your option)
- * any later version.
- * 
- * GNU Radio is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License
- * along with GNU Radio; see the file COPYING.  If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef INCLUDED_GR_LMS_DFE_CC_H
-#define INCLUDED_GR_LMS_DFE_CC_H
-
-#include <gr_sync_block.h>
-
-class gr_lms_dfe_cc;
-typedef boost::shared_ptr<gr_lms_dfe_cc> gr_lms_dfe_cc_sptr;
-
-gr_lms_dfe_cc_sptr gr_make_lms_dfe_cc (float lambda_ff, float lambda_fb,
-				       unsigned int num_fftaps, unsigned int num_fbtaps);
-
-/*!
- * \brief Least-Mean-Square Decision Feedback Equalizer (complex in/out)
- * \ingroup eq_blk
- */
-class gr_lms_dfe_cc : public gr_sync_block
-{
-  friend gr_lms_dfe_cc_sptr gr_make_lms_dfe_cc (float lambda_ff, float lambda_fb,
-						unsigned int num_fftaps, unsigned int num_fbtaps);
-  
-  float	d_lambda_ff;
-  float	d_lambda_fb;
-  std::vector<gr_complex>  d_ff_delayline;
-  std::vector<gr_complex>  d_fb_delayline;
-  std::vector<gr_complex>  d_ff_taps;
-  std::vector<gr_complex>  d_fb_taps;
-  unsigned int d_ff_index;
-  unsigned int d_fb_index;
-
-  gr_lms_dfe_cc (float lambda_ff, float lambda_fb, 
-		 unsigned int num_fftaps, unsigned int num_fbtaps);
-  gr_complex slicer_0deg(gr_complex baud);
-  gr_complex slicer_45deg(gr_complex baud);
-
-  public:
-  
-  int work (int noutput_items,
-	    gr_vector_const_void_star &input_items,
-	    gr_vector_void_star &output_items);
-};
-
-#endif
diff --git a/gnuradio-core/src/lib/general/gr_lms_dfe_cc.i b/gnuradio-core/src/lib/general/gr_lms_dfe_cc.i
deleted file mode 100644
index 9a9f22b6ea..0000000000
--- a/gnuradio-core/src/lib/general/gr_lms_dfe_cc.i
+++ /dev/null
@@ -1,37 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2005 Free Software Foundation, Inc.
- * 
- * This file is part of GNU Radio
- * 
- * GNU Radio is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3, or (at your option)
- * any later version.
- * 
- * GNU Radio is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License
- * along with GNU Radio; see the file COPYING.  If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street,
- * Boston, MA 02110-1301, USA.
- */
-
-
-GR_SWIG_BLOCK_MAGIC(gr,lms_dfe_cc)
-
-gr_lms_dfe_cc_sptr gr_make_lms_dfe_cc (float lambda_ff, float lambda_fb, 
-				       unsigned int num_fftaps, unsigned int num_fbtaps);
-
-class gr_lms_dfe_cc : public gr_sync_block
-{
- private:
-  gr_lms_dfe_cc (float lambda_ff, float lambda_fb, 
-		 unsigned int num_fftaps, unsigned int num_fbtaps);
-  gr_complex slicer_0deg(gr_complex baud);
-  gr_complex slicer_45deg(gr_complex baud);
-  gr_complex conjg(gr_complex val);
-};
diff --git a/gnuradio-core/src/lib/general/gr_lms_dfe_ff.cc b/gnuradio-core/src/lib/general/gr_lms_dfe_ff.cc
deleted file mode 100644
index 8a5e22c2fe..0000000000
--- a/gnuradio-core/src/lib/general/gr_lms_dfe_ff.cc
+++ /dev/null
@@ -1,122 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2005,2010 Free Software Foundation, Inc.
- * 
- * This file is part of GNU Radio
- * 
- * GNU Radio is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3, or (at your option)
- * any later version.
- * 
- * GNU Radio is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License
- * along with GNU Radio; see the file COPYING.  If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <gr_lms_dfe_ff.h>
-#include <gr_io_signature.h>
-#include <gr_misc.h>
-#include <iostream>
-
-float
-slice(float val)
-{
-  if (val>0)
-    return 1;
-  else
-    return -1;
-}
-
-gr_lms_dfe_ff_sptr
-gr_make_lms_dfe_ff (float lambda_ff, float lambda_fb, 
-		    unsigned int num_fftaps, unsigned int num_fbtaps)
-{
-  return gnuradio::get_initial_sptr(new gr_lms_dfe_ff (lambda_ff,lambda_fb,num_fftaps,num_fbtaps));
-}
-
-gr_lms_dfe_ff::gr_lms_dfe_ff (float lambda_ff, float lambda_fb , 
-			      unsigned int num_fftaps, unsigned int num_fbtaps)
-  : gr_sync_block ("lms_dfe_ff",
-		   gr_make_io_signature (1, 1, sizeof (float)),
-		   gr_make_io_signature (1, 1, sizeof (float))),
-    d_lambda_ff (lambda_ff), d_lambda_fb (lambda_fb), 
-    d_ff_delayline(gr_rounduppow2(num_fftaps)),
-    d_fb_delayline(gr_rounduppow2(num_fbtaps)),
-    d_ff_taps(num_fftaps), d_fb_taps(num_fbtaps),
-    d_ff_index(0), d_fb_index(0)
-{
-  gr_zero_vector(d_ff_taps);
-  d_ff_taps [d_ff_taps.size()/2] = 1;
-
-  gr_zero_vector(d_fb_taps);
-  gr_zero_vector(d_ff_delayline);
-  gr_zero_vector(d_fb_delayline);
-}
-
-int
-gr_lms_dfe_ff::work (int noutput_items,
-		   gr_vector_const_void_star &input_items,
-		   gr_vector_void_star &output_items)
-{
-  const float *iptr = (const float *) input_items[0];
-  float *optr = (float *) output_items[0];
-  
-  float acc, decision, error;
-  unsigned int i;
-
-  unsigned int ff_mask = d_ff_delayline.size() - 1;	// size is power of 2
-  unsigned int fb_mask = d_fb_delayline.size() - 1;
-
-  int	size = noutput_items;
-  while(size-- > 0) {
-    acc = 0; 
-    d_ff_delayline[d_ff_index] = *iptr++;
-
-    // Compute output
-    for (i=0; i < d_ff_taps.size(); i++) 
-      acc += d_ff_delayline[(i+d_ff_index) & ff_mask] * d_ff_taps[i];
-    
-    for (i=0; i < d_fb_taps.size(); i++)
-      acc -= d_fb_delayline[(i+d_fb_index) & fb_mask] * d_fb_taps[i];
-
-    decision = slice(acc);
-    error = decision - acc;
-    
-    // Update taps
-    for (i=0; i < d_ff_taps.size(); i++)
-      d_ff_taps[i] += d_lambda_ff * error * d_ff_delayline[(i+d_ff_index) & ff_mask];
-    
-    for (i=0; i < d_fb_taps.size(); i++)
-      d_fb_taps[i] -= d_lambda_fb * error * d_fb_delayline[(i+d_fb_index) & fb_mask];
-    
-    d_fb_index = (d_fb_index - 1) & fb_mask;   	// Decrement index
-    d_ff_index = (d_ff_index - 1) & ff_mask;   	// Decrement index
-
-    d_fb_delayline[d_fb_index] = decision; 	// Save decision in feedback
-
-    *optr++ = acc;   // Output decision
-  }
-
-  if (0){
-    std::cout << "FF Taps\t";
-    for(i=0;i<d_ff_taps.size();i++)
-      std::cout << d_ff_taps[i] << "\t";
-    std::cout << std::endl << "FB Taps\t";
-    for(i=0;i<d_fb_taps.size();i++)
-      std::cout << d_fb_taps[i] << "\t";
-    std::cout << std::endl;
-  }
-
-  return noutput_items;
-}
diff --git a/gnuradio-core/src/lib/general/gr_lms_dfe_ff.h b/gnuradio-core/src/lib/general/gr_lms_dfe_ff.h
deleted file mode 100644
index dd610c4707..0000000000
--- a/gnuradio-core/src/lib/general/gr_lms_dfe_ff.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2005 Free Software Foundation, Inc.
- * 
- * This file is part of GNU Radio
- * 
- * GNU Radio is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3, or (at your option)
- * any later version.
- * 
- * GNU Radio is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License
- * along with GNU Radio; see the file COPYING.  If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef INCLUDED_GR_LMS_DFE_FF_H
-#define INCLUDED_GR_LMS_DFE_FF_H
-
-#include <gr_sync_block.h>
-
-class gr_lms_dfe_ff;
-typedef boost::shared_ptr<gr_lms_dfe_ff> gr_lms_dfe_ff_sptr;
-
-gr_lms_dfe_ff_sptr gr_make_lms_dfe_ff (float lambda_ff, float lambda_fb,
-				       unsigned int num_fftaps, unsigned int num_fbtaps);
-
-/*!
- * \brief Least-Mean-Square Decision Feedback Equalizer (float in/out)
- * \ingroup eq_blk
- */
-class gr_lms_dfe_ff : public gr_sync_block
-{
-  friend gr_lms_dfe_ff_sptr gr_make_lms_dfe_ff (float lambda_ff, float lambda_fb,
-						unsigned int num_fftaps, unsigned int num_fbtaps);
-  
-  float	d_lambda_ff;
-  float	d_lambda_fb;
-  std::vector<float>  d_ff_delayline;
-  std::vector<float>  d_fb_delayline;
-  std::vector<float>  d_ff_taps;
-  std::vector<float>  d_fb_taps;
-  unsigned int d_ff_index;
-  unsigned int d_fb_index;
-
-  gr_lms_dfe_ff (float lambda_ff, float lambda_fb, 
-		 unsigned int num_fftaps, unsigned int num_fbtaps);
-  
-  public:
-  
-  int work (int noutput_items,
-	    gr_vector_const_void_star &input_items,
-	    gr_vector_void_star &output_items);
-};
-
-#endif
diff --git a/gnuradio-core/src/lib/general/gr_lms_dfe_ff.i b/gnuradio-core/src/lib/general/gr_lms_dfe_ff.i
deleted file mode 100644
index 3ca488b524..0000000000
--- a/gnuradio-core/src/lib/general/gr_lms_dfe_ff.i
+++ /dev/null
@@ -1,34 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2005 Free Software Foundation, Inc.
- * 
- * This file is part of GNU Radio
- * 
- * GNU Radio is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3, or (at your option)
- * any later version.
- * 
- * GNU Radio is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License
- * along with GNU Radio; see the file COPYING.  If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street,
- * Boston, MA 02110-1301, USA.
- */
-
-
-GR_SWIG_BLOCK_MAGIC(gr,lms_dfe_ff)
-
-gr_lms_dfe_ff_sptr gr_make_lms_dfe_ff (float lambda_ff, float lambda_fb, 
-				       unsigned int num_fftaps, unsigned int num_fbtaps);
-
-class gr_lms_dfe_ff : public gr_sync_block
-{
- private:
-  gr_lms_dfe_ff (float lambda_ff, float lambda_fb, 
-		 unsigned int num_fftaps, unsigned int num_fbtaps);
-};
-- 
cgit v1.2.3