diff options
Diffstat (limited to 'gr-blocks/grc')
-rw-r--r-- | gr-blocks/grc/blocks.tree.yml | 1 | ||||
-rw-r--r-- | gr-blocks/grc/blocks_matrix_interleaver.block.yml | 63 |
2 files changed, 64 insertions, 0 deletions
diff --git a/gr-blocks/grc/blocks.tree.yml b/gr-blocks/grc/blocks.tree.yml index 5fb790efd1..48540f7b72 100644 --- a/gr-blocks/grc/blocks.tree.yml +++ b/gr-blocks/grc/blocks.tree.yml @@ -122,6 +122,7 @@ - blocks_stream_to_vector_decimator - blocks_vector_to_stream - blocks_vector_to_streams + - blocks_matrix_interleaver - blocks_patterned_interleaver - blocks_endian_swap - blocks_vector_insert_x diff --git a/gr-blocks/grc/blocks_matrix_interleaver.block.yml b/gr-blocks/grc/blocks_matrix_interleaver.block.yml new file mode 100644 index 0000000000..d2a664a361 --- /dev/null +++ b/gr-blocks/grc/blocks_matrix_interleaver.block.yml @@ -0,0 +1,63 @@ +id: blocks_matrix_interleaver +label: Matrix Interleaver +flags: [ python ] + +templates: + imports: from gnuradio import blocks + make: |- + blocks.matrix_interleaver( + itemsize=${ type.size } * ${ vlen }, rows=${ rows }, cols=${ cols }, deint=${ deint } + ) + callbacks: + - set_rowsandcols(${ rows }, ${ cols }, ${ deint }) + +parameters: +- id: type + label: IO Type + dtype: enum + options: [complex, float, int, short, byte] + option_attributes: + size: [gr.sizeof_gr_complex, gr.sizeof_float, gr.sizeof_int, gr.sizeof_short, gr.sizeof_char] + hide: part +- id: vlen + label: Vec Length + dtype: int + default: '1' + hide: ${ 'part' if vlen == 1 else 'none' } +- id: rows + label: Rows + dtype: int + default: '1' + hide: none +- id: cols + label: Columns + dtype: int + default: '1' + hide: none +- id: deint + label: Deinterleave + dtype: bool + options: [True, False] + default: False + hide: none + +inputs: +- label: in + dtype: ${ type } + vlen: ${ vlen } + +outputs: +- label: out + dtype: ${ type } + vlen: ${ vlen } + +asserts: +- ${ vlen > 0 } + +documentation: 'Jared Dulmage + + Block interleaver reads inputs into rows and writes outputs by cols + + python/matrix_interleaver.py' + +file_format: 1 |