summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohnathan Corgan <johnathan@corganlabs.com>2013-06-07 10:09:57 -0400
committerJohnathan Corgan <johnathan@corganlabs.com>2013-06-07 10:09:57 -0400
commitfed9214214380a1d8ce3aef8c3a953e0490adb1f (patch)
treefbe692bb9ddcb30481a0581c73ed842a5f28a806
parent997051fc85e6530c63adc9b718343e0615148c43 (diff)
parentcd5018f85a730ec697b34e7ff5ddfb20e8d97f33 (diff)
Merge remote-tracking branch 'reynwar/minorfixes'
-rw-r--r--docs/sphinx/source/index.rst2
-rw-r--r--docs/sphinx/source/shd.rst8
-rw-r--r--gnuradio-runtime/include/gnuradio/block.h52
-rw-r--r--gnuradio-runtime/lib/block.cc60
4 files changed, 67 insertions, 55 deletions
diff --git a/docs/sphinx/source/index.rst b/docs/sphinx/source/index.rst
index c5ac113524..491aaad4ce 100644
--- a/docs/sphinx/source/index.rst
+++ b/docs/sphinx/source/index.rst
@@ -54,14 +54,12 @@ Hardware Interfaces
gnuradio.uhd
gnuradio.fcd
- gnuradio.shd
.. toctree::
:hidden:
gnuradio.uhd <uhd>
gnuradio.fcd <fcd>
- gnuradio.shd <shd>
Utilities
---------
diff --git a/docs/sphinx/source/shd.rst b/docs/sphinx/source/shd.rst
deleted file mode 100644
index 6661ceb9b1..0000000000
--- a/docs/sphinx/source/shd.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-gnuradio.shd
-============
-
-.. automodule:: gnuradio.shd
-
-.. autoblock:: gnuradio.shd.shd_smini_sink
-.. autoblock:: gnuradio.shd.shd_smini_source
-
diff --git a/gnuradio-runtime/include/gnuradio/block.h b/gnuradio-runtime/include/gnuradio/block.h
index 114f68ddcf..b8cbcfc552 100644
--- a/gnuradio-runtime/include/gnuradio/block.h
+++ b/gnuradio-runtime/include/gnuradio/block.h
@@ -321,75 +321,37 @@ namespace gr {
* with 1 value; this is used by the flat_flowgraph to expand when
* required to add a new value for new ports on these blocks.
*/
- void expand_minmax_buffer(int port)
- {
- if((size_t)port >= d_max_output_buffer.size())
- set_max_output_buffer(port, -1);
- if((size_t)port >= d_min_output_buffer.size())
- set_min_output_buffer(port, -1);
- }
+ void expand_minmax_buffer(int port);
/*!
* \brief Returns max buffer size on output port \p i.
*/
- long max_output_buffer(size_t i)
- {
- if(i >= d_max_output_buffer.size())
- throw std::invalid_argument("basic_block::max_output_buffer: port out of range.");
- return d_max_output_buffer[i];
- }
+ long max_output_buffer(size_t i);
/*!
* \brief Sets max buffer size on all output ports.
*/
- void set_max_output_buffer(long max_output_buffer)
- {
- for(int i = 0; i < output_signature()->max_streams(); i++) {
- set_max_output_buffer(i, max_output_buffer);
- }
- }
+ void set_max_output_buffer(long max_output_buffer);
/*!
* \brief Sets max buffer size on output port \p port.
*/
- void set_max_output_buffer(int port, long max_output_buffer)
- {
- if((size_t)port >= d_max_output_buffer.size())
- d_max_output_buffer.push_back(max_output_buffer);
- else
- d_max_output_buffer[port] = max_output_buffer;
- }
+ void set_max_output_buffer(int port, long max_output_buffer);
/*!
* \brief Returns min buffer size on output port \p i.
*/
- long min_output_buffer(size_t i)
- {
- if(i >= d_min_output_buffer.size())
- throw std::invalid_argument("basic_block::min_output_buffer: port out of range.");
- return d_min_output_buffer[i];
- }
+ long min_output_buffer(size_t i);
/*!
* \brief Sets min buffer size on all output ports.
*/
- void set_min_output_buffer(long min_output_buffer)
- {
- for(int i=0; i<output_signature()->max_streams(); i++) {
- set_min_output_buffer(i, min_output_buffer);
- }
- }
+ void set_min_output_buffer(long min_output_buffer);
/*!
* \brief Sets min buffer size on output port \p port.
*/
- void set_min_output_buffer(int port, long min_output_buffer)
- {
- if((size_t)port >= d_min_output_buffer.size())
- d_min_output_buffer.push_back(min_output_buffer);
- else
- d_min_output_buffer[port] = min_output_buffer;
- }
+ void set_min_output_buffer(int port, long min_output_buffer);
// --------------- Performance counter functions -------------
diff --git a/gnuradio-runtime/lib/block.cc b/gnuradio-runtime/lib/block.cc
index f42dcc1788..7a55e09561 100644
--- a/gnuradio-runtime/lib/block.cc
+++ b/gnuradio-runtime/lib/block.cc
@@ -344,6 +344,66 @@ namespace gr {
return d_priority;
}
+ void
+ block::expand_minmax_buffer(int port)
+ {
+ if((size_t)port >= d_max_output_buffer.size())
+ set_max_output_buffer(port, -1);
+ if((size_t)port >= d_min_output_buffer.size())
+ set_min_output_buffer(port, -1);
+ }
+
+ long
+ block::max_output_buffer(size_t i)
+ {
+ if(i >= d_max_output_buffer.size())
+ throw std::invalid_argument("basic_block::max_output_buffer: port out of range.");
+ return d_max_output_buffer[i];
+ }
+
+ void
+ block::set_max_output_buffer(long max_output_buffer)
+ {
+ for(int i = 0; i < output_signature()->max_streams(); i++) {
+ set_max_output_buffer(i, max_output_buffer);
+ }
+ }
+
+ void
+ block::set_max_output_buffer(int port, long max_output_buffer)
+ {
+ if((size_t)port >= d_max_output_buffer.size())
+ d_max_output_buffer.push_back(max_output_buffer);
+ else
+ d_max_output_buffer[port] = max_output_buffer;
+ }
+
+ long
+ block::min_output_buffer(size_t i)
+ {
+ if(i >= d_min_output_buffer.size())
+ throw std::invalid_argument("basic_block::min_output_buffer: port out of range.");
+ return d_min_output_buffer[i];
+ }
+
+ void
+ block::set_min_output_buffer(long min_output_buffer)
+ {
+ std::cout << "set_min_output_buffer on block " << unique_id() << " to " << min_output_buffer << std::endl;
+ for(int i=0; i<output_signature()->max_streams(); i++) {
+ set_min_output_buffer(i, min_output_buffer);
+ }
+ }
+
+ void
+ block::set_min_output_buffer(int port, long min_output_buffer)
+ {
+ if((size_t)port >= d_min_output_buffer.size())
+ d_min_output_buffer.push_back(min_output_buffer);
+ else
+ d_min_output_buffer[port] = min_output_buffer;
+ }
+
float
block::pc_noutput_items()
{