commit-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commit-gnuradio] r7556 - gnuradio/branches/developers/gnychis/matched_f


From: gnychis
Subject: [Commit-gnuradio] r7556 - gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter
Date: Mon, 4 Feb 2008 15:01:48 -0700 (MST)

Author: gnychis
Date: 2008-02-04 15:01:47 -0700 (Mon, 04 Feb 2008)
New Revision: 7556

Added:
   
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/gr_matched_filter_ccc.cc
   
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/gr_matched_filter_ccc.h
   
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/gr_matched_filter_ccc.i
Modified:
   
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/Makefile.am
   
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/filter.i
Log:
Bare matched filter block to start with


Modified: 
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/Makefile.am
===================================================================
--- 
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/Makefile.am
        2008-02-04 20:50:28 UTC (rev 7555)
+++ 
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/Makefile.am
        2008-02-04 22:01:47 UTC (rev 7556)
@@ -174,6 +174,7 @@
        gr_fractional_interpolator_cc.cc \
        gr_hilbert_fc.cc                \
        gr_iir_filter_ffd.cc            \
+       gr_matched_filter_ccc.cc        \
        gr_sincos.c                     \
        gr_single_pole_iir_filter_ff.cc \
        gr_single_pole_avg_filter_ff.cc \
@@ -237,6 +238,7 @@
        gr_hilbert_fc.h                 \
        gr_iir_filter_ffd.h             \
        gr_rotator.h                    \
+       gr_matched_filter_ccc.h \
        gr_sincos.h                     \
        gr_single_pole_avg.h            \
        gr_single_pole_rec.h            \
@@ -300,6 +302,7 @@
        gr_goertzel_fc.i                \
        gr_hilbert_fc.i                 \
        gr_iir_filter_ffd.i             \
+       gr_matched_filter_ccc.i \
        gr_single_pole_iir_filter_ff.i  \
        gr_single_pole_avg_filter_ff.i  \
        gr_single_pole_rec_filter_ff.i  \

Modified: 
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/filter.i
===================================================================
--- 
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/filter.i
   2008-02-04 20:50:28 UTC (rev 7555)
+++ 
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/filter.i
   2008-02-04 22:01:47 UTC (rev 7556)
@@ -32,6 +32,7 @@
 #include <gr_fractional_interpolator_cc.h>
 #include <gr_goertzel_fc.h>
 #include <gr_cma_equalizer_cc.h>
+#include <gr_matched_filter_ccc.h>
 %}
 
 %include "gr_iir_filter_ffd.i"
@@ -45,5 +46,6 @@
 %include "gr_fractional_interpolator_cc.i"
 %include "gr_goertzel_fc.i"
 %include "gr_cma_equalizer_cc.i"
+%include "gr_matched_filter_ccc.i"
 
 %include "filter_generated.i"

Added: 
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/gr_matched_filter_ccc.cc
===================================================================
--- 
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/gr_matched_filter_ccc.cc
                           (rev 0)
+++ 
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/gr_matched_filter_ccc.cc
   2008-02-04 22:01:47 UTC (rev 7556)
@@ -0,0 +1,75 @@
+/* -*- c++ -*- */
+/*
+ * Copyright 2007 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_matched_filter_ccc.h>
+#include <gr_io_signature.h>
+#include <math.h>
+#include <assert.h>
+#include <stdexcept>
+#include <gr_firdes.h>
+
+#include <iostream>
+
+gr_matched_filter_ccc_sptr
+gr_make_matched_filter_ccc(const std::vector<gr_complex> &taps)
+{
+  return gr_matched_filter_ccc_sptr (new gr_matched_filter_ccc(taps));
+}
+
+gr_matched_filter_ccc::gr_matched_filter_ccc (const std::vector<gr_complex> 
&taps)
+  : gr_sync_block ("matched_filter_ccc", 
+    gr_make_io_signature (1, 1, sizeof(gr_complex)),
+    gr_make_io_signature (1, 1, sizeof(gr_complex)))
+{
+  actual_set_taps(taps);  
+}
+
+gr_matched_filter_ccc::~gr_matched_filter_ccc()
+{
+}
+
+void
+gr_matched_filter_ccc::set_taps (const std::vector<gr_complex> &taps)
+{
+
+}
+
+void
+gr_matched_filter_ccc::actual_set_taps (const std::vector<gr_complex> &taps)
+{
+
+}
+
+int
+gr_matched_filter_ccc::work (int noutput_items,
+      gr_vector_const_void_star &input_items,
+      gr_vector_void_star &output_items)
+{
+  gr_complex *in = (gr_complex *) input_items[0];
+  gr_complex *out = (gr_complex *) output_items[0];
+
+  return noutput_items;
+}

Added: 
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/gr_matched_filter_ccc.h
===================================================================
--- 
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/gr_matched_filter_ccc.h
                            (rev 0)
+++ 
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/gr_matched_filter_ccc.h
    2008-02-04 22:01:47 UTC (rev 7556)
@@ -0,0 +1,63 @@
+/* -*- c++ -*- */
+/*
+ * Copyright 2007 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_MATCHED_FILTER_CCC_H
+#define INCLUDED_GR_MATCHED_FILTER_CCC_H
+
+#include <gr_sync_block.h>
+#include <gr_io_signature.h>
+
+class gr_matched_filter_ccc;
+typedef boost::shared_ptr<gr_matched_filter_ccc> gr_matched_filter_ccc_sptr;
+
+gr_matched_filter_ccc_sptr
+gr_make_matched_filter_ccc (const std::vector<gr_complex> &taps);
+
+class gr_fir_ccc;
+
+/*!
+ * \brief Matched filter with gr_complex input, gr_complex output, and 
gr_complex taps.
+ * \ingroup filter;
+ */
+class gr_matched_filter_ccc : public gr_sync_block
+{
+ private:
+  friend gr_matched_filter_ccc_sptr gr_make_matched_filter_ccc (const 
std::vector<gr_complex> &taps);
+
+  gr_matched_filter_ccc(const std::vector<gr_complex> &taps);
+
+  int    d_ntaps;
+  int    d_nsamples;
+
+  void actual_set_taps(const std::vector<gr_complex> &taps);
+
+ public:
+  ~gr_matched_filter_ccc ();
+  
+  void set_taps (const std::vector<gr_complex> &taps);
+
+  int work(int noutput_items,
+      gr_vector_const_void_star &input_items,
+      gr_vector_void_star &output_items);
+};
+
+#endif

Added: 
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/gr_matched_filter_ccc.i
===================================================================
--- 
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/gr_matched_filter_ccc.i
                            (rev 0)
+++ 
gnuradio/branches/developers/gnychis/matched_filter/gnuradio-core/src/lib/filter/gr_matched_filter_ccc.i
    2008-02-04 22:01:47 UTC (rev 7556)
@@ -0,0 +1,37 @@
+/* -*- c++ -*- */
+/*
+ * Copyright 2007 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,matched_filter_ccc)
+
+gr_matched_filter_ccc_sptr
+gr_make_matched_filter_ccc (const std::vector<gr_complex> &taps);
+
+class gr_matched_filter_ccc : public gr_sync_block
+{
+ private:
+  gr_matched_filter_ccc (const std::vector<gr_complex> &taps);
+
+ public:
+  ~gr_matched_filter_ccc();
+
+  void set_taps(const std::vector<gr_complex> &taps);
+};





reply via email to

[Prev in Thread] Current Thread [Next in Thread]