diff options
Diffstat (limited to 'gnuradio-runtime/lib/block.cc')
-rw-r--r-- | gnuradio-runtime/lib/block.cc | 51 |
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; } |