summaryrefslogtreecommitdiff
path: root/gr-blocks/grc/blocks_copy.block.yml
diff options
context:
space:
mode:
Diffstat (limited to 'gr-blocks/grc/blocks_copy.block.yml')
-rw-r--r--gr-blocks/grc/blocks_copy.block.yml57
1 files changed, 57 insertions, 0 deletions
diff --git a/gr-blocks/grc/blocks_copy.block.yml b/gr-blocks/grc/blocks_copy.block.yml
new file mode 100644
index 0000000000..0de4bcadf5
--- /dev/null
+++ b/gr-blocks/grc/blocks_copy.block.yml
@@ -0,0 +1,57 @@
+id: blocks_copy
+label: Copy
+
+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: enabled
+ label: Enabled
+ dtype: bool
+ default: 'True'
+ options: ['True', 'False']
+ option_labels: [Enabled, Disabled]
+- id: vlen
+ label: Vec Length
+ dtype: int
+ default: '1'
+ hide: ${ 'part' if vlen == 1 else 'none' }
+- id: showports
+ label: Show Msg Ports
+ dtype: enum
+ default: 'True'
+ options: ['False', 'True']
+ option_labels: ['Yes', 'No']
+ hide: part
+
+inputs:
+- domain: stream
+ dtype: ${ type }
+ vlen: ${ vlen }
+- domain: message
+ id: en
+ optional: true
+ hide: ${ showports }
+
+outputs:
+- domain: stream
+ dtype: ${ type }
+ vlen: ${ vlen }
+
+asserts:
+- ${ vlen > 0 }
+
+templates:
+ imports: from gnuradio import blocks
+ make: |-
+ blocks.copy(${type.size}*${vlen})
+ self.${id}.set_enabled(${enabled})
+ callbacks:
+ - set_enabled(${enabled})
+
+file_format: 1