Tagged Stream Multiply Length Tag: Difference between revisions

From GNU Radio
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...")
 
 
(6 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[Category:Block Docs]]
[[Category:Block Docs]]
[[Category:Stub Docs]]
Allows scaling of a tagged stream length tag for constant rate change blocks in a tagged stream.
This is the template for the [[:Category:Block_Docs|"Page-per-block Docs"]].  This first section should describe what the block does and how to use it, using however many paragraphs necessary.  Note that the title of the wiki page should match the block's name in GRC, i.e. the one defined in the block's .grc file.  Look at the [[FFT]] Block for a good example.


As this is a basic template, it's also in the [[:Category:Stub_Docs|"Stub Docs category"]]. Please improve it.
Searches for a specific tagged stream length tag and multiplies that length by a constant.


== Parameters ==
== Parameters ==
(''R''): <span class="plainlinks">[https://wiki.gnuradio.org/index.php/GNURadioCompanion#Variable_Controls ''Run-time adjustable'']</span>
(''R''): <span class="plainlinks">[https://wiki.gnuradio.org/index.php/GNURadioCompanion#Variable_Controls ''Run-time adjustable'']</span>


; Param 1 (''R'')
; Length tag names
: Description of parameter, provide any tips or recommended values.  Note that the name of the parameter above should match the param's label that shows up in grc (e.g. Sample Rate).
: Length tag key
 
; Length scalar (''R'')
: Value to scale length tag values by


; Param 2
: blah blah blah


== Example Flowgraph ==
== Example Flowgraph ==


Insert description of flowgraph here, then show a screenshot of the flowgraph and the output if there is an interesting GUI. Currently we have no standard method of uploading the actual flowgraph to the wiki or git repo, unfortunately. The plan is to have an example flowgraph showing how the block might be used, for every block, and the flowgraphs will live in the git repo.
This flowgraph can be found at [https://github.com/gnuradio/gnuradio/blob/master/gr-digital/examples/packet/packet_tx.grc packet_tx.grc].
 
The Polyphase Arbitrary Resampler upsamples the stream by a factor of 2. Because of this, the packet length is also increased (becomes twice the original one). But this change of packet length is not propagated to the tags in the output stream of the PAR block. Tagged stream multiply length tag block is used to update the values of these tags. Length scalar is set to 2 to change the packet length to packet_len*2.
 
[[File:Packet_tx_fg.png|746px]]


== Source Files ==
== Source Files ==


; C++ files
; C++ files
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/lib/tagged_stream_multiply_length_impl.cc tagged_stream_multiply_length_impl.cc]


; Header files
; Header files
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/lib/tagged_stream_multiply_length_impl.h tagged_stream_multiply_length_impl.h]


; Public header files
; Public header files
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/include/gnuradio/blocks/tagged_stream_multiply_length.h tagged_stream_multiply_length.h]


; Block definition
; Block definition
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/grc/blocks_tagged_stream_multiply_length.block.yml blocks_tagged_stream_multiply_length.block.yml]

Latest revision as of 12:58, 26 January 2022

Allows scaling of a tagged stream length tag for constant rate change blocks in a tagged stream.

Searches for a specific tagged stream length tag and multiplies that length by a constant.

Parameters

(R): Run-time adjustable

Length tag names
Length tag key
Length scalar (R)
Value to scale length tag values by


Example Flowgraph

This flowgraph can be found at packet_tx.grc.

The Polyphase Arbitrary Resampler upsamples the stream by a factor of 2. Because of this, the packet length is also increased (becomes twice the original one). But this change of packet length is not propagated to the tags in the output stream of the PAR block. Tagged stream multiply length tag block is used to update the values of these tags. Length scalar is set to 2 to change the packet length to packet_len*2.

Packet tx fg.png

Source Files

C++ files
tagged_stream_multiply_length_impl.cc
Header files
tagged_stream_multiply_length_impl.h
Public header files
tagged_stream_multiply_length.h
Block definition
blocks_tagged_stream_multiply_length.block.yml