Moving tags downstream is moved into gr_block_executor. Predefined three methods of moving tags that are selectable by a gr_block.
Cleaning up. Better use of PMTs; comment mods; returning vectors when getting tags.
Adding call in scheduler to handle tag movements between blocks and some helper functions to get access and keep track of tags.
Fixing api call to gr_buffer_reader that no longer takes in which_input.
Moving add_item_tag into gr_buffer and get_tags_in_range to gr_buffer_reader. gr_block_detail takes care of the high-level adding and retrieving tags via the buffers/readers; also takes care of filtering tags by key.
Tags are now added to the gr_buffers on 'which_output' while they are retrieved from the gr_buffer_reader based on 'which_input."
Changing API to match changes to gr_block, including adding "srcid" param to add_item_tag. Added documentation to header file. Changing to deque from list. Still holding the deque locally in block_detail, but will be moved to gr_buffer. Adding tag just builds the tag tuple and appends it; doesn't worry about duplications.
Moved number items read/written from gr_block_detail into gr_buffer (abs_written_offset) and gr_buffer_reader (abs_read_offset). Keeps the API exposed in gr_blocks for now.
Using pmt_eqv for key testing instead of == to make sure typing is worked out properly.
Checks for duplicate entry when adding a new tag.
add_item_tag looks at the last tag entered with the given key and tests if the value is the same. If it is the same value, then don't do add a new item. If the value is different, add a new tag of that key to the list.
get_tags_in_range now gets items between start and end INCLUSIVELY.
Adds functional ability to call get_tags_in_range with a specified key.
Fix to get_tags_in_range. Returns proper list and handles times when list is empty.
First stab at adding get functions for item tags in a given range.
Giving gr_block_detail a list of pmt tuples to hold item tagging information.
Adds ability to add new tags from a block.
Adding vectors to gr_block_detail that keep track of the number of samples read and written from each block's input. Accessor functions allow query of values through gr_block.
Had to add gr_uint64 typedef to SWIG for it to understand how to handle the type.
Merged changes from svn repository trunk.
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@11601 221aa14e-8319-0410-a670-987f0aec2ac5
Signed-off-by: Johnathan Corgan <[email protected]>
gr_blocks may now produce different number of output items on each output stream.
Merged eb/varying -r11178:11595 into trunk. Needs QA and examples.
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@11597 221aa14e-8319-0410-a670-987f0aec2ac5
Refactored gr_msg_accepter and gr_tpd_thread_body.
Redirected gr_msg_accepter::post into gr_block::_post based on dynamic cast.
Merge r6160:6168 from jcorgan/fg into trunk.
Refactors gr_simple_flowgraph into gr_flowgraph and gr_flat_flowgraph.
Adds cppunit-based QA.
Trial fix for ticket:164 included for free.
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@6169 221aa14e-8319-0410-a670-987f0aec2ac5
Updated license from GPL version 2 or later to GPL version 3 or later.
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@6044 221aa14e-8319-0410-a670-987f0aec2ac5
Merge jcorgan/hier developer branch into trunk. Enables creation of true hierarchical blocks, from either C++ or Python, as well as creating pure C++ gnuradio applications. EXPERIMENTAL.
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@4070 221aa14e-8319-0410-a670-987f0aec2ac5
Updated FSF address in all files. Fixes ticket:51
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@3534 221aa14e-8319-0410-a670-987f0aec2ac5
Houston, we have a trunk.
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@3122 221aa14e-8319-0410-a670-987f0aec2ac5