summaryrefslogtreecommitdiff
path: root/gnuradio-core/src/lib/general
diff options
context:
space:
mode:
authorTom Rondeau <trondeau@vt.edu>2012-10-31 20:01:16 -0400
committerTom Rondeau <trondeau@vt.edu>2012-10-31 20:01:16 -0400
commit66fd82ac5f87b55bb007b95ba9c7bfffe333b134 (patch)
treeab9c9ec3e7a14270a3f47e5f5c05e9f1499070a9 /gnuradio-core/src/lib/general
parent59f9e558daeb3d148a26fbb56fedc8f1dac1a5bb (diff)
analog: removed all AGC blocks from gnuradio-core.
Also replaces calls to gr.agc with analog.agc.
Diffstat (limited to 'gnuradio-core/src/lib/general')
-rw-r--r--gnuradio-core/src/lib/general/CMakeLists.txt13
-rw-r--r--gnuradio-core/src/lib/general/general.i10
-rw-r--r--gnuradio-core/src/lib/general/gr_agc2_cc.cc56
-rw-r--r--gnuradio-core/src/lib/general/gr_agc2_cc.h56
-rw-r--r--gnuradio-core/src/lib/general/gr_agc2_cc.i35
-rw-r--r--gnuradio-core/src/lib/general/gr_agc2_ff.cc57
-rw-r--r--gnuradio-core/src/lib/general/gr_agc2_ff.h54
-rw-r--r--gnuradio-core/src/lib/general/gr_agc2_ff.i35
-rw-r--r--gnuradio-core/src/lib/general/gr_agc_cc.cc56
-rw-r--r--gnuradio-core/src/lib/general/gr_agc_cc.h55
-rw-r--r--gnuradio-core/src/lib/general/gr_agc_cc.i35
-rw-r--r--gnuradio-core/src/lib/general/gr_agc_ff.cc54
-rw-r--r--gnuradio-core/src/lib/general/gr_agc_ff.h55
-rw-r--r--gnuradio-core/src/lib/general/gr_agc_ff.i34
-rw-r--r--gnuradio-core/src/lib/general/gr_feedforward_agc_cc.cc91
-rw-r--r--gnuradio-core/src/lib/general/gr_feedforward_agc_cc.h57
-rw-r--r--gnuradio-core/src/lib/general/gr_feedforward_agc_cc.i34
-rw-r--r--gnuradio-core/src/lib/general/gri_agc2_cc.h91
-rw-r--r--gnuradio-core/src/lib/general/gri_agc2_cc.i47
-rw-r--r--gnuradio-core/src/lib/general/gri_agc2_ff.h90
-rw-r--r--gnuradio-core/src/lib/general/gri_agc2_ff.i47
-rw-r--r--gnuradio-core/src/lib/general/gri_agc_cc.h75
-rw-r--r--gnuradio-core/src/lib/general/gri_agc_cc.i41
-rw-r--r--gnuradio-core/src/lib/general/gri_agc_ff.h72
-rw-r--r--gnuradio-core/src/lib/general/gri_agc_ff.i36
25 files changed, 0 insertions, 1286 deletions
diff --git a/gnuradio-core/src/lib/general/CMakeLists.txt b/gnuradio-core/src/lib/general/CMakeLists.txt
index 7173246ea0..726f190ec3 100644
--- a/gnuradio-core/src/lib/general/CMakeLists.txt
+++ b/gnuradio-core/src/lib/general/CMakeLists.txt
@@ -127,10 +127,6 @@ install(FILES
${CMAKE_CURRENT_SOURCE_DIR}/gr_test_types.h
${CMAKE_CURRENT_SOURCE_DIR}/gr_vco.h
${CMAKE_CURRENT_SOURCE_DIR}/gri_add_const_ss.h
- ${CMAKE_CURRENT_SOURCE_DIR}/gri_agc_cc.h
- ${CMAKE_CURRENT_SOURCE_DIR}/gri_agc_ff.h
- ${CMAKE_CURRENT_SOURCE_DIR}/gri_agc2_cc.h
- ${CMAKE_CURRENT_SOURCE_DIR}/gri_agc2_ff.h
${CMAKE_CURRENT_SOURCE_DIR}/gri_char_to_float.h
${CMAKE_CURRENT_SOURCE_DIR}/gri_control_loop.h
${CMAKE_CURRENT_SOURCE_DIR}/gri_debugger_hook.h
@@ -159,10 +155,6 @@ if(ENABLE_PYTHON)
install(FILES
${CMAKE_CURRENT_SOURCE_DIR}/general.i
${CMAKE_CURRENT_SOURCE_DIR}/gr_constants.i
- ${CMAKE_CURRENT_SOURCE_DIR}/gri_agc_cc.i
- ${CMAKE_CURRENT_SOURCE_DIR}/gri_agc_ff.i
- ${CMAKE_CURRENT_SOURCE_DIR}/gri_agc2_cc.i
- ${CMAKE_CURRENT_SOURCE_DIR}/gri_agc2_ff.i
${CMAKE_CURRENT_SOURCE_DIR}/gri_control_loop.i
DESTINATION ${GR_INCLUDE_DIR}/gnuradio/swig
COMPONENT "core_swig"
@@ -175,10 +167,6 @@ endif(ENABLE_PYTHON)
set(gr_core_general_triple_threats
complex_vec_test
gr_add_ff
- gr_agc_cc
- gr_agc_ff
- gr_agc2_cc
- gr_agc2_ff
gr_align_on_samplenumbers_ss
gr_bin_statistics_f
gr_char_to_float
@@ -199,7 +187,6 @@ set(gr_core_general_triple_threats
gr_encode_ccsds_27_bb
gr_endian_swap
gr_fake_channel_coder_pp
- gr_feedforward_agc_cc
gr_feval
gr_firdes
gr_float_to_char
diff --git a/gnuradio-core/src/lib/general/general.i b/gnuradio-core/src/lib/general/general.i
index b8d567b7cf..1007b7f1a8 100644
--- a/gnuradio-core/src/lib/general/general.i
+++ b/gnuradio-core/src/lib/general/general.i
@@ -62,10 +62,6 @@
#include <gr_deinterleave.h>
#include <gr_delay.h>
#include <gr_simple_squelch_cc.h>
-#include <gr_agc_ff.h>
-#include <gr_agc_cc.h>
-#include <gr_agc2_ff.h>
-#include <gr_agc2_cc.h>
#include <gr_rms_cf.h>
#include <gr_rms_ff.h>
#include <gr_nlog10_ff.h>
@@ -106,7 +102,6 @@
#include <gr_pwr_squelch_cc.h>
#include <gr_pwr_squelch_ff.h>
#include <gr_ctcss_squelch_ff.h>
-#include <gr_feedforward_agc_cc.h>
#include <gr_bin_statistics_f.h>
#include <gr_peak_detector2_fb.h>
#include <gr_repeat.h>
@@ -167,10 +162,6 @@
%include "gr_deinterleave.i"
%include "gr_delay.i"
%include "gr_simple_squelch_cc.i"
-%include "gr_agc_ff.i"
-%include "gr_agc_cc.i"
-%include "gr_agc2_ff.i"
-%include "gr_agc2_cc.i"
%include "gr_rms_cf.i"
%include "gr_rms_ff.i"
%include "gr_nlog10_ff.i"
@@ -211,7 +202,6 @@
%include "gr_pwr_squelch_cc.i"
%include "gr_pwr_squelch_ff.i"
%include "gr_ctcss_squelch_ff.i"
-%include "gr_feedforward_agc_cc.i"
%include "gr_bin_statistics_f.i"
%include "gr_peak_detector2_fb.i"
%include "gr_repeat.i"
diff --git a/gnuradio-core/src/lib/general/gr_agc2_cc.cc b/gnuradio-core/src/lib/general/gr_agc2_cc.cc
deleted file mode 100644
index 5097babc9b..0000000000
--- a/gnuradio-core/src/lib/general/gr_agc2_cc.cc
+++ /dev/null
@@ -1,56 +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_agc2_cc.h>
-#include <gr_io_signature.h>
-#include <gri_agc2_cc.h>
-
-gr_agc2_cc_sptr
-gr_make_agc2_cc (float attack_rate, float decay_rate, float reference,
- float gain, float max_gain)
-{
- return gnuradio::get_initial_sptr(new gr_agc2_cc (attack_rate, decay_rate, reference, gain, max_gain));
-}
-
-gr_agc2_cc::gr_agc2_cc (float attack_rate, float decay_rate, float reference,
- float gain, float max_gain)
- : gr_sync_block ("gr_agc2_cc",
- gr_make_io_signature (1, 1, sizeof (gr_complex)),
- gr_make_io_signature (1, 1, sizeof (gr_complex))),
- gri_agc2_cc (attack_rate, decay_rate, reference, gain, max_gain)
-{
-}
-
-int
-gr_agc2_cc::work (int noutput_items,
- gr_vector_const_void_star &input_items,
- gr_vector_void_star &output_items)
-{
- const gr_complex *in = (const gr_complex *) input_items[0];
- gr_complex *out = (gr_complex *) output_items[0];
- scaleN (out, in, noutput_items);
- return noutput_items;
-}
diff --git a/gnuradio-core/src/lib/general/gr_agc2_cc.h b/gnuradio-core/src/lib/general/gr_agc2_cc.h
deleted file mode 100644
index 54bae1aae9..0000000000
--- a/gnuradio-core/src/lib/general/gr_agc2_cc.h
+++ /dev/null
@@ -1,56 +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_AGC2_CC_H
-#define INCLUDED_GR_AGC2_CC_H
-
-#include <gr_core_api.h>
-#include <gr_sync_block.h>
-#include <gri_agc2_cc.h>
-
-class gr_agc2_cc;
-typedef boost::shared_ptr<gr_agc2_cc> gr_agc2_cc_sptr;
-
-GR_CORE_API gr_agc2_cc_sptr
-gr_make_agc2_cc (float attack_rate = 1e-1, float decay_rate = 1e-2, float reference = 1.0,
- float gain = 1.0, float max_gain = 0.0);
-/*!
- * \brief high performance Automatic Gain Control class
- * \ingroup level_blk
- *
- * For Power the absolute value of the complex number is used.
- */
-
-class GR_CORE_API gr_agc2_cc : public gr_sync_block, public gri_agc2_cc
-{
- friend GR_CORE_API gr_agc2_cc_sptr gr_make_agc2_cc (float attack_rate, float decay_rate, float reference,
- float gain, float max_gain);
- gr_agc2_cc (float attack_rate, float decay_rate, float reference,
- float gain, float max_gain);
-
- public:
- virtual int work (int noutput_items,
- gr_vector_const_void_star &input_items,
- gr_vector_void_star &output_items);
-};
-
-#endif /* INCLUDED_GR_AGC2_CC_H */
diff --git a/gnuradio-core/src/lib/general/gr_agc2_cc.i b/gnuradio-core/src/lib/general/gr_agc2_cc.i
deleted file mode 100644
index 6d7b221010..0000000000
--- a/gnuradio-core/src/lib/general/gr_agc2_cc.i
+++ /dev/null
@@ -1,35 +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.
- */
-
-GR_SWIG_BLOCK_MAGIC(gr,agc2_cc)
-
-%include <gri_agc2_cc.i>
-
-gr_agc2_cc_sptr
-gr_make_agc2_cc (float attack_rate = 1e-1, float decay_rate = 1e-2, float reference = 1.0,
- float gain = 1.0, float max_gain = 0.0);
-
-class gr_agc2_cc : public gr_sync_block , public gri_agc2_cc
-{
- gr_agc2_cc (float attack_rate, float decay_rate, float reference,
- float gain, float max_gain);
-};
diff --git a/gnuradio-core/src/lib/general/gr_agc2_ff.cc b/gnuradio-core/src/lib/general/gr_agc2_ff.cc
deleted file mode 100644
index 792ee1c6be..0000000000
--- a/gnuradio-core/src/lib/general/gr_agc2_ff.cc
+++ /dev/null
@@ -1,57 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2005,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_agc2_ff.h>
-#include <gr_io_signature.h>
-#include <gri_agc2_ff.h>
-
-gr_agc2_ff_sptr
-gr_make_agc2_ff (float attack_rate, float decay_rate, float reference,
- float gain, float max_gain)
-{
- return gnuradio::get_initial_sptr(new gr_agc2_ff (attack_rate, decay_rate, reference,
- gain, max_gain));
-}
-
-gr_agc2_ff::gr_agc2_ff (float attack_rate, float decay_rate, float reference,
- float gain, float max_gain)
- : gr_sync_block ("gr_agc2_ff",
- gr_make_io_signature (1, 1, sizeof (float)),
- gr_make_io_signature (1, 1, sizeof (float)))
- , gri_agc2_ff (attack_rate, decay_rate, reference, gain, max_gain)
-{
-}
-
-int
-gr_agc2_ff::work (int noutput_items,
- gr_vector_const_void_star &input_items,
- gr_vector_void_star &output_items)
-{
- const float *in = (const float *) input_items[0];
- float *out = (float *) output_items[0];
- scaleN (out, in, noutput_items);
- return noutput_items;
-}
diff --git a/gnuradio-core/src/lib/general/gr_agc2_ff.h b/gnuradio-core/src/lib/general/gr_agc2_ff.h
deleted file mode 100644
index 48529948c0..0000000000
--- a/gnuradio-core/src/lib/general/gr_agc2_ff.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2005,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_AGC2_FF_H
-#define INCLUDED_GR_AGC2_FF_H
-
-#include <gr_core_api.h>
-#include <gr_sync_block.h>
-#include <gri_agc2_ff.h>
-class gr_agc2_ff;
-typedef boost::shared_ptr<gr_agc2_ff> gr_agc2_ff_sptr;
-
-GR_CORE_API gr_agc2_ff_sptr
-gr_make_agc2_ff (float attack_rate = 1e-1, float decay_rate = 1e-2, float reference = 1.0,
- float gain = 1.0, float max_gain = 0.0);
-/*!
- * \brief high performance Automatic Gain Control class
- *
- * \ingroup level_blk
- * Power is approximated by absolute value
- */
-
-class GR_CORE_API gr_agc2_ff : public gr_sync_block, public gri_agc2_ff
-{
- friend GR_CORE_API gr_agc2_ff_sptr gr_make_agc2_ff (float attack_rate, float decay_rate,
- float reference, float gain, float max_gain);
- gr_agc2_ff (float attack_rate, float decay_rate, float reference, float gain, float max_gain);
-
- public:
- virtual int work (int noutput_items,
- gr_vector_const_void_star &input_items,
- gr_vector_void_star &output_items);
-};
-
-#endif /* INCLUDED_GR_FLOAT_AGC2_FF_H */
diff --git a/gnuradio-core/src/lib/general/gr_agc2_ff.i b/gnuradio-core/src/lib/general/gr_agc2_ff.i
deleted file mode 100644
index 646391aa7f..0000000000
--- a/gnuradio-core/src/lib/general/gr_agc2_ff.i
+++ /dev/null
@@ -1,35 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2005,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.
- */
-
-GR_SWIG_BLOCK_MAGIC(gr,agc2_ff)
-
-%include <gri_agc2_ff.i>
-
-gr_agc2_ff_sptr
-gr_make_agc2_ff (float attack_rate = 1e-1, float decay_rate = 1e-2, float reference = 1.0,
- float gain = 1.0, float max_gain = 0.0);
-
-class gr_agc2_ff : public gr_sync_block , public gri_agc2_ff
-{
- gr_agc2_ff (float attack_rate, float decay_rate, float reference,
- float gain, float max_gain);
-};
diff --git a/gnuradio-core/src/lib/general/gr_agc_cc.cc b/gnuradio-core/src/lib/general/gr_agc_cc.cc
deleted file mode 100644
index e98f3a303f..0000000000
--- a/gnuradio-core/src/lib/general/gr_agc_cc.cc
+++ /dev/null
@@ -1,56 +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_agc_cc.h>
-#include <gr_io_signature.h>
-#include <gri_agc_cc.h>
-
-gr_agc_cc_sptr
-gr_make_agc_cc (float rate, float reference,
- float gain, float max_gain)
-{
- return gnuradio::get_initial_sptr(new gr_agc_cc (rate, reference, gain, max_gain));
-}
-
-gr_agc_cc::gr_agc_cc (float rate, float reference,
- float gain, float max_gain)
- : gr_sync_block ("gr_agc_cc",
- gr_make_io_signature (1, 1, sizeof (gr_complex)),
- gr_make_io_signature (1, 1, sizeof (gr_complex))),
- gri_agc_cc (rate, reference, gain, max_gain)
-{
-}
-
-int
-gr_agc_cc::work (int noutput_items,
- gr_vector_const_void_star &input_items,
- gr_vector_void_star &output_items)
-{
- const gr_complex *in = (const gr_complex *) input_items[0];
- gr_complex *out = (gr_complex *) output_items[0];
- scaleN (out, in, noutput_items);
- return noutput_items;
-}
diff --git a/gnuradio-core/src/lib/general/gr_agc_cc.h b/gnuradio-core/src/lib/general/gr_agc_cc.h
deleted file mode 100644
index 9f35350dbd..0000000000
--- a/gnuradio-core/src/lib/general/gr_agc_cc.h
+++ /dev/null
@@ -1,55 +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_AGC_CC_H
-#define INCLUDED_GR_AGC_CC_H
-
-#include <gr_core_api.h>
-#include <gr_sync_block.h>
-#include <gri_agc_cc.h>
-class gr_agc_cc;
-typedef boost::shared_ptr<gr_agc_cc> gr_agc_cc_sptr;
-
-GR_CORE_API gr_agc_cc_sptr
-gr_make_agc_cc (float rate = 1e-4, float reference = 1.0,
- float gain = 1.0, float max_gain = 0.0);
-/*!
- * \brief high performance Automatic Gain Control class
- * \ingroup level_blk
- *
- * For Power the absolute value of the complex number is used.
- */
-
-class GR_CORE_API gr_agc_cc : public gr_sync_block, public gri_agc_cc
-{
- friend GR_CORE_API gr_agc_cc_sptr gr_make_agc_cc (float rate, float reference,
- float gain, float max_gain);
- gr_agc_cc (float rate, float reference,
- float gain, float max_gain);
-
- public:
- virtual int work (int noutput_items,
- gr_vector_const_void_star &input_items,
- gr_vector_void_star &output_items);
-};
-
-#endif /* INCLUDED_GR_AGC_CC_H */
diff --git a/gnuradio-core/src/lib/general/gr_agc_cc.i b/gnuradio-core/src/lib/general/gr_agc_cc.i
deleted file mode 100644
index f942713b08..0000000000
--- a/gnuradio-core/src/lib/general/gr_agc_cc.i
+++ /dev/null
@@ -1,35 +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.
- */
-
-GR_SWIG_BLOCK_MAGIC(gr,agc_cc)
-
-%include <gri_agc_cc.i>
-
-gr_agc_cc_sptr
-gr_make_agc_cc (float rate = 1e-4, float reference = 1.0,
- float gain = 1.0, float max_gain = 0.0);
-
-class gr_agc_cc : public gr_sync_block , public gri_agc_cc
-{
- gr_agc_cc (float rate, float reference,
- float gain, float max_gain);
-};
diff --git a/gnuradio-core/src/lib/general/gr_agc_ff.cc b/gnuradio-core/src/lib/general/gr_agc_ff.cc
deleted file mode 100644
index 6050dc7f0a..0000000000
--- a/gnuradio-core/src/lib/general/gr_agc_ff.cc
+++ /dev/null
@@ -1,54 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2005,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_agc_ff.h>
-#include <gr_io_signature.h>
-#include <gri_agc_ff.h>
-
-gr_agc_ff_sptr
-gr_make_agc_ff (float rate, float reference, float gain, float max_gain)
-{
- return gnuradio::get_initial_sptr(new gr_agc_ff (rate, reference, gain, max_gain));
-}
-
-gr_agc_ff::gr_agc_ff (float rate, float reference, float gain, float max_gain)
- : gr_sync_block ("gr_agc_ff",
- gr_make_io_signature (1, 1, sizeof (float)),
- gr_make_io_signature (1, 1, sizeof (float)))
- , gri_agc_ff (rate, reference, gain, max_gain)
-{
-}
-
-int
-gr_agc_ff::work (int noutput_items,
- gr_vector_const_void_star &input_items,
- gr_vector_void_star &output_items)
-{
- const float *in = (const float *) input_items[0];
- float *out = (float *) output_items[0];
- scaleN (out, in, noutput_items);
- return noutput_items;
-}
diff --git a/gnuradio-core/src/lib/general/gr_agc_ff.h b/gnuradio-core/src/lib/general/gr_agc_ff.h
deleted file mode 100644
index dc618213bb..0000000000
--- a/gnuradio-core/src/lib/general/gr_agc_ff.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2005,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_AGC_FF_H
-#define INCLUDED_GR_AGC_FF_H
-
-#include <gr_core_api.h>
-#include <gr_sync_block.h>
-#include <gri_agc_ff.h>
-class gr_agc_ff;
-typedef boost::shared_ptr<gr_agc_ff> gr_agc_ff_sptr;
-
-GR_CORE_API gr_agc_ff_sptr
-gr_make_agc_ff (float rate = 1e-4, float reference = 1.0,
- float gain = 1.0, float max_gain = 0.0);
-
-/*!
- * \brief high performance Automatic Gain Control class
- * \ingroup level_blk
- *
- * Power is approximated by absolute value
- */
-
-class GR_CORE_API gr_agc_ff : public gr_sync_block, public gri_agc_ff
-{
- friend GR_CORE_API gr_agc_ff_sptr gr_make_agc_ff (float rate, float reference,
- float gain, float max_gain);
- gr_agc_ff (float rate, float reference, float gain, float max_gain);
-
- public:
- virtual int work (int noutput_items,
- gr_vector_const_void_star &input_items,
- gr_vector_void_star &output_items);
-};
-
-#endif /* INCLUDED_GR_FLOAT_AGC_FF_H */
diff --git a/gnuradio-core/src/lib/general/gr_agc_ff.i b/gnuradio-core/src/lib/general/gr_agc_ff.i
deleted file mode 100644
index 03c571e1a4..0000000000
--- a/gnuradio-core/src/lib/general/gr_agc_ff.i
+++ /dev/null
@@ -1,34 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2005,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.
- */
-
-GR_SWIG_BLOCK_MAGIC(gr,agc_ff)
-
-%include <gri_agc_ff.i>
-
-gr_agc_ff_sptr
-gr_make_agc_ff (float rate = 1e-4, float reference = 1.0,
- float gain = 1.0, float max_gain = 0.0);
-
-class gr_agc_ff : public gr_sync_block , public gri_agc_ff
-{
- gr_agc_ff (float rate, float reference, float gain, float max_gain);
-};
diff --git a/gnuradio-core/src/lib/general/gr_feedforward_agc_cc.cc b/gnuradio-core/src/lib/general/gr_feedforward_agc_cc.cc
deleted file mode 100644
index 147b64e9bf..0000000000
--- a/gnuradio-core/src/lib/general/gr_feedforward_agc_cc.cc
+++ /dev/null
@@ -1,91 +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_feedforward_agc_cc.h>
-#include <gr_io_signature.h>
-#include <stdexcept>
-
-gr_feedforward_agc_cc_sptr
-gr_make_feedforward_agc_cc(int nsamples, float reference)
-{
- return gnuradio::get_initial_sptr(new gr_feedforward_agc_cc (nsamples, reference));
-}
-
-gr_feedforward_agc_cc::gr_feedforward_agc_cc (int nsamples, float reference)
- : gr_sync_block ("gr_feedforward_agc_cc",
- gr_make_io_signature (1, 1, sizeof (gr_complex)),
- gr_make_io_signature (1, 1, sizeof (gr_complex))),
- d_nsamples(nsamples), d_reference(reference)
-{
- if (nsamples < 1)
- throw std::invalid_argument("gr_feedforward_agc_cc: nsamples must be >= 1");
-
- set_history(nsamples);
-}
-
-gr_feedforward_agc_cc::~gr_feedforward_agc_cc()
-{
-}
-
-inline static float
-mag_squared(gr_complex x)
-{
- return x.real() * x.real() + x.imag() * x.imag();
-}
-
-// approximate sqrt(x^2 + y^2)
-inline static float
-envelope(gr_complex x)
-{
- float r_abs = std::fabs(x.real());
- float i_abs = std::fabs(x.imag());
-
- if (r_abs > i_abs)
- return r_abs + 0.4 * i_abs;
- else
- return i_abs + 0.4 * r_abs;
-}
-
-int
-gr_feedforward_agc_cc::work(int noutput_items,
- gr_vector_const_void_star &input_items,
- gr_vector_void_star &output_items)
-{
- const gr_complex *in = (const gr_complex *) input_items[0];
- gr_complex *out = (gr_complex *) output_items[0];
- int nsamples = d_nsamples;
- float gain;
-
- for (int i = 0; i < noutput_items; i++){
- //float max_env = 1e-12; // avoid divide by zero
- float max_env = 1e-4; // avoid divide by zero, indirectly set max gain
- for (int j = 0; j < nsamples; j++)
- max_env = std::max(max_env, envelope(in[i+j]));
- gain = d_reference / max_env;
- out[i] = gain * in[i];
- }
- return noutput_items;
-}
diff --git a/gnuradio-core/src/lib/general/gr_feedforward_agc_cc.h b/gnuradio-core/src/lib/general/gr_feedforward_agc_cc.h
deleted file mode 100644
index 63e5e4c436..0000000000
--- a/gnuradio-core/src/lib/general/gr_feedforward_agc_cc.h
+++ /dev/null
@@ -1,57 +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_FEEDFORWARD_AGC_CC_H
-#define INCLUDED_GR_FEEDFORWARD_AGC_CC_H
-
-#include <gr_core_api.h>
-#include <gr_sync_block.h>
-
-class gr_feedforward_agc_cc;
-typedef boost::shared_ptr<gr_feedforward_agc_cc> gr_feedforward_agc_cc_sptr;
-
-GR_CORE_API gr_feedforward_agc_cc_sptr
-gr_make_feedforward_agc_cc(int nsamples, float reference = 1.0);
-
-/*!
- * \brief Non-causal AGC which computes required gain based on max absolute value over nsamples
- * \ingroup level_blk
- */
-class GR_CORE_API gr_feedforward_agc_cc : public gr_sync_block
-{
- friend GR_CORE_API gr_feedforward_agc_cc_sptr
- gr_make_feedforward_agc_cc(int nsamples, float reference);
-
- int d_nsamples;
- float d_reference;
-
- gr_feedforward_agc_cc(int nsamples, float reference);
-
- public:
- ~gr_feedforward_agc_cc();
-
- int work(int noutput_items,
- gr_vector_const_void_star &input_items,
- gr_vector_void_star &output_items);
-};
-
-#endif /* INCLUDED_GR_FEEDFORWARD_AGC_CC_H */
diff --git a/gnuradio-core/src/lib/general/gr_feedforward_agc_cc.i b/gnuradio-core/src/lib/general/gr_feedforward_agc_cc.i
deleted file mode 100644
index 1fd5a2c26d..0000000000
--- a/gnuradio-core/src/lib/general/gr_feedforward_agc_cc.i
+++ /dev/null
@@ -1,34 +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.
- */
-
-GR_SWIG_BLOCK_MAGIC(gr,feedforward_agc_cc);
-
-gr_feedforward_agc_cc_sptr
-gr_make_feedforward_agc_cc(int nsamples, float reference = 1.0);
-
-class gr_feedforward_agc_cc : public gr_sync_block
-{
- gr_feedforward_agc_cc(int nsamples, float reference);
-
- public:
- ~gr_feedforward_agc_cc();
-};
diff --git a/gnuradio-core/src/lib/general/gri_agc2_cc.h b/gnuradio-core/src/lib/general/gri_agc2_cc.h
deleted file mode 100644
index 55aa19b9ae..0000000000
--- a/gnuradio-core/src/lib/general/gri_agc2_cc.h
+++ /dev/null
@@ -1,91 +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 _GRI_AGC2_CC_H_
-#define _GRI_AGC2_CC_H_
-
-#include <gr_core_api.h>
-#include <math.h>
-
-/*!
- * \brief high performance Automatic Gain Control class
- *
- * For Power the absolute value of the complex number is used.
- */
-class GR_CORE_API gri_agc2_cc {
-
- public:
- gri_agc2_cc (float attack_rate = 1e-1, float decay_rate = 1e-2, float reference = 1.0,
- float gain = 1.0, float max_gain = 0.0)
- : _attack_rate(attack_rate), _decay_rate(decay_rate), _reference(reference),
- _gain(gain), _max_gain(max_gain) {};
-
- float decay_rate () const { return _decay_rate; }
- float attack_rate () const { return _attack_rate; }
- float reference () const { return _reference; }
- float gain () const { return _gain; }
- float max_gain() const { return _max_gain; }
-
- void set_decay_rate (float rate) { _decay_rate = rate; }
- void set_attack_rate (float rate) { _attack_rate = rate; }
- void set_reference (float reference) { _reference = reference; }
- void set_gain (float gain) { _gain = gain; }
- void set_max_gain(float max_gain) { _max_gain = max_gain; }
-
- gr_complex scale (gr_complex input){
- gr_complex output = input * _gain;
-
- float tmp = -_reference + sqrt(output.real()*output.real() +
- output.imag()*output.imag());
- float rate = _decay_rate;
- if((tmp) > _gain)
- rate = _attack_rate;
- _gain -= tmp*rate;
-
-#if 0
- fprintf(stdout, "rate = %f\ttmp = %f\t gain = %f\n", rate, tmp, _gain);
-#endif
-
- // Not sure about this; will blow up if _gain < 0 (happens when rates are too high),
- // but is this the solution?
- if (_gain < 0.0)
- _gain = 10e-5;
-
- if (_max_gain > 0.0 && _gain > _max_gain)
- _gain = _max_gain;
- return output;
- }
-
- void scaleN (gr_complex output[], const gr_complex input[], unsigned n){
- for (unsigned i = 0; i < n; i++)
- output[i] = scale (input[i]);
- }
-
- protected:
- float _attack_rate; // attack rate for fast changing signals
- float _decay_rate; // decay rate for slow changing signals
- float _reference; // reference value
- float _gain; // current gain
- float _max_gain; // max allowable gain
-};
-
-#endif /* _GRI_AGC2_CC_H_ */
diff --git a/gnuradio-core/src/lib/general/gri_agc2_cc.i b/gnuradio-core/src/lib/general/gri_agc2_cc.i
deleted file mode 100644
index 08716c6edc..0000000000
--- a/gnuradio-core/src/lib/general/gri_agc2_cc.i
+++ /dev/null
@@ -1,47 +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.
- */
-
-#include <math.h>
-
-/*!
- * \brief high performance Automatic Gain Control class with attack and decay rates
- *
- * For Power the absolute value of the complex number is used.
- */
-
-
-class gri_agc2_cc {
-
- public:
- gri_agc2_cc (float attack_rate = 1e-1, float decay_rate = 1e-2, float reference = 1.0,
- float gain = 1.0, float max_gain = 0.0);
- float decay_rate ();
- float attack_rate ();
- float reference ();
- float gain ();
- float max_gain ();
- void set_decay_rate (float rate);
- void set_attack_rate (float rate);
- void set_reference (float reference);
- void set_gain (float gain);
- void set_max_gain(float max_gain);
- };
diff --git a/gnuradio-core/src/lib/general/gri_agc2_ff.h b/gnuradio-core/src/lib/general/gri_agc2_ff.h
deleted file mode 100644
index a8b46bec5c..0000000000
--- a/gnuradio-core/src/lib/general/gri_agc2_ff.h
+++ /dev/null
@@ -1,90 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2002,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 _GRI_AGC2_FF_H_
-#define _GRI_AGC2_FF_H_
-
-#include <gr_core_api.h>
-#include <math.h>
-
-/*!
- * \brief high performance Automatic Gain Control class with attack and decay rate
- *
- * Power is approximated by absolute value
- */
-
-class GR_CORE_API gri_agc2_ff {
-
- public:
- gri_agc2_ff (float attack_rate = 1e-1, float decay_rate = 1e-2, float reference = 1.0,
- float gain = 1.0, float max_gain = 0.0)
- : _attack_rate(attack_rate), _decay_rate(decay_rate), _reference(reference),
- _gain(gain), _max_gain(max_gain) {};
-
- float attack_rate () const { return _attack_rate; }
- float decay_rate () const { return _decay_rate; }
- float reference () const { return _reference; }
- float gain () const { return _gain; }
- float max_gain () const { return _max_gain; }
-
- void set_attack_rate (float rate) { _attack_rate = rate; }
- void set_decay_rate (float rate) { _decay_rate = rate; }
- void set_reference (float reference) { _reference = reference; }
- void set_gain (float gain) { _gain = gain; }
- void set_max_gain (float max_gain) { _max_gain = max_gain; }
-
- float scale (float input){
- float output = input * _gain;
-
- float tmp = (fabsf(output)) - _reference;
- float rate = _decay_rate;
- if(fabsf(tmp) > _gain)
- rate = _attack_rate;
- _gain -= tmp*rate;
-
-#if 0
- fprintf(stdout, "rate = %f\ttmp = %f\t gain = %f\n", rate, tmp, _gain);
-#endif
-
- // Not sure about this
- if (_gain < 0.0)
- _gain = 10e-5;
-
- if (_max_gain > 0.0 && _gain > _max_gain)
- _gain = _max_gain;
- return output;
- }
-
- void scaleN (float output[], const float input[], unsigned n){
- for (unsigned i = 0; i < n; i++)
- output[i] = scale (input[i]);
- }
-
- protected:
- float _attack_rate; // attack_rate for fast changing signals
- float _decay_rate; // decay rate for slow changing signals
- float _reference; // reference value
- float _gain; // current gain
- float _max_gain; // maximum gain
-};
-
-#endif /* _GRI_AGC2_FF_H_ */
diff --git a/gnuradio-core/src/lib/general/gri_agc2_ff.i b/gnuradio-core/src/lib/general/gri_agc2_ff.i
deleted file mode 100644
index 9f97d8f0dd..0000000000
--- a/gnuradio-core/src/lib/general/gri_agc2_ff.i
+++ /dev/null
@@ -1,47 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2005,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.
- */
-
-#include <math.h>
-
-/*!
- * \brief high performance Automatic Gain Control class
- *
- * Power is approximated by absolute value
- */
-
-
-class gri_agc2_ff {
-
- public:
- gri_agc2_ff (float attack_rate = 1e-1, float decay_rate = 1e-2,
- float reference = 1.0, float gain = 1.0, float max_gain = 0.0);
- float attack_rate ();
- float decay_rate ();
- float reference ();
- float gain ();
- float max_gain ();
- void set_attack_rate (float rate);
- void set_decay_rate (float rate);
- void set_reference (float reference);
- void set_gain (float gain);
- void set_max_gain (float max_gain);
- };
diff --git a/gnuradio-core/src/lib/general/gri_agc_cc.h b/gnuradio-core/src/lib/general/gri_agc_cc.h
deleted file mode 100644
index 90edc5dcd2..0000000000
--- a/gnuradio-core/src/lib/general/gri_agc_cc.h
+++ /dev/null
@@ -1,75 +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_GRI_AGC_CC_H
-#define INCLUDED_GRI_AGC_CC_H
-
-#include <gr_core_api.h>
-#include <math.h>
-
-/*!
- * \brief high performance Automatic Gain Control class
- *
- * For Power the absolute value of the complex number is used.
- */
-
-class GR_CORE_API gri_agc_cc {
-
- public:
- gri_agc_cc (float rate = 1e-4, float reference = 1.0,
- float gain = 1.0, float max_gain = 0.0)
- : _rate(rate), _reference(reference),
- _gain(gain), _max_gain(max_gain) {};
-
- float rate () const { return _rate; }
- float reference () const { return _reference; }
- float gain () const { return _gain; }
- float max_gain() const { return _max_gain; }
-
- void set_rate (float rate) { _rate = rate; }
- void set_reference (float reference) { _reference = reference; }
- void set_gain (float gain) { _gain = gain; }
- void set_max_gain(float max_gain) { _max_gain = max_gain; }
-
- gr_complex scale (gr_complex input){
- gr_complex output = input * _gain;
-
- _gain += _rate * (_reference - sqrt(output.real()*output.real() +
- output.imag()*output.imag()));
- if (_max_gain > 0.0 && _gain > _max_gain)
- _gain = _max_gain;
- return output;
- }
-
- void scaleN (gr_complex output[], const gr_complex input[], unsigned n){
- for (unsigned i = 0; i < n; i++)
- output[i] = scale (input[i]);
- }
-
- protected:
- float _rate; // adjustment rate
- float _reference; // reference value
- float _gain; // current gain
- float _max_gain; // max allowable gain
-};
-
-#endif /* INCLUDED_GRI_AGC_CC_H */
diff --git a/gnuradio-core/src/lib/general/gri_agc_cc.i b/gnuradio-core/src/lib/general/gri_agc_cc.i
deleted file mode 100644
index d3dd9b61bc..0000000000
--- a/gnuradio-core/src/lib/general/gri_agc_cc.i
+++ /dev/null
@@ -1,41 +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.
- */
-
-#include <math.h>
-
-/*!
- * \brief high performance Automatic Gain Control class
- *
- * For Power the absolute value of the complex number is used.
- */
-
-
-class gri_agc_cc {
-
- public:
- gri_agc_cc (float rate = 1e-4, float reference = 1.0,
- float gain = 1.0, float max_gain = 0.0);
- float rate ();
- float reference ();
- float gain ();
- float max_gain ();
- };
diff --git a/gnuradio-core/src/lib/general/gri_agc_ff.h b/gnuradio-core/src/lib/general/gri_agc_ff.h
deleted file mode 100644
index 1c233c7461..0000000000
--- a/gnuradio-core/src/lib/general/gri_agc_ff.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2002,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_GRI_AGC_FF_H
-#define INCLUDED_GRI_AGC_FF_H
-
-#include <gr_core_api.h>
-#include <math.h>
-
-/*!
- * \brief high performance Automatic Gain Control class
- *
- * Power is approximated by absolute value
- */
-class GR_CORE_API gri_agc_ff {
-
- public:
- gri_agc_ff (float rate = 1e-4, float reference = 1.0,
- float gain = 1.0, float max_gain = 0.0)
- : _rate(rate), _reference(reference), _gain(gain), _max_gain(max_gain) {};
-
- float rate () const { return _rate; }
- float reference () const { return _reference; }
- float gain () const { return _gain; }
- float max_gain () const { return _max_gain; }
-
- void set_rate (float rate) { _rate = rate; }
- void set_reference (float reference) { _reference = reference; }
- void set_gain (float gain) { _gain = gain; }
- void set_max_gain (float max_gain) { _max_gain = max_gain; }
-
- float scale (float input){
- float output = input * _gain;
- _gain += (_reference - fabsf (output)) * _rate;
- if (_max_gain > 0.0 && _gain > _max_gain)
- _gain = _max_gain;
- return output;
- }
-
- void scaleN (float output[], const float input[], unsigned n){
- for (unsigned i = 0; i < n; i++)
- output[i] = scale (input[i]);
- }
-
- protected:
- float _rate; // adjustment rate
- float _reference; // reference value
- float _gain; // current gain
- float _max_gain; // maximum gain
-};
-
-#endif /* INCLUDED_GRI_AGC_FF_H */
-
diff --git a/gnuradio-core/src/lib/general/gri_agc_ff.i b/gnuradio-core/src/lib/general/gri_agc_ff.i
deleted file mode 100644
index df4acf7af8..0000000000
--- a/gnuradio-core/src/lib/general/gri_agc_ff.i
+++ /dev/null
@@ -1,36 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2005,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.
- */
-
-#include <math.h>
-
-/*!
- * \brief high performance Automatic Gain Control class
- *
- * Power is approximated by absolute value
- */
-
-class gri_agc_ff {
-
- public:
- gri_agc_ff (float rate = 1e-4, float reference = 1.0,
- float gain = 1.0, float max_gain = 0.0);
-};