From 19e39553188395a4ee057fa8c5e0f92cbeda4f28 Mon Sep 17 00:00:00 2001
From: Tom Rondeau <trondeau@vt.edu>
Date: Mon, 18 Mar 2013 12:28:18 -0400
Subject: blocks: moved lfsr and friends to gr-blocks.

---
 gr-blocks/include/blocks/CMakeLists.txt | 3 +++
 1 file changed, 3 insertions(+)

(limited to 'gr-blocks/include/blocks/CMakeLists.txt')

diff --git a/gr-blocks/include/blocks/CMakeLists.txt b/gr-blocks/include/blocks/CMakeLists.txt
index b34809ae59..fcd31e31a8 100644
--- a/gr-blocks/include/blocks/CMakeLists.txt
+++ b/gr-blocks/include/blocks/CMakeLists.txt
@@ -108,6 +108,8 @@ install(FILES
     fxpt.h
     fxpt_nco.h
     fxpt_vco.h
+    lfsr_15_1_0.h
+    lfsr_32k.h
     log2_const.h
     rotator.h
     nco.h
@@ -121,6 +123,7 @@ install(FILES
     burst_tagger.h
     char_to_float.h
     char_to_short.h
+    check_lfsr_32k_s.h
     complex_to_interleaved_short.h
     complex_to_float.h
     complex_to_imag.h
-- 
cgit v1.2.3


From d4e3aa83de313e6eb9f6c4e186d8f7a3b4bfcc64 Mon Sep 17 00:00:00 2001
From: Tom Rondeau <trondeau@vt.edu>
Date: Mon, 18 Mar 2013 12:40:58 -0400
Subject: blocks: removing fxpt, nco, vco primitives from gr-blocks.

Have decided to keep all basic math functions in core.
---
 gr-blocks/include/blocks/CMakeLists.txt |   5 -
 gr-blocks/include/blocks/fxpt.h         | 112 -----------------
 gr-blocks/include/blocks/fxpt_nco.h     | 168 -------------------------
 gr-blocks/include/blocks/fxpt_vco.h     |  94 --------------
 gr-blocks/include/blocks/nco.h          | 210 --------------------------------
 gr-blocks/include/blocks/vco.h          | 113 -----------------
 gr-blocks/lib/CMakeLists.txt            |   4 -
 gr-blocks/lib/fxpt.cc                   |  40 ------
 gr-blocks/lib/qa_blocks.cc              |   6 -
 gr-blocks/lib/qa_fxpt.cc                | 104 ----------------
 gr-blocks/lib/qa_fxpt.h                 |  47 -------
 gr-blocks/lib/qa_fxpt_nco.cc            | 122 -------------------
 gr-blocks/lib/qa_fxpt_nco.h             |  47 -------
 gr-blocks/lib/qa_fxpt_vco.cc            | 112 -----------------
 gr-blocks/lib/qa_fxpt_vco.h             |  47 -------
 gr-blocks/lib/vco_f_impl.h              |   4 +-
 16 files changed, 2 insertions(+), 1233 deletions(-)
 delete mode 100644 gr-blocks/include/blocks/fxpt.h
 delete mode 100644 gr-blocks/include/blocks/fxpt_nco.h
 delete mode 100644 gr-blocks/include/blocks/fxpt_vco.h
 delete mode 100644 gr-blocks/include/blocks/nco.h
 delete mode 100644 gr-blocks/include/blocks/vco.h
 delete mode 100644 gr-blocks/lib/fxpt.cc
 delete mode 100644 gr-blocks/lib/qa_fxpt.cc
 delete mode 100644 gr-blocks/lib/qa_fxpt.h
 delete mode 100644 gr-blocks/lib/qa_fxpt_nco.cc
 delete mode 100644 gr-blocks/lib/qa_fxpt_nco.h
 delete mode 100644 gr-blocks/lib/qa_fxpt_vco.cc
 delete mode 100644 gr-blocks/lib/qa_fxpt_vco.h

(limited to 'gr-blocks/include/blocks/CMakeLists.txt')

diff --git a/gr-blocks/include/blocks/CMakeLists.txt b/gr-blocks/include/blocks/CMakeLists.txt
index fcd31e31a8..bb9c1c79df 100644
--- a/gr-blocks/include/blocks/CMakeLists.txt
+++ b/gr-blocks/include/blocks/CMakeLists.txt
@@ -105,15 +105,10 @@ install(FILES
     control_loop.h
     count_bits.h
     file_sink_base.h
-    fxpt.h
-    fxpt_nco.h
-    fxpt_vco.h
     lfsr_15_1_0.h
     lfsr_32k.h
     log2_const.h
     rotator.h
-    nco.h
-    vco.h
     wavfile.h
     add_ff.h
     annotator_1to1.h
diff --git a/gr-blocks/include/blocks/fxpt.h b/gr-blocks/include/blocks/fxpt.h
deleted file mode 100644
index 37938eb14a..0000000000
--- a/gr-blocks/include/blocks/fxpt.h
+++ /dev/null
@@ -1,112 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2004,2013 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_FXPT_H
-#define INCLUDED_GR_FXPT_H
-
-#include <blocks/api.h>
-#include <stdint.h>
-#include <cmath>
-
-namespace gr {
-  namespace blocks {
-
-    /*!
-     * \brief fixed point sine and cosine and friends.
-     * \ingroup misc
-     *
-     *   fixed pt	radians
-     *  ---------	--------
-     *   -2**31       -pi
-     *        0         0
-     *  2**31-1        pi - epsilon
-     *
-     */
-    class BLOCKS_API fxpt
-    {
-    private:
-      static const int WORDBITS = 32;
-      static const int NBITS = 10;
-      static const float s_sine_table[1 << NBITS][2];
-      static const float PI;
-      static const float TWO_TO_THE_31;
-
-    public:
-
-      static int32_t
-      float_to_fixed(float x)
-      {
-        // Fold x into -PI to PI.
-        int d = (int)floor(x/2/PI+0.5);
-        x -= d*2*PI;
-        // And convert to an integer.
-        return (int32_t)((float)x * TWO_TO_THE_31 / PI);
-      }
-
-      static float
-      fixed_to_float(int32_t x)
-      {
-        return x * (PI / TWO_TO_THE_31);
-      }
-
-      /*!
-       * \brief Given a fixed point angle x, return float sine (x)
-       */
-      static float
-      sin(int32_t x)
-      {
-        uint32_t ux = x;
-        int index = ux >> (WORDBITS - NBITS);
-        return s_sine_table[index][0] * (ux >> 1) + s_sine_table[index][1];
-      }
-
-      /*
-       * \brief Given a fixed point angle x, return float cosine (x)
-       */
-      static float
-      cos(int32_t x)
-      {
-        uint32_t ux = x + 0x40000000;
-        int index = ux >> (WORDBITS - NBITS);
-        return s_sine_table[index][0] * (ux >> 1) + s_sine_table[index][1];
-      }
-
-      /*
-       * \brief Given a fixedpoint angle x, return float cos(x) and sin (x)
-       */
-      static void
-      sincos(int32_t x, float *s, float *c)
-      {
-        uint32_t ux = x;
-        int sin_index = ux >> (WORDBITS - NBITS);
-        *s = s_sine_table[sin_index][0] * (ux >> 1) + s_sine_table[sin_index][1];
-
-        ux = x + 0x40000000;
-        int cos_index = ux >> (WORDBITS - NBITS);
-        *c = s_sine_table[cos_index][0] * (ux >> 1) + s_sine_table[cos_index][1];
-      }
-    };
-
-  } /* namespace blocks */
-} /* namespace gr */
-
-#endif /* INCLUDED_GR_FXPT_H */
diff --git a/gr-blocks/include/blocks/fxpt_nco.h b/gr-blocks/include/blocks/fxpt_nco.h
deleted file mode 100644
index 7db20fbb3a..0000000000
--- a/gr-blocks/include/blocks/fxpt_nco.h
+++ /dev/null
@@ -1,168 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2002,2004,2013 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_FXPT_NCO_H
-#define INCLUDED_GR_FXPT_NCO_H
-
-#include <blocks/api.h>
-#include <blocks/fxpt.h>
-#include <gr_complex.h>
-
-namespace gr {
-  namespace blocks {
-
-    /*!
-     * \brief Numerically Controlled Oscillator (NCO)
-     * \ingroup misc
-     *
-     * Calculate sine and cosine based on the current phase. This
-     * class has multiple ways to calculate sin/cos and when
-     * requensting a range will increment the phase based on a
-     * frequency, which can be set using set_freq. Similar interfaces
-     * to the fxpt_vco can also be used to set or adjust the current
-     * phase.
-     */
-    class fxpt_nco 
-    {
-    private:
-      uint32_t d_phase;
-      int32_t  d_phase_inc;
-
-    public:
-      fxpt_nco() : d_phase(0), d_phase_inc(0) {}
-
-      ~fxpt_nco() {}
-
-      //! Set the current phase \p angle in radians 
-      void set_phase(float angle) {
-        d_phase = fxpt::float_to_fixed(angle);
-      }
-
-      //! Update the current phase in radians by \p delta_phase
-      void adjust_phase(float delta_phase) {
-        d_phase += fxpt::float_to_fixed(delta_phase);
-      }
-
-      //! angle_rate is in radians / step
-      void set_freq(float angle_rate) {
-        d_phase_inc = fxpt::float_to_fixed(angle_rate);
-      }
-
-      //! angle_rate is a delta in radians / step
-      void adjust_freq(float delta_angle_rate) {
-        d_phase_inc += fxpt::float_to_fixed(delta_angle_rate);
-      }
-
-      //! increment current phase angle
-      void step() {
-        d_phase += d_phase_inc;
-      }
-
-      //! increment current phase angle n times
-      void step(int n) {
-        d_phase += d_phase_inc * n;
-      }
-
-      //! units are radians / step
-      float get_phase() const { return fxpt::fixed_to_float(d_phase); }
-      float get_freq() const { return fxpt::fixed_to_float(d_phase_inc); }
-
-      //! compute sin and cos for current phase angle
-      void sincos(float *sinx, float *cosx) const
-      {
-        *sinx = fxpt::sin(d_phase);
-        *cosx = fxpt::cos(d_phase);
-      }
-
-      //! compute cos and sin for a block of phase angles
-      void sincos(gr_complex *output, int noutput_items, double ampl=1.0)
-      {
-        for(int i = 0; i < noutput_items; i++) {
-          output[i] = gr_complex(fxpt::cos(d_phase) * ampl,
-                                 fxpt::sin(d_phase) * ampl);
-          step();
-        }
-      }
-
-      //! compute sin for a block of phase angles
-      void sin(float *output, int noutput_items, double ampl=1.0)
-      {
-        for(int i = 0; i < noutput_items; i++) {
-          output[i] = (float)(fxpt::sin(d_phase) * ampl);
-          step();
-        }
-      }
-
-      //! compute cos for a block of phase angles
-      void cos(float *output, int noutput_items, double ampl=1.0)
-      {
-        for(int i = 0; i < noutput_items; i++) {
-          output[i] = (float)(fxpt::cos(d_phase) * ampl);
-          step();
-        }
-      }
-
-      //! compute sin for a block of phase angles
-      void sin(short *output, int noutput_items, double ampl=1.0)
-      {
-        for(int i = 0; i < noutput_items; i++) {
-          output[i] = (short)(fxpt::sin(d_phase) * ampl);
-          step();
-        }
-      }
-
-      //! compute cos for a block of phase angles
-      void cos(short *output, int noutput_items, double ampl=1.0)
-      {
-        for(int i = 0; i < noutput_items; i++) {
-          output[i] = (short)(fxpt::cos(d_phase) * ampl);
-          step();
-        }
-      }
-
-      //! compute sin for a block of phase angles
-      void sin(int *output, int noutput_items, double ampl=1.0)
-      {
-        for(int i = 0; i < noutput_items; i++) {
-          output[i] = (int)(fxpt::sin(d_phase) * ampl);
-          step();
-        }
-      }
-
-      //! compute cos for a block of phase angles
-      void cos(int *output, int noutput_items, double ampl=1.0)
-      {
-        for(int i = 0; i < noutput_items; i++) {
-          output[i] = (int)(fxpt::cos(d_phase) * ampl);
-          step();
-        }
-      }
-
-      //! compute cos or sin for current phase angle
-      float cos() const { return fxpt::cos(d_phase); }
-      float sin() const { return fxpt::sin(d_phase); }
-    };
-
-  } /* namespace blocks */
-} /* namespace gr */
-
-#endif /* INCLUDED_GR_FXPT_NCO_H */
diff --git a/gr-blocks/include/blocks/fxpt_vco.h b/gr-blocks/include/blocks/fxpt_vco.h
deleted file mode 100644
index c313a494fb..0000000000
--- a/gr-blocks/include/blocks/fxpt_vco.h
+++ /dev/null
@@ -1,94 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2002,2004,2005,2013 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_FXPT_VCO_H
-#define INCLUDED_GR_FXPT_VCO_H
-
-#include <blocks/api.h>
-#include <blocks/fxpt.h>
-#include <gr_complex.h>
-
-namespace gr {
-  namespace blocks {
-
-    /*!
-     * \brief Voltage Controlled Oscillator (VCO)
-     * \ingroup misc
-     *
-     * Simple calculations of sine and cosine. Set the phase using
-     * set_phase or adjust it by some delta using adjust_phase. Sine
-     * and cosine can be retrieved together with sincos(sinx, cosx)
-     * where sinx and cosx are the returned values at the current
-     * phase. They can be retrieved individually using either sin() or
-     * cos().
-     */
-    class BLOCKS_API fxpt_vco 
-    {
-    private:
-      int32_t d_phase;
-
-    public:
-      fxpt_vco() : d_phase(0) {}
-
-      ~fxpt_vco() {}
-
-      //! Set the current phase \p angle in radians 
-      void set_phase(float angle) {
-        d_phase = fxpt::float_to_fixed(angle);
-      }
-
-      //! Update the current phase in radians by \p delta_phase
-      void adjust_phase(float delta_phase) {
-        d_phase += fxpt::float_to_fixed(delta_phase);
-      }
-
-      //! Get the current phase in radians
-      float get_phase() const { 
-        return fxpt::fixed_to_float(d_phase); 
-      }
-
-      //! compute sin and cos for current phase angle
-      void sincos(float *sinx, float *cosx) const
-      {
-        *sinx = fxpt::sin(d_phase);
-        *cosx = fxpt::cos(d_phase);
-      }
-
-      //! compute a block at a time
-      void cos(float *output, const float *input, int noutput_items,
-               float k, float ampl = 1.0)
-      {
-        for(int i = 0; i < noutput_items; i++) {
-          output[i] = (float)(fxpt::cos(d_phase) * ampl);
-          adjust_phase(input[i] * k);
-        }
-      }
-
-      //! compute cos or sin for current phase angle
-      float cos() const { return fxpt::cos(d_phase); }
-      float sin() const { return fxpt::sin(d_phase); }
-    };
-
-  } /* namespace blocks */
-} /* namespace gr */
-
-#endif /* INCLUDED_GR_FXPT_VCO_H */
diff --git a/gr-blocks/include/blocks/nco.h b/gr-blocks/include/blocks/nco.h
deleted file mode 100644
index e6658a3572..0000000000
--- a/gr-blocks/include/blocks/nco.h
+++ /dev/null
@@ -1,210 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2002,2013 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 _GR_NCO_H_
-#define _GR_NCO_H_
-
-#include <vector>
-#include <gr_sincos.h>
-#include <cmath>
-#include <gr_complex.h>
-
-namespace gr {
-  namespace blocks {
-
-    /*!
-     * \brief base class template for Numerically Controlled Oscillator (NCO)
-     * \ingroup misc
-     *
-     * Calculate sine and cosine based on the current phase. This
-     * class has multiple ways to calculate sin/cos and when
-     * requensting a range will increment the phase based on a
-     * frequency, which can be set using set_freq. Similar interfaces
-     * to the fxpt_vco can also be used to set or adjust the current
-     * phase.
-     *
-     * \sa fxpt_nco.h for fixed-point implementation.
-     */
-    template<class o_type, class i_type>
-    class nco
-    {
-    public:
-      nco() : phase(0), phase_inc(0) {}
-
-      virtual ~nco() {}
-
-      //! Set the current phase \p angle in radians 
-      void set_phase(double angle) {
-        phase = angle;
-      }
-
-      //! Update the current phase in radians by \p delta_phase
-      void adjust_phase(double delta_phase) {
-        phase += delta_phase;
-      }
-
-      //! angle_rate is in radians / step
-      void set_freq(double angle_rate) {
-        phase_inc = angle_rate;
-      }
-
-      //! angle_rate is a delta in radians / step
-      void adjust_freq(double delta_angle_rate) {
-        phase_inc += delta_angle_rate;
-      }
-
-      //! increment current phase angle
-      void step()
-      {
-        phase += phase_inc;
-        if(fabs (phase) > M_PI) {
-
-          while(phase > M_PI)
-            phase -= 2*M_PI;
-
-          while(phase < -M_PI)
-            phase += 2*M_PI;
-        }
-      }
-
-      //! increment current phase angle n times
-      void step(int n)
-      {
-        phase += phase_inc * n;
-        if(fabs (phase) > M_PI) {
-
-          while(phase > M_PI)
-            phase -= 2*M_PI;
-
-          while(phase < -M_PI)
-            phase += 2*M_PI;
-        }
-      }
-
-      //! units are radians / step
-      double get_phase() const { return phase; }
-      double get_freq() const { return phase_inc; }
-
-      //! compute sin and cos for current phase angle
-      void sincos(float *sinx, float *cosx) const;
-
-      //! compute cos or sin for current phase angle
-      float cos() const { return std::cos (phase); }
-      float sin() const { return std::sin (phase); }
-
-      //! compute a block at a time
-      void sin(float *output, int noutput_items, double ampl = 1.0);
-      void cos(float *output, int noutput_items, double ampl = 1.0);
-      void sincos(gr_complex *output, int noutput_items, double ampl = 1.0);
-      void sin(short *output, int noutput_items, double ampl = 1.0);
-      void cos(short *output, int noutput_items, double ampl = 1.0);
-      void sin(int *output, int noutput_items, double ampl = 1.0);
-      void cos(int *output, int noutput_items, double ampl = 1.0);
-
-    protected:
-      double phase;
-      double phase_inc;
-    };
-
-    template<class o_type, class i_type>
-    void
-    nco<o_type,i_type>::sincos(float *sinx, float *cosx) const
-    {
-      gr_sincosf(phase, sinx, cosx);
-    }
-
-    template<class o_type, class i_type>
-    void
-    nco<o_type,i_type>::sin(float *output, int noutput_items, double ampl)
-    {
-      for(int i = 0; i < noutput_items; i++) {
-        output[i] = (float)(sin() * ampl);
-        step();
-      }
-    }
-
-    template<class o_type, class i_type>
-    void
-    nco<o_type,i_type>::cos(float *output, int noutput_items, double ampl)
-    {
-      for(int i = 0; i < noutput_items; i++){
-        output[i] = (float)(cos() * ampl);
-        step();
-      }
-    }
-
-    template<class o_type, class i_type>
-    void
-    nco<o_type,i_type>::sin(short *output, int noutput_items, double ampl)
-    {
-      for(int i = 0; i < noutput_items; i++) {
-        output[i] = (short)(sin() * ampl);
-        step();
-      }
-    }
-
-    template<class o_type, class i_type>
-    void
-    nco<o_type,i_type>::cos(short *output, int noutput_items, double ampl)
-    {
-      for(int i = 0; i < noutput_items; i++) {
-        output[i] = (short)(cos() * ampl);
-        step();
-      }
-    }
-
-    template<class o_type, class i_type>
-    void
-    nco<o_type,i_type>::sin(int *output, int noutput_items, double ampl)
-    {
-      for(int i = 0; i < noutput_items; i++) {
-        output[i] = (int)(sin() * ampl);
-        step();
-      }
-    }
-
-    template<class o_type, class i_type>
-    void
-    nco<o_type,i_type>::cos(int *output, int noutput_items, double ampl)
-    {
-      for(int i = 0; i < noutput_items; i++) {
-        output[i] = (int)(cos() * ampl);
-        step();
-      }
-    }
-
-    template<class o_type, class i_type>
-    void
-    nco<o_type,i_type>::sincos(gr_complex *output, int noutput_items, double ampl)
-    {
-      for(int i = 0; i < noutput_items; i++) {
-        float cosx, sinx;
-        sincos(&sinx, &cosx);
-        output[i] = gr_complex(cosx * ampl, sinx * ampl);
-        step();
-      }
-    }
-
-  } /* namespace blocks */
-} /* namespace gr */
-
-#endif /* _NCO_H_ */
diff --git a/gr-blocks/include/blocks/vco.h b/gr-blocks/include/blocks/vco.h
deleted file mode 100644
index 4417d588ae..0000000000
--- a/gr-blocks/include/blocks/vco.h
+++ /dev/null
@@ -1,113 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2005,2013 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 _GR_VCO_H_
-#define _GR_VCO_H_
-
-#include <vector>
-#include <gr_sincos.h>
-#include <cmath>
-#include <gr_complex.h>
-
-namespace gr {
-  namespace blocks {
-
-    /*!
-     * \brief base class template for Voltage Controlled Oscillator (VCO)
-     * \ingroup misc
-     *
-     * Simple calculations of sine and cosine. Set the phase using
-     * set_phase or adjust it by some delta using adjust_phase. Sine
-     * and cosine can be retrieved together with sincos(sinx, cosx)
-     * where sinx and cosx are the returned values at the current
-     * phase. They can be retrieved individually using either sin() or
-     * cos().
-     *
-     * \sa fxpt_nco.h for fixed-point implementation.
-     */
-
-    template<class o_type, class i_type>
-    class vco
-    {
-    public:
-      vco() : d_phase(0) {}
-
-      virtual ~vco() {}
-
-      //! Set the current phase \p angle in radians 
-      void set_phase(double angle) {
-        d_phase = angle;
-      }
-
-      //! Update the current phase in radians by \p delta_phase
-      void adjust_phase(double delta_phase) {
-        d_phase += delta_phase;
-        if(fabs(d_phase) > M_PI) {
-
-          while(d_phase > M_PI)
-            d_phase -= 2*M_PI;
-
-          while(d_phase < -M_PI)
-            d_phase += 2*M_PI;
-        }
-      }
-
-      //! Get the current phase in radians
-      double get_phase() const { return d_phase; }
-
-      //! compute sin and cos for current phase angle
-      void sincos(float *sinx, float *cosx) const;
-
-      //! compute cos or sin for current phase angle
-      float cos() const { return std::cos(d_phase); }
-      float sin() const { return std::sin(d_phase); }
-
-      //! compute a block at a time
-      void cos(float *output, const float *input, int noutput_items,
-               double k, double ampl = 1.0);
-
-    protected:
-      double d_phase;
-    };
-
-    template<class o_type, class i_type>
-    void
-    vco<o_type,i_type>::sincos(float *sinx, float *cosx) const
-    {
-      gr_sincosf(d_phase, sinx, cosx);
-    }
-
-    template<class o_type, class i_type>
-    void
-    vco<o_type,i_type>::cos(float *output, const float *input, int noutput_items,
-                            double k, double ampl)
-    {
-      for(int i = 0; i < noutput_items; i++) {
-        output[i] = cos() * ampl;
-        adjust_phase(input[i] * k);
-      }
-    }
-
-  } /* namespace blocks */
-} /* namespace gr */
-
-#endif /* _VCO_H_ */
diff --git a/gr-blocks/lib/CMakeLists.txt b/gr-blocks/lib/CMakeLists.txt
index 76af61a906..67c44b2df9 100644
--- a/gr-blocks/lib/CMakeLists.txt
+++ b/gr-blocks/lib/CMakeLists.txt
@@ -142,7 +142,6 @@ list(APPEND gr_blocks_sources
     control_loop.cc
     count_bits.cc
     file_sink_base.cc
-    fxpt.cc
     wavfile.cc
     add_ff_impl.cc
     annotator_1to1_impl.cc
@@ -287,9 +286,6 @@ if(ENABLE_TESTING)
     ${CMAKE_CURRENT_SOURCE_DIR}/test_gr_blocks.cc
     ${CMAKE_CURRENT_SOURCE_DIR}/qa_blocks.cc
     ${CMAKE_CURRENT_SOURCE_DIR}/qa_block_tags.cc
-    ${CMAKE_CURRENT_SOURCE_DIR}/qa_fxpt.cc
-    ${CMAKE_CURRENT_SOURCE_DIR}/qa_fxpt_nco.cc
-    ${CMAKE_CURRENT_SOURCE_DIR}/qa_fxpt_vco.cc
     ${CMAKE_CURRENT_SOURCE_DIR}/qa_rotator.cc
     )
 
diff --git a/gr-blocks/lib/fxpt.cc b/gr-blocks/lib/fxpt.cc
deleted file mode 100644
index 4566f7c595..0000000000
--- a/gr-blocks/lib/fxpt.cc
+++ /dev/null
@@ -1,40 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2004,2013 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 <blocks/fxpt.h>
-
-namespace gr {
-  namespace blocks {
-
-    const float fxpt::s_sine_table[1 << NBITS][2] = {
-      #include "sine_table.h"
-    };
-
-    const float fxpt::PI = 3.14159265358979323846;
-    const float fxpt::TWO_TO_THE_31 = 2147483648.0;
-
-  } /* namespace blocks */
-} /* namespace gr */
diff --git a/gr-blocks/lib/qa_blocks.cc b/gr-blocks/lib/qa_blocks.cc
index ebf5d3c349..409b5d5762 100644
--- a/gr-blocks/lib/qa_blocks.cc
+++ b/gr-blocks/lib/qa_blocks.cc
@@ -27,9 +27,6 @@
 
 #include <qa_blocks.h>
 #include <qa_block_tags.h>
-#include <qa_fxpt.h>
-#include <qa_fxpt_nco.h>
-#include <qa_fxpt_vco.h>
 #include <qa_rotator.h>
 
 CppUnit::TestSuite *
@@ -38,9 +35,6 @@ qa_gr_blocks::suite()
   CppUnit::TestSuite *s = new CppUnit::TestSuite("gr-blocks");
 
   s->addTest(qa_block_tags::suite());
-  s->addTest(qa_fxpt::suite());
-  s->addTest(qa_fxpt_nco::suite());
-  s->addTest(qa_fxpt_vco::suite());
   s->addTest(qa_rotator::suite());
 
   return s;
diff --git a/gr-blocks/lib/qa_fxpt.cc b/gr-blocks/lib/qa_fxpt.cc
deleted file mode 100644
index 9ce26b240b..0000000000
--- a/gr-blocks/lib/qa_fxpt.cc
+++ /dev/null
@@ -1,104 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2004,2013 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 <qa_fxpt.h>
-#include <blocks/fxpt.h>
-#include <cppunit/TestAssert.h>
-#include <iostream>
-#include <stdio.h>
-#include <unistd.h>
-#include <math.h>
-
-static const float SIN_COS_TOLERANCE = 1e-5;
-
-using namespace gr::blocks;
-
-void
-qa_fxpt::t0()
-{
-  CPPUNIT_ASSERT_DOUBLES_EQUAL(M_PI/2, fxpt::fixed_to_float(0x40000000), SIN_COS_TOLERANCE);
-  CPPUNIT_ASSERT_DOUBLES_EQUAL(0.0,    fxpt::fixed_to_float(0x00000000), SIN_COS_TOLERANCE);
-  CPPUNIT_ASSERT_DOUBLES_EQUAL(-M_PI,  fxpt::fixed_to_float(0x80000000), SIN_COS_TOLERANCE);
-
-  if(0) {
-    /*
-     * These are disabled because of some precision issues.
-     *
-     * Different compilers seem to have different opinions on whether
-     * the calulations are done single or double (or extended)
-     * precision.  Any of the answers are fine for our real purpose, but
-     * sometimes the answer is off by a few bits at the bottom.
-     * Hence, the disabled check.
-     */
-    CPPUNIT_ASSERT_EQUAL((int32_t) 0x40000000, fxpt::float_to_fixed(M_PI/2));
-    CPPUNIT_ASSERT_EQUAL((int32_t) 0,          fxpt::float_to_fixed(0));
-    CPPUNIT_ASSERT_EQUAL((int32_t) 0x80000000, fxpt::float_to_fixed(-M_PI));
-  }
-}
-
-void
-qa_fxpt::t1()
-{
-  CPPUNIT_ASSERT_DOUBLES_EQUAL( 0,           fxpt::sin (0x00000000), SIN_COS_TOLERANCE);
-  CPPUNIT_ASSERT_DOUBLES_EQUAL( 0.707106781, fxpt::sin (0x20000000), SIN_COS_TOLERANCE);
-  CPPUNIT_ASSERT_DOUBLES_EQUAL( 1,           fxpt::sin (0x40000000), SIN_COS_TOLERANCE);
-  CPPUNIT_ASSERT_DOUBLES_EQUAL( 0.707106781, fxpt::sin (0x60000000), SIN_COS_TOLERANCE);
-  CPPUNIT_ASSERT_DOUBLES_EQUAL( 0,           fxpt::sin (0x7fffffff), SIN_COS_TOLERANCE);
-  CPPUNIT_ASSERT_DOUBLES_EQUAL( 0,           fxpt::sin (0x80000000), SIN_COS_TOLERANCE);
-  CPPUNIT_ASSERT_DOUBLES_EQUAL( 0,           fxpt::sin (0x80000001), SIN_COS_TOLERANCE);
-  CPPUNIT_ASSERT_DOUBLES_EQUAL(-1,           fxpt::sin (-0x40000000), SIN_COS_TOLERANCE);
-  CPPUNIT_ASSERT_DOUBLES_EQUAL(-0.707106781, fxpt::sin (-0x20000000), SIN_COS_TOLERANCE);
-
-  for(float p = -M_PI; p < M_PI; p += 2 * M_PI / 3600) {
-    float expected = sin(p);
-    float actual = fxpt::sin(fxpt::float_to_fixed(p));
-    CPPUNIT_ASSERT_DOUBLES_EQUAL(expected, actual, SIN_COS_TOLERANCE);
-  }
-}
-
-void
-qa_fxpt::t2()
-{
-  for(float p = -M_PI; p < M_PI; p += 2 * M_PI / 3600) {
-    float expected = cos(p);
-    float actual = fxpt::cos(fxpt::float_to_fixed(p));
-    CPPUNIT_ASSERT_DOUBLES_EQUAL(expected, actual, SIN_COS_TOLERANCE);
-  }
-}
-
-void
-qa_fxpt::t3()
-{
-  for(float p = -M_PI; p < M_PI; p += 2 * M_PI / 3600) {
-    float expected_sin = sin(p);
-    float expected_cos = cos(p);
-    float actual_sin;
-    float actual_cos;
-    fxpt::sincos(fxpt::float_to_fixed(p), &actual_sin, &actual_cos);
-    CPPUNIT_ASSERT_DOUBLES_EQUAL(expected_sin, actual_sin, SIN_COS_TOLERANCE);
-    CPPUNIT_ASSERT_DOUBLES_EQUAL(expected_cos, actual_cos, SIN_COS_TOLERANCE);
-  }
-}
diff --git a/gr-blocks/lib/qa_fxpt.h b/gr-blocks/lib/qa_fxpt.h
deleted file mode 100644
index 7a9e2a86ed..0000000000
--- a/gr-blocks/lib/qa_fxpt.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2004,2013 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_QA_GR_FXPT_H
-#define INCLUDED_QA_GR_FXPT_H
-
-#include <cppunit/extensions/HelperMacros.h>
-#include <cppunit/TestCase.h>
-
-class qa_fxpt : public CppUnit::TestCase 
-{
-  CPPUNIT_TEST_SUITE(qa_fxpt);
-  CPPUNIT_TEST(t0);
-  CPPUNIT_TEST(t1);
-  CPPUNIT_TEST(t2);
-  CPPUNIT_TEST(t3);
-  CPPUNIT_TEST_SUITE_END();
-
- private:
-  void t0();
-  void t1();
-  void t2();
-  void t3();
-};
-
-#endif /* INCLUDED_QA_GR_FXPT_H */
-
-
diff --git a/gr-blocks/lib/qa_fxpt_nco.cc b/gr-blocks/lib/qa_fxpt_nco.cc
deleted file mode 100644
index 63c0a92902..0000000000
--- a/gr-blocks/lib/qa_fxpt_nco.cc
+++ /dev/null
@@ -1,122 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2004,2013 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 <qa_fxpt_nco.h>
-#include <blocks/fxpt_nco.h>
-#include <blocks/nco.h>
-#include <cppunit/TestAssert.h>
-#include <iostream>
-#include <stdio.h>
-#include <unistd.h>
-#include <math.h>
-
-using namespace gr::blocks;
-
-static const float SIN_COS_TOLERANCE = 1e-5;
-
-//static const float SIN_COS_FREQ = 5003;
-static const float SIN_COS_FREQ = 4096;
-
-static const int SIN_COS_BLOCK_SIZE = 100000;
-
-static double max_d(double a, double b)
-{
-  return fabs(a) > fabs(b) ? a : b;
-}
-
-void
-qa_fxpt_nco::t0()
-{
-  nco<float,float>	ref_nco;
-  fxpt_nco		new_nco;
-  double max_error = 0, max_phase_error = 0;
-
-  ref_nco.set_freq((float)(2 * M_PI / SIN_COS_FREQ));
-  new_nco.set_freq((float)(2 * M_PI / SIN_COS_FREQ));
-
-  CPPUNIT_ASSERT_DOUBLES_EQUAL(ref_nco.get_freq(), new_nco.get_freq(), SIN_COS_TOLERANCE);
-
-  for(int i = 0; i < SIN_COS_BLOCK_SIZE; i++) {
-    float ref_sin = ref_nco.sin();
-    float new_sin = new_nco.sin();
-    //printf ("i = %6d\n", i);
-    CPPUNIT_ASSERT_DOUBLES_EQUAL(ref_sin, new_sin, SIN_COS_TOLERANCE);
-
-    max_error = max_d(max_error, ref_sin-new_sin);
-
-    float ref_cos = ref_nco.cos();
-    float new_cos = new_nco.cos();
-    CPPUNIT_ASSERT_DOUBLES_EQUAL(ref_cos, new_cos, SIN_COS_TOLERANCE);
-
-    max_error = max_d(max_error, ref_cos-new_cos);
-
-    ref_nco.step();
-    new_nco.step();
-
-    CPPUNIT_ASSERT_DOUBLES_EQUAL(ref_nco.get_phase(), new_nco.get_phase(), SIN_COS_TOLERANCE);
-
-    max_phase_error = max_d(max_phase_error, ref_nco.get_phase()-new_nco.get_phase());
-  }
-  // printf("Fxpt  max error %.9f, max phase error %.9f\n", max_error, max_phase_error);
-}
-
-void
-qa_fxpt_nco::t1()
-{
-  nco<float,float>	ref_nco;
-  fxpt_nco		new_nco;
-  gr_complex		ref_block[SIN_COS_BLOCK_SIZE];
-  gr_complex		new_block[SIN_COS_BLOCK_SIZE];
-  double max_error = 0;
-
-  ref_nco.set_freq((float)(2 * M_PI / SIN_COS_FREQ));
-  new_nco.set_freq((float)(2 * M_PI / SIN_COS_FREQ));
-
-  CPPUNIT_ASSERT_DOUBLES_EQUAL(ref_nco.get_freq(), new_nco.get_freq(), SIN_COS_TOLERANCE);
-
-  ref_nco.sincos((gr_complex*)ref_block, SIN_COS_BLOCK_SIZE);
-  new_nco.sincos((gr_complex*)new_block, SIN_COS_BLOCK_SIZE);
-
-  for(int i = 0; i < SIN_COS_BLOCK_SIZE; i++) {
-    CPPUNIT_ASSERT_DOUBLES_EQUAL(ref_block[i].real(), new_block[i].real(), SIN_COS_TOLERANCE);
-    max_error = max_d(max_error, ref_block[i].real()-new_block[i].real());
-
-    CPPUNIT_ASSERT_DOUBLES_EQUAL(ref_block[i].imag(), new_block[i].imag(), SIN_COS_TOLERANCE);
-    max_error = max_d(max_error, ref_block[i].imag()-new_block[i].imag());
-  }
-  CPPUNIT_ASSERT_DOUBLES_EQUAL(ref_nco.get_phase(), new_nco.get_phase(), SIN_COS_TOLERANCE);
-  // printf("Fxpt  max error %.9f, max phase error %.9f\n", max_error, max_phase_error);
-}
-
-void
-qa_fxpt_nco::t2()
-{
-}
-
-void
-qa_fxpt_nco::t3()
-{
-}
diff --git a/gr-blocks/lib/qa_fxpt_nco.h b/gr-blocks/lib/qa_fxpt_nco.h
deleted file mode 100644
index ac4e5d2ade..0000000000
--- a/gr-blocks/lib/qa_fxpt_nco.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2004,2013 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_QA_GR_FXPT_NCO_H
-#define INCLUDED_QA_GR_FXPT_NCO_H
-
-#include <cppunit/extensions/HelperMacros.h>
-#include <cppunit/TestCase.h>
-
-class qa_fxpt_nco : public CppUnit::TestCase
-{
-  CPPUNIT_TEST_SUITE(qa_fxpt_nco);
-  CPPUNIT_TEST(t0);
-  CPPUNIT_TEST(t1);
-  CPPUNIT_TEST(t2);
-  CPPUNIT_TEST(t3);
-  CPPUNIT_TEST_SUITE_END();
-
- private:
-  void t0();
-  void t1();
-  void t2();
-  void t3();
-};
-
-#endif /* INCLUDED_QA_GR_FXPT_NCO_H */
-
-
diff --git a/gr-blocks/lib/qa_fxpt_vco.cc b/gr-blocks/lib/qa_fxpt_vco.cc
deleted file mode 100644
index 2efce0506b..0000000000
--- a/gr-blocks/lib/qa_fxpt_vco.cc
+++ /dev/null
@@ -1,112 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2004,2005,2013 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 <qa_fxpt_vco.h>
-#include <blocks/fxpt_vco.h>
-#include <blocks/vco.h>
-#include <cppunit/TestAssert.h>
-#include <iostream>
-#include <stdio.h>
-#include <unistd.h>
-#include <math.h>
-
-using namespace gr::blocks;
-
-static const float SIN_COS_TOLERANCE = 1e-5;
-
-static const float SIN_COS_K = 0.42;
-static const float SIN_COS_AMPL = 0.8;
-
-static const int SIN_COS_BLOCK_SIZE = 100000;
-
-static double max_d(double a, double b)
-{
-  return fabs(a) > fabs(b) ? a : b;
-}
-
-void
-qa_fxpt_vco::t0()
-{
-  vco<float,float>	ref_vco;
-  fxpt_vco		new_vco;
-  double max_error = 0, max_phase_error = 0;
-  float			input[SIN_COS_BLOCK_SIZE];
-
-  for(int i = 0; i < SIN_COS_BLOCK_SIZE; i++) {
-    input[i] = sin(double(i));
-  }
-
-  for(int i = 0; i < SIN_COS_BLOCK_SIZE; i++) {
-    float ref_cos = ref_vco.cos();
-    float new_cos = new_vco.cos();
-    CPPUNIT_ASSERT_DOUBLES_EQUAL(ref_cos, new_cos, SIN_COS_TOLERANCE);
-
-    max_error = max_d(max_error, ref_cos-new_cos);
-
-    ref_vco.adjust_phase(input[i]);
-    new_vco.adjust_phase(input[i]);
-
-    CPPUNIT_ASSERT_DOUBLES_EQUAL(ref_vco.get_phase(), new_vco.get_phase(), SIN_COS_TOLERANCE);
-
-    max_phase_error = max_d(max_phase_error, ref_vco.get_phase()-new_vco.get_phase());
-  }
-  // printf("Fxpt  max error %.9f, max phase error %.9f\n", max_error, max_phase_error);
-}
-
-void
-qa_fxpt_vco::t1()
-{
-  vco<float,float>	ref_vco;
-  fxpt_vco		new_vco;
-  float			ref_block[SIN_COS_BLOCK_SIZE];
-  float			new_block[SIN_COS_BLOCK_SIZE];
-  float			input[SIN_COS_BLOCK_SIZE];
-  double max_error = 0;
-
-  for(int i = 0; i < SIN_COS_BLOCK_SIZE; i++) {
-    input[i] = sin(double(i));
-  }
-
-  ref_vco.cos(ref_block, input, SIN_COS_BLOCK_SIZE, SIN_COS_K, SIN_COS_AMPL);
-  new_vco.cos(new_block, input, SIN_COS_BLOCK_SIZE, SIN_COS_K, SIN_COS_AMPL);
-
-  for(int i = 0; i < SIN_COS_BLOCK_SIZE; i++) {
-    CPPUNIT_ASSERT_DOUBLES_EQUAL(ref_block[i], new_block[i], SIN_COS_TOLERANCE);
-    max_error = max_d(max_error, ref_block[i]-new_block[i]);
-  }
-  CPPUNIT_ASSERT_DOUBLES_EQUAL(ref_vco.get_phase(), new_vco.get_phase(), SIN_COS_TOLERANCE);
-  // printf("Fxpt  max error %.9f, max phase error %.9f\n", max_error, ref_vco.get_phase()-new_vco.get_phase());
-}
-
-void
-qa_fxpt_vco::t2()
-{
-}
-
-void
-qa_fxpt_vco::t3()
-{
-}
diff --git a/gr-blocks/lib/qa_fxpt_vco.h b/gr-blocks/lib/qa_fxpt_vco.h
deleted file mode 100644
index 72693f32e2..0000000000
--- a/gr-blocks/lib/qa_fxpt_vco.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2004,2005,2013 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_QA_GR_FXPT_VCO_H
-#define INCLUDED_QA_GR_FXPT_VCO_H
-
-#include <cppunit/extensions/HelperMacros.h>
-#include <cppunit/TestCase.h>
-
-class qa_fxpt_vco : public CppUnit::TestCase
-{
-  CPPUNIT_TEST_SUITE(qa_fxpt_vco);
-  CPPUNIT_TEST(t0);
-  CPPUNIT_TEST(t1);
-  CPPUNIT_TEST(t2);
-  CPPUNIT_TEST(t3);
-  CPPUNIT_TEST_SUITE_END();
-
-private:
-  void t0();
-  void t1();
-  void t2();
-  void t3();
-};
-
-#endif /* INCLUDED_QA_GR_FXPT_VCO_H */
-
-
diff --git a/gr-blocks/lib/vco_f_impl.h b/gr-blocks/lib/vco_f_impl.h
index cecf72441f..37435b7736 100644
--- a/gr-blocks/lib/vco_f_impl.h
+++ b/gr-blocks/lib/vco_f_impl.h
@@ -24,7 +24,7 @@
 #define INCLUDED_GR_VCO_F_IMPL_H
 
 #include <blocks/vco_f.h>
-#include <blocks/fxpt_vco.h>
+#include <gr_fxpt_vco.h>
 
 namespace gr {
   namespace blocks {
@@ -36,7 +36,7 @@ namespace gr {
       double d_sensitivity;
       double d_amplitude;
       double d_k;
-      fxpt_vco d_vco;
+      gr_fxpt_vco d_vco;
 
     public:
       vco_f_impl(double sampling_rate, double sensitivity, double amplitude);
-- 
cgit v1.2.3