summaryrefslogtreecommitdiff
path: root/gnuradio-runtime/lib/block.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gnuradio-runtime/lib/block.cc')
-rw-r--r--gnuradio-runtime/lib/block.cc51
1 files changed, 37 insertions, 14 deletions
diff --git a/gnuradio-runtime/lib/block.cc b/gnuradio-runtime/lib/block.cc
index 442f8dde77..169a1b0d14 100644
--- a/gnuradio-runtime/lib/block.cc
+++ b/gnuradio-runtime/lib/block.cc
@@ -288,19 +288,42 @@ namespace gr {
void
block::get_tags_in_range(std::vector<tag_t> &v,
- unsigned int which_output,
+ unsigned int which_input,
uint64_t start, uint64_t end)
{
- d_detail->get_tags_in_range(v, which_output, start, end, unique_id());
+ d_detail->get_tags_in_range(v, which_input, start, end, unique_id());
}
void
block::get_tags_in_range(std::vector<tag_t> &v,
- unsigned int which_output,
+ unsigned int which_input,
uint64_t start, uint64_t end,
const pmt::pmt_t &key)
{
- d_detail->get_tags_in_range(v, which_output, start, end, key, unique_id());
+ d_detail->get_tags_in_range(v, which_input, start, end, key, unique_id());
+ }
+
+ void
+ block::get_tags_in_window(std::vector<tag_t> &v,
+ unsigned int which_input,
+ uint64_t start, uint64_t end)
+ {
+ d_detail->get_tags_in_range(v, which_input,
+ nitems_read(which_input) + start,
+ nitems_read(which_input) + end,
+ unique_id());
+ }
+
+ void
+ block::get_tags_in_window(std::vector<tag_t> &v,
+ unsigned int which_input,
+ uint64_t start, uint64_t end,
+ const pmt::pmt_t &key)
+ {
+ d_detail->get_tags_in_range(v, which_input,
+ nitems_read(which_input) + start,
+ nitems_read(which_input) + end,
+ key, unique_id());
}
block::tag_propagation_policy_t
@@ -361,7 +384,7 @@ namespace gr {
}
}
- int
+ int
block::active_thread_priority()
{
if(d_detail) {
@@ -370,13 +393,13 @@ namespace gr {
return -1;
}
- int
+ int
block::thread_priority()
{
return d_priority;
}
- int
+ int
block::set_thread_priority(int priority)
{
d_priority = priority;
@@ -402,10 +425,10 @@ namespace gr {
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);
}
@@ -417,9 +440,9 @@ namespace gr {
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;
+ d_max_output_buffer[port] = max_output_buffer;
}
-
+
long
block::min_output_buffer(size_t i)
{
@@ -427,7 +450,7 @@ namespace gr {
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)
{
@@ -436,14 +459,14 @@ namespace gr {
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;
+ d_min_output_buffer[port] = min_output_buffer;
}