diff options
Diffstat (limited to 'gr-blocks/grc/blocks_keep_one_in_n.block.yml')
-rw-r--r-- | gr-blocks/grc/blocks_keep_one_in_n.block.yml | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/gr-blocks/grc/blocks_keep_one_in_n.block.yml b/gr-blocks/grc/blocks_keep_one_in_n.block.yml new file mode 100644 index 0000000000..d790557834 --- /dev/null +++ b/gr-blocks/grc/blocks_keep_one_in_n.block.yml @@ -0,0 +1,44 @@ +id: blocks_keep_one_in_n +label: Keep 1 in N + +parameters: +- id: type + label: 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: n + label: N + dtype: int + default: '1' + hide: ${ 'part' if vlen == 1 else 'none' } +- id: vlen + label: Vec Length + dtype: int + default: '1' + hide: ${ 'part' if vlen == 1 else 'none' } + +inputs: +- domain: stream + dtype: ${ type } + vlen: ${ vlen } + +outputs: +- domain: stream + dtype: ${ type } + vlen: ${ vlen } + +asserts: +- ${ n > 0 } +- ${ vlen > 0 } + +templates: + imports: from gnuradio import blocks + make: blocks.keep_one_in_n(${type.size}*${vlen}, ${n}) + callbacks: + - set_n(${n}) + +file_format: 1 |