summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--TODO.txt5
m---------gnuradio0
-rw-r--r--include/gnuradio/gr_block.h12
-rw-r--r--include/gnuradio/gr_hier_block2.h2
-rw-r--r--include/gnuradio/gr_sync_block.h2
-rw-r--r--include/gnuradio/gr_sync_decimator.h2
-rw-r--r--include/gnuradio/gr_sync_interpolator.h2
-rw-r--r--include/gnuradio/gr_top_block.h2
-rw-r--r--include/gnuradio/gr_types.h91
-rw-r--r--lib/element_impl.hpp1
10 files changed, 51 insertions, 68 deletions
diff --git a/TODO.txt b/TODO.txt
index f76981c..2bdea83 100644
--- a/TODO.txt
+++ b/TODO.txt
@@ -13,6 +13,8 @@
* handle calculating noutputitems using ninputs as a constraint
* allocation
** hooks for advanced allocation
+** override the default allocator (output token, recommended bytes)
+** set allocator affinity hook
* python wrapper for block will come from grextras
* bring in numanuma
** thread prio
@@ -21,3 +23,6 @@
* track memcpys for block usage stats
* runtime history, input/output multiple change?
** resend the hint to the allocator and possibly re-allocate
+* determine when outputs should be flushed, or continual filling
+* hooks for setting the "active framework"
+** set this before creating blocks to give them an affinity
diff --git a/gnuradio b/gnuradio
-Subproject 00eca71506a89b19fff2081d158a3da5a36a18e
+Subproject 5b64019e6c1640edd13ae04fea251b144c0d2fb
diff --git a/include/gnuradio/gr_block.h b/include/gnuradio/gr_block.h
index 3bd0cc0..1abeab6 100644
--- a/include/gnuradio/gr_block.h
+++ b/include/gnuradio/gr_block.h
@@ -18,12 +18,16 @@
#define INCLUDED_GNURADIO_GR_BLOCK_H
#include <gnuradio/block.hpp>
-#include <gr_io_signature.h>
-#include <gr_sptr_magic.h>
-#include <gr_types.h>
-#include <gr_tags.h>
+#include <gnuradio/gr_io_signature.h>
+#include <gnuradio/gr_sptr_magic.h>
+#include <gnuradio/gr_types.h>
+#include <gnuradio/gr_tags.h>
#include <string>
+typedef std::vector<int> gr_vector_int;
+typedef std::vector<void *> gr_vector_void_star;
+typedef std::vector<const void *> gr_vector_const_void_star;
+
struct GRAS_API gr_block : gnuradio::Block
{
diff --git a/include/gnuradio/gr_hier_block2.h b/include/gnuradio/gr_hier_block2.h
index 4bd52ac..16b3b86 100644
--- a/include/gnuradio/gr_hier_block2.h
+++ b/include/gnuradio/gr_hier_block2.h
@@ -18,7 +18,7 @@
#define INCLUDED_GNURADIO_GR_HIER_BLOCK2_H
#include <gnuradio/hier_block.hpp>
-#include <gr_io_signature.h>
+#include <gnuradio/gr_io_signature.h>
struct GRAS_API gr_hier_block2 : gnuradio::HierBlock
{
diff --git a/include/gnuradio/gr_sync_block.h b/include/gnuradio/gr_sync_block.h
index e7cc06c..f588505 100644
--- a/include/gnuradio/gr_sync_block.h
+++ b/include/gnuradio/gr_sync_block.h
@@ -17,7 +17,7 @@
#ifndef INCLUDED_GNURADIO_GR_SYNC_BLOCK_H
#define INCLUDED_GNURADIO_GR_SYNC_BLOCK_H
-#include <gr_block.h>
+#include <gnuradio/gr_block.h>
struct GRAS_API gr_sync_block : public gr_block
{
diff --git a/include/gnuradio/gr_sync_decimator.h b/include/gnuradio/gr_sync_decimator.h
index 526594f..c5cec07 100644
--- a/include/gnuradio/gr_sync_decimator.h
+++ b/include/gnuradio/gr_sync_decimator.h
@@ -17,7 +17,7 @@
#ifndef INCLUDED_GNURADIO_GR_SYNC_DECIMATOR_H
#define INCLUDED_GNURADIO_GR_SYNC_DECIMATOR_H
-#include <gr_sync_block.h>
+#include <gnuradio/gr_sync_block.h>
struct GRAS_API gr_sync_decimator : gr_sync_block
{
diff --git a/include/gnuradio/gr_sync_interpolator.h b/include/gnuradio/gr_sync_interpolator.h
index ff3c425..0545223 100644
--- a/include/gnuradio/gr_sync_interpolator.h
+++ b/include/gnuradio/gr_sync_interpolator.h
@@ -17,7 +17,7 @@
#ifndef INCLUDED_GNURADIO_GR_SYNC_INTERPOLATOR_H
#define INCLUDED_GNURADIO_GR_SYNC_INTERPOLATOR_H
-#include <gr_sync_block.h>
+#include <gnuradio/gr_sync_block.h>
struct GRAS_API gr_sync_interpolator : gr_sync_block
{
diff --git a/include/gnuradio/gr_top_block.h b/include/gnuradio/gr_top_block.h
index 98558e5..5b4f8d9 100644
--- a/include/gnuradio/gr_top_block.h
+++ b/include/gnuradio/gr_top_block.h
@@ -18,7 +18,7 @@
#define INCLUDED_GNURADIO_GR_TOP_BLOCK_H
#include <gnuradio/top_block.hpp>
-#include <gr_hier_block2.h>
+#include <gnuradio/gr_hier_block2.h>
struct GRAS_API gr_top_block : gnuradio::TopBlock
{
diff --git a/include/gnuradio/gr_types.h b/include/gnuradio/gr_types.h
index f7d1cee..0da08cc 100644
--- a/include/gnuradio/gr_types.h
+++ b/include/gnuradio/gr_types.h
@@ -1,70 +1,45 @@
-/* -*- 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.
- */
+//
+// Copyright 2012 Josh Blum
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Lesser General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program 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 Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public License
+// along with io_sig program. If not, see <http://www.gnu.org/licenses/>.
-#ifndef INCLUDED_GR_TYPES_H
-#define INCLUDED_GR_TYPES_H
+#ifndef INCLUDED_GRNURADIO_TYPES_H
+#define INCLUDED_GRNURADIO_TYPES_H
+// this section is to satisfy swig includes for gnuradio.i
+// since gnuradio.i includes gr_types.h, we only have to edit this file
#include <gnuradio/io_signature.hpp>
#include <gnuradio/element.hpp>
#include <gnuradio/block.hpp>
#include <gnuradio/top_block.hpp>
#include <gnuradio/hier_block.hpp>
-#include <gr_core_api.h>
-#include <boost/shared_ptr.hpp>
-#include <vector>
-#include <stddef.h> // size_t
+// and gnuradio apparently needs its own typedefs for stdint...
+#ifdef __cplusplus
-#include <gr_complex.h>
+#include <boost/cstdint.hpp>
+typedef boost::int16_t gr_int16;
+typedef boost::int32_t gr_int32;
+typedef boost::int64_t gr_int64;
+typedef boost::uint16_t gr_uint16;
+typedef boost::uint32_t gr_uint32;
+typedef boost::uint64_t gr_uint64;
-typedef std::vector<int> gr_vector_int;
-typedef std::vector<float> gr_vector_float;
-typedef std::vector<double> gr_vector_double;
-typedef std::vector<void *> gr_vector_void_star;
-typedef std::vector<const void *> gr_vector_const_void_star;
+#include <complex>
+typedef std::complex<float> gr_complex;
+typedef std::complex<double> gr_complexd;
-/*
- * #include <config.h> must be placed beforehand
- * in the source file including gr_types.h for
- * the following to work correctly
- */
-#ifdef HAVE_STDINT_H
-#include <stdint.h>
-typedef int16_t gr_int16;
-typedef int32_t gr_int32;
-typedef int64_t gr_int64;
-typedef uint16_t gr_uint16;
-typedef uint32_t gr_uint32;
-typedef uint64_t gr_uint64;
-#else
-/*
- * Note: these defaults may be wrong on 64-bit systems
- */
-typedef short gr_int16;
-typedef int gr_int32;
-typedef long long gr_int64;
-typedef unsigned short gr_uint16;
-typedef unsigned int gr_uint32;
-typedef unsigned long long gr_uint64;
-#endif /* HAVE_STDINT_H */
+#endif
-#endif /* INCLUDED_GR_TYPES_H */
+#endif /* INCLUDED_GRNURADIO_TYPES_H */
diff --git a/lib/element_impl.hpp b/lib/element_impl.hpp
index 11aa305..0ec4650 100644
--- a/lib/element_impl.hpp
+++ b/lib/element_impl.hpp
@@ -29,7 +29,6 @@
#include <tsbe/executor.hpp>
#include <gnuradio/element.hpp>
#include <gnuradio/block.hpp>
-#include <gr_types.h>
#include <set>
#include <vector>
#include <queue>