Tagged Stream Mux: Difference between revisions
Jump to navigation
Jump to search
(Created page with "Category:Block Docs Category:Stub Docs This is the template for the "Page-per-block Docs". This first section should describe what the block...") |
(add example flowgraph) |
||
(One intermediate revision by one other user not shown) | |||
Line 1: | Line 1: | ||
[[Category:Block Docs]] | [[Category:Block Docs]] | ||
Combines tagged streams. | |||
Takes N streams as input. Each stream is tagged with packet lengths. Packets are output sequentially from each input stream. | |||
The output signal has a new length tag, which is the sum of all individual length tags. The old length tags are discarded. | |||
All other tags are propagated as expected, i.e. they stay associated with the same input item. There are cases when this behaviour is undesirable. One special case is when a tag at the first element (the head item) of one input port must stay on the head item of the output port. To achieve this, set "Tags: Preserve head position on input" to the port that will receive these special tags. | |||
== Parameters == | == Parameters == | ||
; | ; Number of inputs | ||
: | : Number of input streams | ||
; | ; Length tag names | ||
: | : Length tag key | ||
; <nowiki>Tags: Preserve head position on input</nowiki> | |||
: Preserves the head position of tags on this input port | |||
== Example Flowgraph == | == Example Flowgraph == | ||
This flowgraph can be found at [https://github.com/gnuradio/gnuradio/blob/master/gr-digital/examples/packet/packet_tx.grc] | |||
[[File:Packet_tx_fg.png|746px]] | |||
== Source Files == | == Source Files == | ||
; C++ files | ; C++ files | ||
: [https://github.com/gnuradio/gnuradio | : [https://github.com/gnuradio/gnuradio/blob/master/gr-blocks/lib/tagged_stream_mux_impl.cc] | ||
; Header files | ; Header files | ||
: [https://github.com/gnuradio/gnuradio | : [https://github.com/gnuradio/gnuradio/blob/master/gr-blocks/lib/tagged_stream_mux_impl.h] | ||
; Public header files | ; Public header files | ||
: [https://github.com/gnuradio/gnuradio | : [https://github.com/gnuradio/gnuradio/blob/master/gr-blocks/include/gnuradio/blocks/tagged_stream_mux.h] | ||
; Block definition | ; Block definition | ||
: [https://github.com/gnuradio/gnuradio | : [https://github.com/gnuradio/gnuradio/blob/master/gr-blocks/grc/blocks_tagged_stream_mux.block.yml] |
Revision as of 14:24, 6 April 2021
Combines tagged streams.
Takes N streams as input. Each stream is tagged with packet lengths. Packets are output sequentially from each input stream. The output signal has a new length tag, which is the sum of all individual length tags. The old length tags are discarded. All other tags are propagated as expected, i.e. they stay associated with the same input item. There are cases when this behaviour is undesirable. One special case is when a tag at the first element (the head item) of one input port must stay on the head item of the output port. To achieve this, set "Tags: Preserve head position on input" to the port that will receive these special tags.
Parameters
- Number of inputs
- Number of input streams
- Length tag names
- Length tag key
- Tags: Preserve head position on input
- Preserves the head position of tags on this input port
Example Flowgraph
This flowgraph can be found at [1]
Source Files
- C++ files
- [2]
- Header files
- [3]
- Public header files
- [4]
- Block definition
- [5]