summaryrefslogtreecommitdiff
path: root/gnuradio-runtime/include
diff options
context:
space:
mode:
authorJosh Morman <jmorman@gnuradio.org>2021-12-10 07:31:24 -0500
committermormj <34754695+mormj@users.noreply.github.com>2021-12-10 16:00:57 -0500
commit0b5946b349d99590495dad1fa5ec679c4906d4fa (patch)
treef859246bf4f7c2846c217c2547e062912c9906fb /gnuradio-runtime/include
parentc4fa6b371479cc8003b3c0f4e1dcfbd0780e3d4b (diff)
runtime: configurable blkd_input timer
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
Diffstat (limited to 'gnuradio-runtime/include')
-rw-r--r--gnuradio-runtime/include/gnuradio/block.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/gnuradio-runtime/include/gnuradio/block.h b/gnuradio-runtime/include/gnuradio/block.h
index 8b486cc398..dace24ad88 100644
--- a/gnuradio-runtime/include/gnuradio/block.h
+++ b/gnuradio-runtime/include/gnuradio/block.h
@@ -518,6 +518,30 @@ public:
void set_min_output_buffer(int port, long min_output_buffer);
/*!
+ * \brief DEPRECATED Configure the timer set when input is blocked \p port.
+ *
+ * \details
+ * This is an advanced/experimental feature and might be removed in a future
+ * version. Calling this can affect some fundamental assumptions about the
+ * system behavior and
+ * performance.
+ *
+ * In the TPB scheduler, when a block has no work to do because there
+ * is no data at it inputs, it sets a timer and tries again after a
+ * period of time. The default is 250 ms, but this can be configured
+ * differently per block when necessary
+ *
+ * \param timer_value_ms the timer value in milliseconds
+ */
+ void set_blkd_input_timer_value(unsigned int timer_value_ms);
+
+ /*!
+ * \brief DEPRECATED Returns timer value set when input is blocked
+ */
+ unsigned int blkd_input_timer_value();
+
+
+ /*!
* \brief Allocate the block_detail and necessary output buffers for this
* block.
*/
@@ -950,6 +974,8 @@ protected:
std::vector<long> d_max_output_buffer;
std::vector<long> d_min_output_buffer;
+ unsigned int d_blkd_input_timer_value = 250;
+
/*! Used by block's setters and work functions to make
* setting/resetting of parameters thread-safe.
*