summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPiotr Krysik <perper@o2.pl>2009-04-07 17:25:12 +0200
committerPiotr Krysik <perper@o2.pl>2009-04-07 17:25:12 +0200
commitf0457b0b5888fd4d652531b987c9d113e8d1234a (patch)
tree587b254996a2259ef0db0f3a135d01e19ef7a8f0 /src
parent39a50c763240da578a05a6b651776804786d813a (diff)
New empty gsm-receiver signal block with its own library - compiles
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.am3
-rw-r--r--src/lib/Makefile.am16
-rw-r--r--src/lib/gsm_receiver.h78
-rw-r--r--src/lib/gsm_receiver.i21
-rw-r--r--src/lib/gsm_receiver_cf.cc8
-rw-r--r--src/lib/gsm_receiver_cf.h6
6 files changed, 23 insertions, 109 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index e3f0399..3ff9849 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -19,4 +19,5 @@
# Boston, MA 02110-1301, USA.
#
-SUBDIRS = lib python
+SUBDIRS = lib
+
diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index c6aa929..fb63599 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -58,10 +58,13 @@ ourpython_PYTHON = \
ourlib_LTLIBRARIES = _gsm_receiver.la
+lib_LTLIBRARIES = libgsm-receiver.la
+
# These are the source files that go into the shared library
-_howto_la_SOURCES = \
- gsm_receiver.cc \
- gsm_receiver_cf.cc \
+_gsm_receiver_la_SOURCES = \
+ gsm_receiver.cc
+
+libgsm_receiver_la_SOURCES = \
gsm_receiver_cf.cc
# magic flags
@@ -71,17 +74,18 @@ _gsm_receiver_la_LDFLAGS = $(NO_UNDEFINED) -module -avoid-version
# c++ standard library
_gsm_receiver_la_LIBADD = \
$(PYTHON_LDFLAGS) \
+ libgsm-receiver.la \
-lstdc++
+#libgsm_receiver_la_LIBADD =
+
gsm_receiver.cc gsm_receiver.py: $(LOCAL_IFILES) $(ALL_IFILES)
- $(SWIG) $(SWIGPYTHONARGS) -module howto -o gsm_receiver.cc $(LOCAL_IFILES)
+ $(SWIG) $(SWIGPYTHONARGS) -module gsm_receiver -o gsm_receiver.cc $(LOCAL_IFILES)
# These headers get installed in ${prefix}/include/gnuradio
grinclude_HEADERS = \
- gsm_receiver_cf.h \
gsm_receiver_cf.h
-
# These swig headers get installed in ${prefix}/include/gnuradio/swig
swiginclude_HEADERS = \
$(LOCAL_IFILES)
diff --git a/src/lib/gsm_receiver.h b/src/lib/gsm_receiver.h
deleted file mode 100644
index 092b936..0000000
--- a/src/lib/gsm_receiver.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2004 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_HOWTO_SQUARE_FF_H
-#define INCLUDED_HOWTO_SQUARE_FF_H
-
-#include <gr_block.h>
-
-class howto_square_ff;
-
-/*
- * We use boost::shared_ptr's instead of raw pointers for all access
- * to gr_blocks (and many other data structures). The shared_ptr gets
- * us transparent reference counting, which greatly simplifies storage
- * management issues. This is especially helpful in our hybrid
- * C++ / Python system.
- *
- * See http://www.boost.org/libs/smart_ptr/smart_ptr.htm
- *
- * As a convention, the _sptr suffix indicates a boost::shared_ptr
- */
-typedef boost::shared_ptr<howto_square_ff> howto_square_ff_sptr;
-
-/*!
- * \brief Return a shared_ptr to a new instance of howto_square_ff.
- *
- * To avoid accidental use of raw pointers, howto_square_ff's
- * constructor is private. howto_make_square_ff is the public
- * interface for creating new instances.
- */
-howto_square_ff_sptr howto_make_square_ff ();
-
-/*!
- * \brief square a stream of floats.
- * \ingroup block
- *
- * \sa howto_square2_ff for a version that subclasses gr_sync_block.
- */
-class howto_square_ff : public gr_block
-{
-private:
- // The friend declaration allows howto_make_square_ff to
- // access the private constructor.
-
- friend howto_square_ff_sptr howto_make_square_ff ();
-
- howto_square_ff (); // private constructor
-
- public:
- ~howto_square_ff (); // public destructor
-
- // Where all the action really happens
-
- int general_work (int noutput_items,
- gr_vector_int &ninput_items,
- gr_vector_const_void_star &input_items,
- gr_vector_void_star &output_items);
-};
-
-#endif /* INCLUDED_HOWTO_SQUARE_FF_H */
diff --git a/src/lib/gsm_receiver.i b/src/lib/gsm_receiver.i
index 3d46ab4..d5ca598 100644
--- a/src/lib/gsm_receiver.i
+++ b/src/lib/gsm_receiver.i
@@ -7,8 +7,7 @@
%{
#include "gnuradio_swig_bug_workaround.h" // mandatory bug fix
-#include "howto_square_ff.h"
-#include "howto_square2_ff.h"
+#include "gsm_receiver_cf.h"
#include <stdexcept>
%}
@@ -21,24 +20,14 @@
* This does some behind-the-scenes magic so we can
* access howto_square_ff from python as howto.square_ff
*/
-GR_SWIG_BLOCK_MAGIC(howto,square_ff);
+GR_SWIG_BLOCK_MAGIC(gsm,receiver_cf);
-howto_square_ff_sptr howto_make_square_ff ();
+gsm_receiver_cf_sptr gsm_make_receiver_cf ();
-class howto_square_ff : public gr_block
+class gsm_receiver_cf : public gr_block
{
private:
- howto_square_ff ();
+ gsm_receiver_cf ();
};
// ----------------------------------------------------------------
-
-GR_SWIG_BLOCK_MAGIC(howto,square2_ff);
-
-howto_square2_ff_sptr howto_make_square2_ff ();
-
-class howto_square2_ff : public gr_sync_block
-{
-private:
- howto_square2_ff ();
-};
diff --git a/src/lib/gsm_receiver_cf.cc b/src/lib/gsm_receiver_cf.cc
index 7001b91..6ea2ba7 100644
--- a/src/lib/gsm_receiver_cf.cc
+++ b/src/lib/gsm_receiver_cf.cc
@@ -32,7 +32,7 @@
* a boost shared_ptr. This is effectively the public constructor.
*/
gsm_receiver_cf_sptr
-gsm_receiver_make_cf ()
+gsm_make_receiver_cf ()
{
return gsm_receiver_cf_sptr (new gsm_receiver_cf ());
}
@@ -59,15 +59,13 @@ gsm_receiver_cf::gsm_receiver_cf ()
gr_make_io_signature (MIN_IN, MAX_IN, sizeof (gr_complex)),
gr_make_io_signature (MIN_OUT, MAX_OUT, sizeof (float)))
{
- // nothing else required in this example
}
/*
- * Our virtual destructor.
+ * Virtual destructor.
*/
-gsm_receiver_square_ff::~gsm_receiver_cf ()
+gsm_receiver_cf::~gsm_receiver_cf ()
{
- // nothing else required in this example
}
int
diff --git a/src/lib/gsm_receiver_cf.h b/src/lib/gsm_receiver_cf.h
index c56a2f0..f45e47a 100644
--- a/src/lib/gsm_receiver_cf.h
+++ b/src/lib/gsm_receiver_cf.h
@@ -25,7 +25,7 @@
#include <gr_block.h>
#include <gr_complex.h>
-class gsm_receiver_cf.h;
+class gsm_receiver_cf;
/*
* We use boost::shared_ptr's instead of raw pointers for all access
@@ -47,7 +47,7 @@ typedef boost::shared_ptr<gsm_receiver_cf> gsm_receiver_cf_sptr;
* constructor is private. howto_make_square_ff is the public
* interface for creating new instances.
*/
-gsm_receiver_cf_sptr gsm_receiver_make_square_cf ();
+gsm_receiver_cf_sptr gsm_make_receiver_cf ();
/*!
* \brief square a stream of floats.
@@ -58,7 +58,7 @@ gsm_receiver_cf_sptr gsm_receiver_make_square_cf ();
class gsm_receiver_cf : public gr_block
{
private:
- friend gsm_receiver_cf_sptr gsm_receiver_make_square_cf ();
+ friend gsm_receiver_cf_sptr gsm_make_receiver_cf ();
gsm_receiver_cf ();
personal git repositories of Harald Welte. Your mileage may vary