summaryrefslogtreecommitdiff
path: root/gr-zeromq/grc
diff options
context:
space:
mode:
Diffstat (limited to 'gr-zeromq/grc')
-rw-r--r--gr-zeromq/grc/CMakeLists.txt24
-rw-r--r--gr-zeromq/grc/zeromq_pub_msg_sink.block.yml23
-rw-r--r--gr-zeromq/grc/zeromq_pub_msg_sink.xml28
-rw-r--r--gr-zeromq/grc/zeromq_pub_sink.block.yml48
-rw-r--r--gr-zeromq/grc/zeromq_pub_sink.xml89
-rw-r--r--gr-zeromq/grc/zeromq_pull_msg_source.block.yml23
-rw-r--r--gr-zeromq/grc/zeromq_pull_msg_source.xml28
-rw-r--r--gr-zeromq/grc/zeromq_pull_source.block.yml48
-rw-r--r--gr-zeromq/grc/zeromq_pull_source.xml89
-rw-r--r--gr-zeromq/grc/zeromq_push_msg_sink.block.yml23
-rw-r--r--gr-zeromq/grc/zeromq_push_msg_sink.xml28
-rw-r--r--gr-zeromq/grc/zeromq_push_sink.block.yml48
-rw-r--r--gr-zeromq/grc/zeromq_push_sink.xml89
-rw-r--r--gr-zeromq/grc/zeromq_rep_msg_sink.block.yml23
-rw-r--r--gr-zeromq/grc/zeromq_rep_msg_sink.xml28
-rw-r--r--gr-zeromq/grc/zeromq_rep_sink.block.yml49
-rw-r--r--gr-zeromq/grc/zeromq_rep_sink.xml89
-rw-r--r--gr-zeromq/grc/zeromq_req_msg_source.block.yml23
-rw-r--r--gr-zeromq/grc/zeromq_req_msg_source.xml28
-rw-r--r--gr-zeromq/grc/zeromq_req_source.block.yml48
-rw-r--r--gr-zeromq/grc/zeromq_req_source.xml89
-rw-r--r--gr-zeromq/grc/zeromq_sub_msg_source.block.yml23
-rw-r--r--gr-zeromq/grc/zeromq_sub_msg_source.xml28
-rw-r--r--gr-zeromq/grc/zeromq_sub_source.block.yml48
-rw-r--r--gr-zeromq/grc/zeromq_sub_source.xml89
25 files changed, 439 insertions, 714 deletions
diff --git a/gr-zeromq/grc/CMakeLists.txt b/gr-zeromq/grc/CMakeLists.txt
index 7807bcfe9d..50aa1d7d52 100644
--- a/gr-zeromq/grc/CMakeLists.txt
+++ b/gr-zeromq/grc/CMakeLists.txt
@@ -18,18 +18,18 @@
# Boston, MA 02110-1301, USA.
install(FILES
- zeromq_pub_sink.xml
- zeromq_pub_msg_sink.xml
- zeromq_sub_source.xml
- zeromq_sub_msg_source.xml
- zeromq_push_sink.xml
- zeromq_push_msg_sink.xml
- zeromq_pull_source.xml
- zeromq_pull_msg_source.xml
- zeromq_rep_sink.xml
- zeromq_rep_msg_sink.xml
- zeromq_req_source.xml
- zeromq_req_msg_source.xml
+ zeromq_pub_sink.block.yml
+ zeromq_pub_msg_sink.block.yml
+ zeromq_sub_source.block.yml
+ zeromq_sub_msg_source.block.yml
+ zeromq_push_sink.block.yml
+ zeromq_push_msg_sink.block.yml
+ zeromq_pull_source.block.yml
+ zeromq_pull_msg_source.block.yml
+ zeromq_rep_sink.block.yml
+ zeromq_rep_msg_sink.block.yml
+ zeromq_req_source.block.yml
+ zeromq_req_msg_source.block.yml
DESTINATION share/gnuradio/grc/blocks
)
diff --git a/gr-zeromq/grc/zeromq_pub_msg_sink.block.yml b/gr-zeromq/grc/zeromq_pub_msg_sink.block.yml
new file mode 100644
index 0000000000..ee4e9739df
--- /dev/null
+++ b/gr-zeromq/grc/zeromq_pub_msg_sink.block.yml
@@ -0,0 +1,23 @@
+id: zeromq_pub_msg_sink
+label: ZMQ PUB Message Sink
+category: '[Core]/ZeroMQ Interfaces'
+
+parameters:
+- id: address
+ label: Address
+ dtype: string
+- id: timeout
+ label: Timeout (msec)
+ dtype: float
+ default: '100'
+
+inputs:
+- domain: message
+ id: in
+ optional: true
+
+templates:
+ imports: from gnuradio import zeromq
+ make: zeromq.pub_msg_sink(${address}, ${timeout})
+
+file_format: 1
diff --git a/gr-zeromq/grc/zeromq_pub_msg_sink.xml b/gr-zeromq/grc/zeromq_pub_msg_sink.xml
deleted file mode 100644
index 245ac37180..0000000000
--- a/gr-zeromq/grc/zeromq_pub_msg_sink.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0"?>
-<block>
- <name>ZMQ PUB Message Sink</name>
- <key>zeromq_pub_msg_sink</key>
- <category>[Core]/ZeroMQ Interfaces</category>
- <import>from gnuradio import zeromq</import>
- <make>zeromq.pub_msg_sink($address, $timeout)</make>
-
- <param>
- <name>Address</name>
- <key>address</key>
- <type>string</type>
- </param>
-
- <param>
- <name>Timeout (msec)</name>
- <key>timeout</key>
- <value>100</value>
- <type>float</type>
- </param>
-
- <sink>
- <name>in</name>
- <type>message</type>
- <optional>1</optional>
- </sink>
-
-</block>
diff --git a/gr-zeromq/grc/zeromq_pub_sink.block.yml b/gr-zeromq/grc/zeromq_pub_sink.block.yml
new file mode 100644
index 0000000000..d8e5983d20
--- /dev/null
+++ b/gr-zeromq/grc/zeromq_pub_sink.block.yml
@@ -0,0 +1,48 @@
+id: zeromq_pub_sink
+label: ZMQ PUB Sink
+category: '[Core]/ZeroMQ Interfaces'
+
+parameters:
+- id: type
+ label: IO Type
+ dtype: enum
+ options: [complex, float, int, short, byte]
+ option_attributes:
+ itemsize: [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: address
+ label: Address
+ dtype: string
+- id: timeout
+ label: Timeout (msec)
+ dtype: float
+ default: '100'
+- id: pass_tags
+ label: Pass Tags
+ dtype: enum
+ default: 'False'
+ options: ['True', 'False']
+ option_labels: ['Yes', 'No']
+- id: hwm
+ label: High Watermark
+ dtype: int
+ default: '-1'
+ hide: ${ ('part' if hwm == -1 else 'none') }
+
+inputs:
+- domain: stream
+ dtype: ${ type }
+ vlen: ${ vlen }
+
+templates:
+ imports: from gnuradio import zeromq
+ make: zeromq.pub_sink(${type.itemsize}, ${vlen}, ${address}, ${timeout}, ${pass_tags},
+ ${hwm})
+
+file_format: 1
diff --git a/gr-zeromq/grc/zeromq_pub_sink.xml b/gr-zeromq/grc/zeromq_pub_sink.xml
deleted file mode 100644
index af130eeb21..0000000000
--- a/gr-zeromq/grc/zeromq_pub_sink.xml
+++ /dev/null
@@ -1,89 +0,0 @@
-<?xml version="1.0"?>
-<block>
- <name>ZMQ PUB Sink</name>
- <key>zeromq_pub_sink</key>
- <category>[Core]/ZeroMQ Interfaces</category>
- <import>from gnuradio import zeromq</import>
- <make>zeromq.pub_sink($type.itemsize, $vlen, $address, $timeout, $pass_tags, $hwm)</make>
-
- <param>
- <name>IO Type</name>
- <key>type</key>
- <type>enum</type>
- <option>
- <name>Complex</name>
- <key>complex</key>
- <opt>itemsize:gr.sizeof_gr_complex</opt>
- </option>
- <option>
- <name>Float</name>
- <key>float</key>
- <opt>itemsize:gr.sizeof_float</opt>
- </option>
- <option>
- <name>Int</name>
- <key>int</key>
- <opt>itemsize:gr.sizeof_int</opt>
- </option>
- <option>
- <name>Short</name>
- <key>short</key>
- <opt>itemsize:gr.sizeof_short</opt>
- </option>
- <option>
- <name>Byte</name>
- <key>byte</key>
- <opt>itemsize:gr.sizeof_char</opt>
- </option>
- </param>
-
- <param>
- <name>Vec Length</name>
- <key>vlen</key>
- <value>1</value>
- <type>int</type>
- </param>
-
- <param>
- <name>Address</name>
- <key>address</key>
- <type>string</type>
- </param>
-
- <param>
- <name>Timeout (msec)</name>
- <key>timeout</key>
- <value>100</value>
- <type>float</type>
- </param>
-
- <param>
- <name>Pass Tags</name>
- <key>pass_tags</key>
- <value>False</value>
- <type>enum</type>
- <option>
- <name>Yes</name>
- <key>True</key>
- </option>
- <option>
- <name>No</name>
- <key>False</key>
- </option>
- </param>
-
- <param>
- <name>High Watermark</name>
- <key>hwm</key>
- <value>-1</value>
- <type>int</type>
- <hide>#if $hwm() == -1 then 'part' else 'none'#</hide>
- </param>
-
- <sink>
- <name>in</name>
- <type>$type</type>
- <vlen>$vlen</vlen>
- </sink>
-
-</block>
diff --git a/gr-zeromq/grc/zeromq_pull_msg_source.block.yml b/gr-zeromq/grc/zeromq_pull_msg_source.block.yml
new file mode 100644
index 0000000000..00be80c2c2
--- /dev/null
+++ b/gr-zeromq/grc/zeromq_pull_msg_source.block.yml
@@ -0,0 +1,23 @@
+id: zeromq_pull_msg_source
+label: ZMQ PULL Message Source
+category: '[Core]/ZeroMQ Interfaces'
+
+parameters:
+- id: address
+ label: Address
+ dtype: string
+- id: timeout
+ label: Timeout (msec)
+ dtype: float
+ default: '100'
+
+outputs:
+- domain: message
+ id: out
+ optional: true
+
+templates:
+ imports: from gnuradio import zeromq
+ make: zeromq.pull_msg_source(${address}, ${timeout})
+
+file_format: 1
diff --git a/gr-zeromq/grc/zeromq_pull_msg_source.xml b/gr-zeromq/grc/zeromq_pull_msg_source.xml
deleted file mode 100644
index c6004d987e..0000000000
--- a/gr-zeromq/grc/zeromq_pull_msg_source.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0"?>
-<block>
- <name>ZMQ PULL Message Source</name>
- <key>zeromq_pull_msg_source</key>
- <category>[Core]/ZeroMQ Interfaces</category>
- <import>from gnuradio import zeromq</import>
- <make>zeromq.pull_msg_source($address, $timeout)</make>
-
- <param>
- <name>Address</name>
- <key>address</key>
- <type>string</type>
- </param>
-
- <param>
- <name>Timeout (msec)</name>
- <key>timeout</key>
- <value>100</value>
- <type>float</type>
- </param>
-
- <source>
- <name>out</name>
- <type>message</type>
- <optional>1</optional>
- </source>
-
-</block>
diff --git a/gr-zeromq/grc/zeromq_pull_source.block.yml b/gr-zeromq/grc/zeromq_pull_source.block.yml
new file mode 100644
index 0000000000..a318b568f1
--- /dev/null
+++ b/gr-zeromq/grc/zeromq_pull_source.block.yml
@@ -0,0 +1,48 @@
+id: zeromq_pull_source
+label: ZMQ PULL Source
+category: '[Core]/ZeroMQ Interfaces'
+
+parameters:
+- id: type
+ label: IO Type
+ dtype: enum
+ options: [complex, float, int, short, byte]
+ option_attributes:
+ itemsize: [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: address
+ label: Address
+ dtype: string
+- id: timeout
+ label: Timeout (msec)
+ dtype: float
+ default: '100'
+- id: pass_tags
+ label: Pass Tags
+ dtype: enum
+ default: 'False'
+ options: ['True', 'False']
+ option_labels: ['Yes', 'No']
+- id: hwm
+ label: High Watermark
+ dtype: int
+ default: '-1'
+ hide: ${ ('part' if hwm == -1 else 'none') }
+
+outputs:
+- domain: stream
+ dtype: ${ type }
+ vlen: ${ vlen }
+
+templates:
+ imports: from gnuradio import zeromq
+ make: zeromq.pull_source(${type.itemsize}, ${vlen}, ${address}, ${timeout}, ${pass_tags},
+ ${hwm})
+
+file_format: 1
diff --git a/gr-zeromq/grc/zeromq_pull_source.xml b/gr-zeromq/grc/zeromq_pull_source.xml
deleted file mode 100644
index f2c8b61d86..0000000000
--- a/gr-zeromq/grc/zeromq_pull_source.xml
+++ /dev/null
@@ -1,89 +0,0 @@
-<?xml version="1.0"?>
-<block>
- <name>ZMQ PULL Source</name>
- <key>zeromq_pull_source</key>
- <category>[Core]/ZeroMQ Interfaces</category>
- <import>from gnuradio import zeromq</import>
- <make>zeromq.pull_source($type.itemsize, $vlen, $address, $timeout, $pass_tags, $hwm)</make>
-
- <param>
- <name>IO Type</name>
- <key>type</key>
- <type>enum</type>
- <option>
- <name>Complex</name>
- <key>complex</key>
- <opt>itemsize:gr.sizeof_gr_complex</opt>
- </option>
- <option>
- <name>Float</name>
- <key>float</key>
- <opt>itemsize:gr.sizeof_float</opt>
- </option>
- <option>
- <name>Int</name>
- <key>int</key>
- <opt>itemsize:gr.sizeof_int</opt>
- </option>
- <option>
- <name>Short</name>
- <key>short</key>
- <opt>itemsize:gr.sizeof_short</opt>
- </option>
- <option>
- <name>Byte</name>
- <key>byte</key>
- <opt>itemsize:gr.sizeof_char</opt>
- </option>
- </param>
-
- <param>
- <name>Vec Length</name>
- <key>vlen</key>
- <value>1</value>
- <type>int</type>
- </param>
-
- <param>
- <name>Address</name>
- <key>address</key>
- <type>string</type>
- </param>
-
- <param>
- <name>Timeout (msec)</name>
- <key>timeout</key>
- <value>100</value>
- <type>float</type>
- </param>
-
- <param>
- <name>Pass Tags</name>
- <key>pass_tags</key>
- <value>False</value>
- <type>enum</type>
- <option>
- <name>Yes</name>
- <key>True</key>
- </option>
- <option>
- <name>No</name>
- <key>False</key>
- </option>
- </param>
-
- <param>
- <name>High Watermark</name>
- <key>hwm</key>
- <value>-1</value>
- <type>int</type>
- <hide>#if $hwm() == -1 then 'part' else 'none'#</hide>
- </param>
-
- <source>
- <name>out</name>
- <type>$type</type>
- <vlen>$vlen</vlen>
- </source>
-
-</block>
diff --git a/gr-zeromq/grc/zeromq_push_msg_sink.block.yml b/gr-zeromq/grc/zeromq_push_msg_sink.block.yml
new file mode 100644
index 0000000000..d1c9d8f82c
--- /dev/null
+++ b/gr-zeromq/grc/zeromq_push_msg_sink.block.yml
@@ -0,0 +1,23 @@
+id: zeromq_push_msg_sink
+label: ZMQ PUSH Message Sink
+category: '[Core]/ZeroMQ Interfaces'
+
+parameters:
+- id: address
+ label: Address
+ dtype: string
+- id: timeout
+ label: Timeout (msec)
+ dtype: float
+ default: '100'
+
+inputs:
+- domain: message
+ id: in
+ optional: true
+
+templates:
+ imports: from gnuradio import zeromq
+ make: zeromq.push_msg_sink(${address}, ${timeout})
+
+file_format: 1
diff --git a/gr-zeromq/grc/zeromq_push_msg_sink.xml b/gr-zeromq/grc/zeromq_push_msg_sink.xml
deleted file mode 100644
index 283a250064..0000000000
--- a/gr-zeromq/grc/zeromq_push_msg_sink.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0"?>
-<block>
- <name>ZMQ PUSH Message Sink</name>
- <key>zeromq_push_msg_sink</key>
- <category>[Core]/ZeroMQ Interfaces</category>
- <import>from gnuradio import zeromq</import>
- <make>zeromq.push_msg_sink($address, $timeout)</make>
-
- <param>
- <name>Address</name>
- <key>address</key>
- <type>string</type>
- </param>
-
- <param>
- <name>Timeout (msec)</name>
- <key>timeout</key>
- <value>100</value>
- <type>float</type>
- </param>
-
- <sink>
- <name>in</name>
- <type>message</type>
- <optional>1</optional>
- </sink>
-
-</block>
diff --git a/gr-zeromq/grc/zeromq_push_sink.block.yml b/gr-zeromq/grc/zeromq_push_sink.block.yml
new file mode 100644
index 0000000000..63b9d2497c
--- /dev/null
+++ b/gr-zeromq/grc/zeromq_push_sink.block.yml
@@ -0,0 +1,48 @@
+id: zeromq_push_sink
+label: ZMQ PUSH Sink
+category: '[Core]/ZeroMQ Interfaces'
+
+parameters:
+- id: type
+ label: IO Type
+ dtype: enum
+ options: [complex, float, int, short, byte]
+ option_attributes:
+ itemsize: [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: address
+ label: Address
+ dtype: string
+- id: timeout
+ label: Timeout (msec)
+ dtype: float
+ default: '100'
+- id: pass_tags
+ label: Pass Tags
+ dtype: enum
+ default: 'False'
+ options: ['True', 'False']
+ option_labels: ['Yes', 'No']
+- id: hwm
+ label: High Watermark
+ dtype: int
+ default: '-1'
+ hide: ${ ('part' if hwm == -1 else 'none') }
+
+inputs:
+- domain: stream
+ dtype: ${ type }
+ vlen: ${ vlen }
+
+templates:
+ imports: from gnuradio import zeromq
+ make: zeromq.push_sink(${type.itemsize}, ${vlen}, ${address}, ${timeout}, ${pass_tags},
+ ${hwm})
+
+file_format: 1
diff --git a/gr-zeromq/grc/zeromq_push_sink.xml b/gr-zeromq/grc/zeromq_push_sink.xml
deleted file mode 100644
index 8277c02c22..0000000000
--- a/gr-zeromq/grc/zeromq_push_sink.xml
+++ /dev/null
@@ -1,89 +0,0 @@
-<?xml version="1.0"?>
-<block>
- <name>ZMQ PUSH Sink</name>
- <key>zeromq_push_sink</key>
- <category>[Core]/ZeroMQ Interfaces</category>
- <import>from gnuradio import zeromq</import>
- <make>zeromq.push_sink($type.itemsize, $vlen, $address, $timeout, $pass_tags, $hwm)</make>
-
- <param>
- <name>IO Type</name>
- <key>type</key>
- <type>enum</type>
- <option>
- <name>Complex</name>
- <key>complex</key>
- <opt>itemsize:gr.sizeof_gr_complex</opt>
- </option>
- <option>
- <name>Float</name>
- <key>float</key>
- <opt>itemsize:gr.sizeof_float</opt>
- </option>
- <option>
- <name>Int</name>
- <key>int</key>
- <opt>itemsize:gr.sizeof_int</opt>
- </option>
- <option>
- <name>Short</name>
- <key>short</key>
- <opt>itemsize:gr.sizeof_short</opt>
- </option>
- <option>
- <name>Byte</name>
- <key>byte</key>
- <opt>itemsize:gr.sizeof_char</opt>
- </option>
- </param>
-
- <param>
- <name>Vec Length</name>
- <key>vlen</key>
- <value>1</value>
- <type>int</type>
- </param>
-
- <param>
- <name>Address</name>
- <key>address</key>
- <type>string</type>
- </param>
-
- <param>
- <name>Timeout (msec)</name>
- <key>timeout</key>
- <value>100</value>
- <type>float</type>
- </param>
-
- <param>
- <name>Pass Tags</name>
- <key>pass_tags</key>
- <value>False</value>
- <type>enum</type>
- <option>
- <name>Yes</name>
- <key>True</key>
- </option>
- <option>
- <name>No</name>
- <key>False</key>
- </option>
- </param>
-
- <param>
- <name>High Watermark</name>
- <key>hwm</key>
- <value>-1</value>
- <type>int</type>
- <hide>#if $hwm() == -1 then 'part' else 'none'#</hide>
- </param>
-
- <sink>
- <name>in</name>
- <type>$type</type>
- <vlen>$vlen</vlen>
- </sink>
-
-</block>
diff --git a/gr-zeromq/grc/zeromq_rep_msg_sink.block.yml b/gr-zeromq/grc/zeromq_rep_msg_sink.block.yml
new file mode 100644
index 0000000000..d4732a705d
--- /dev/null
+++ b/gr-zeromq/grc/zeromq_rep_msg_sink.block.yml
@@ -0,0 +1,23 @@
+id: zeromq_rep_msg_sink
+label: ZMQ REP Message Sink
+category: '[Core]/ZeroMQ Interfaces'
+
+parameters:
+- id: address
+ label: Address
+ dtype: string
+- id: timeout
+ label: Timeout (msec)
+ dtype: float
+ default: '100'
+
+inputs:
+- domain: message
+ id: in
+ optional: true
+
+templates:
+ imports: from gnuradio import zeromq
+ make: zeromq.rep_msg_sink(${address}, ${timeout})
+
+file_format: 1
diff --git a/gr-zeromq/grc/zeromq_rep_msg_sink.xml b/gr-zeromq/grc/zeromq_rep_msg_sink.xml
deleted file mode 100644
index 37515b39bc..0000000000
--- a/gr-zeromq/grc/zeromq_rep_msg_sink.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0"?>
-<block>
- <name>ZMQ REP Message Sink</name>
- <key>zeromq_rep_msg_sink</key>
- <category>[Core]/ZeroMQ Interfaces</category>
- <import>from gnuradio import zeromq</import>
- <make>zeromq.rep_msg_sink($address, $timeout)</make>
-
- <param>
- <name>Address</name>
- <key>address</key>
- <type>string</type>
- </param>
-
- <param>
- <name>Timeout (msec)</name>
- <key>timeout</key>
- <value>100</value>
- <type>float</type>
- </param>
-
- <sink>
- <name>in</name>
- <type>message</type>
- <optional>1</optional>
- </sink>
-
-</block>
diff --git a/gr-zeromq/grc/zeromq_rep_sink.block.yml b/gr-zeromq/grc/zeromq_rep_sink.block.yml
new file mode 100644
index 0000000000..fbc27fcf0d
--- /dev/null
+++ b/gr-zeromq/grc/zeromq_rep_sink.block.yml
@@ -0,0 +1,49 @@
+id: zeromq_rep_sink
+label: ZMQ REP Sink
+category: '[Core]/ZeroMQ Interfaces'
+
+
+parameters:
+- id: type
+ label: IO Type
+ dtype: enum
+ options: [complex, float, int, short, byte]
+ option_attributes:
+ itemsize: [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: address
+ label: Address
+ dtype: string
+- id: timeout
+ label: Timeout (msec)
+ dtype: float
+ default: '100'
+- id: pass_tags
+ label: Pass Tags
+ dtype: enum
+ default: 'False'
+ options: ['True', 'False']
+ option_labels: ['Yes', 'No']
+- id: hwm
+ label: High Watermark
+ dtype: int
+ default: '-1'
+ hide: ${ ('part' if hwm == -1 else 'none') }
+
+inputs:
+- domain: stream
+ dtype: ${ type }
+ vlen: ${ vlen }
+
+templates:
+ imports: from gnuradio import zeromq
+ make: zeromq.rep_sink(${type.itemsize}, ${vlen}, ${address}, ${timeout}, ${pass_tags},
+ ${hwm})
+
+file_format: 1
diff --git a/gr-zeromq/grc/zeromq_rep_sink.xml b/gr-zeromq/grc/zeromq_rep_sink.xml
deleted file mode 100644
index 17c824156c..0000000000
--- a/gr-zeromq/grc/zeromq_rep_sink.xml
+++ /dev/null
@@ -1,89 +0,0 @@
-<?xml version="1.0"?>
-<block>
- <name>ZMQ REP Sink</name>
- <key>zeromq_rep_sink</key>
- <category>[Core]/ZeroMQ Interfaces</category>
- <import>from gnuradio import zeromq</import>
- <make>zeromq.rep_sink($type.itemsize, $vlen, $address, $timeout, $pass_tags, $hwm)</make>
-
- <param>
- <name>IO Type</name>
- <key>type</key>
- <type>enum</type>
- <option>
- <name>Complex</name>
- <key>complex</key>
- <opt>itemsize:gr.sizeof_gr_complex</opt>
- </option>
- <option>
- <name>Float</name>
- <key>float</key>
- <opt>itemsize:gr.sizeof_float</opt>
- </option>
- <option>
- <name>Int</name>
- <key>int</key>
- <opt>itemsize:gr.sizeof_int</opt>
- </option>
- <option>
- <name>Short</name>
- <key>short</key>
- <opt>itemsize:gr.sizeof_short</opt>
- </option>
- <option>
- <name>Byte</name>
- <key>byte</key>
- <opt>itemsize:gr.sizeof_char</opt>
- </option>
- </param>
-
- <param>
- <name>Vec Length</name>
- <key>vlen</key>
- <value>1</value>
- <type>int</type>
- </param>
-
- <param>
- <name>Address</name>
- <key>address</key>
- <type>string</type>
- </param>
-
- <param>
- <name>Timeout (msec)</name>
- <key>timeout</key>
- <value>100</value>
- <type>float</type>
- </param>
-
- <param>
- <name>Pass Tags</name>
- <key>pass_tags</key>
- <value>False</value>
- <type>enum</type>
- <option>
- <name>Yes</name>
- <key>True</key>
- </option>
- <option>
- <name>No</name>
- <key>False</key>
- </option>
- </param>
-
- <param>
- <name>High Watermark</name>
- <key>hwm</key>
- <value>-1</value>
- <type>int</type>
- <hide>#if $hwm() == -1 then 'part' else 'none'#</hide>
- </param>
-
- <sink>
- <name>in</name>
- <type>$type</type>
- <vlen>$vlen</vlen>
- </sink>
-
-</block>
diff --git a/gr-zeromq/grc/zeromq_req_msg_source.block.yml b/gr-zeromq/grc/zeromq_req_msg_source.block.yml
new file mode 100644
index 0000000000..81cefd573a
--- /dev/null
+++ b/gr-zeromq/grc/zeromq_req_msg_source.block.yml
@@ -0,0 +1,23 @@
+id: zeromq_req_msg_source
+label: ZMQ REQ Message Source
+category: '[Core]/ZeroMQ Interfaces'
+
+parameters:
+- id: address
+ label: Address
+ dtype: string
+- id: timeout
+ label: Timeout (msec)
+ dtype: float
+ default: '100'
+
+outputs:
+- domain: message
+ id: out
+ optional: true
+
+templates:
+ imports: from gnuradio import zeromq
+ make: zeromq.req_msg_source(${address}, ${timeout})
+
+file_format: 1
diff --git a/gr-zeromq/grc/zeromq_req_msg_source.xml b/gr-zeromq/grc/zeromq_req_msg_source.xml
deleted file mode 100644
index ae34c30dd0..0000000000
--- a/gr-zeromq/grc/zeromq_req_msg_source.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0"?>
-<block>
- <name>ZMQ REQ Message Source</name>
- <key>zeromq_req_msg_source</key>
- <category>[Core]/ZeroMQ Interfaces</category>
- <import>from gnuradio import zeromq</import>
- <make>zeromq.req_msg_source($address, $timeout)</make>
-
- <param>
- <name>Address</name>
- <key>address</key>
- <type>string</type>
- </param>
-
- <param>
- <name>Timeout (msec)</name>
- <key>timeout</key>
- <value>100</value>
- <type>float</type>
- </param>
-
- <source>
- <name>out</name>
- <type>message</type>
- <optional>1</optional>
- </source>
-
-</block>
diff --git a/gr-zeromq/grc/zeromq_req_source.block.yml b/gr-zeromq/grc/zeromq_req_source.block.yml
new file mode 100644
index 0000000000..f534e106a9
--- /dev/null
+++ b/gr-zeromq/grc/zeromq_req_source.block.yml
@@ -0,0 +1,48 @@
+id: zeromq_req_source
+label: ZMQ REQ Source
+category: '[Core]/ZeroMQ Interfaces'
+
+parameters:
+- id: type
+ label: IO Type
+ dtype: enum
+ options: [complex, float, int, short, byte]
+ option_attributes:
+ itemsize: [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: address
+ label: Address
+ dtype: string
+- id: timeout
+ label: Timeout (msec)
+ dtype: float
+ default: '100'
+- id: pass_tags
+ label: Pass Tags
+ dtype: enum
+ default: 'False'
+ options: ['True', 'False']
+ option_labels: ['Yes', 'No']
+- id: hwm
+ label: High Watermark
+ dtype: int
+ default: '-1'
+ hide: ${ ('part' if hwm == -1 else 'none') }
+
+outputs:
+- domain: stream
+ dtype: ${ type }
+ vlen: ${ vlen }
+
+templates:
+ imports: from gnuradio import zeromq
+ make: zeromq.req_source(${type.itemsize}, ${vlen}, ${address}, ${timeout}, ${pass_tags},
+ ${hwm})
+
+file_format: 1
diff --git a/gr-zeromq/grc/zeromq_req_source.xml b/gr-zeromq/grc/zeromq_req_source.xml
deleted file mode 100644
index 0fc1aa1488..0000000000
--- a/gr-zeromq/grc/zeromq_req_source.xml
+++ /dev/null
@@ -1,89 +0,0 @@
-<?xml version="1.0"?>
-<block>
- <name>ZMQ REQ Source</name>
- <key>zeromq_req_source</key>
- <category>[Core]/ZeroMQ Interfaces</category>
- <import>from gnuradio import zeromq</import>
- <make>zeromq.req_source($type.itemsize, $vlen, $address, $timeout, $pass_tags, $hwm)</make>
-
- <param>
- <name>IO Type</name>
- <key>type</key>
- <type>enum</type>
- <option>
- <name>Complex</name>
- <key>complex</key>
- <opt>itemsize:gr.sizeof_gr_complex</opt>
- </option>
- <option>
- <name>Float</name>
- <key>float</key>
- <opt>itemsize:gr.sizeof_float</opt>
- </option>
- <option>
- <name>Int</name>
- <key>int</key>
- <opt>itemsize:gr.sizeof_int</opt>
- </option>
- <option>
- <name>Short</name>
- <key>short</key>
- <opt>itemsize:gr.sizeof_short</opt>
- </option>
- <option>
- <name>Byte</name>
- <key>byte</key>
- <opt>itemsize:gr.sizeof_char</opt>
- </option>
- </param>
-
- <param>
- <name>Vec Length</name>
- <key>vlen</key>
- <value>1</value>
- <type>int</type>
- </param>
-
- <param>
- <name>Address</name>
- <key>address</key>
- <type>string</type>
- </param>
-
- <param>
- <name>Timeout (msec)</name>
- <key>timeout</key>
- <value>100</value>
- <type>float</type>
- </param>
-
- <param>
- <name>Pass Tags</name>
- <key>pass_tags</key>
- <value>False</value>
- <type>enum</type>
- <option>
- <name>Yes</name>
- <key>True</key>
- </option>
- <option>
- <name>No</name>
- <key>False</key>
- </option>
- </param>
-
- <param>
- <name>High Watermark</name>
- <key>hwm</key>
- <value>-1</value>
- <type>int</type>
- <hide>#if $hwm() == -1 then 'part' else 'none'#</hide>
- </param>
-
- <source>
- <name>out</name>
- <type>$type</type>
- <vlen>$vlen</vlen>
- </source>
-
-</block>
diff --git a/gr-zeromq/grc/zeromq_sub_msg_source.block.yml b/gr-zeromq/grc/zeromq_sub_msg_source.block.yml
new file mode 100644
index 0000000000..a9202d9480
--- /dev/null
+++ b/gr-zeromq/grc/zeromq_sub_msg_source.block.yml
@@ -0,0 +1,23 @@
+id: zeromq_sub_msg_source
+label: ZMQ SUB Message Source
+category: '[Core]/ZeroMQ Interfaces'
+
+parameters:
+- id: address
+ label: Address
+ dtype: string
+- id: timeout
+ label: Timeout (msec)
+ dtype: float
+ default: '100'
+
+outputs:
+- domain: message
+ id: out
+ optional: true
+
+templates:
+ imports: from gnuradio import zeromq
+ make: zeromq.sub_msg_source(${address}, ${timeout})
+
+file_format: 1
diff --git a/gr-zeromq/grc/zeromq_sub_msg_source.xml b/gr-zeromq/grc/zeromq_sub_msg_source.xml
deleted file mode 100644
index 475537f5fe..0000000000
--- a/gr-zeromq/grc/zeromq_sub_msg_source.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0"?>
-<block>
- <name>ZMQ SUB Message Source</name>
- <key>zeromq_sub_msg_source</key>
- <category>[Core]/ZeroMQ Interfaces</category>
- <import>from gnuradio import zeromq</import>
- <make>zeromq.sub_msg_source($address, $timeout)</make>
-
- <param>
- <name>Address</name>
- <key>address</key>
- <type>string</type>
- </param>
-
- <param>
- <name>Timeout (msec)</name>
- <key>timeout</key>
- <value>100</value>
- <type>float</type>
- </param>
-
- <source>
- <name>out</name>
- <type>message</type>
- <optional>1</optional>
- </source>
-
-</block>
diff --git a/gr-zeromq/grc/zeromq_sub_source.block.yml b/gr-zeromq/grc/zeromq_sub_source.block.yml
new file mode 100644
index 0000000000..7235d480f4
--- /dev/null
+++ b/gr-zeromq/grc/zeromq_sub_source.block.yml
@@ -0,0 +1,48 @@
+id: zeromq_sub_source
+label: ZMQ SUB Source
+category: '[Core]/ZeroMQ Interfaces'
+
+parameters:
+- id: type
+ label: IO Type
+ dtype: enum
+ options: [complex, float, int, short, byte]
+ option_attributes:
+ itemsize: [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: address
+ label: Address
+ dtype: string
+- id: timeout
+ label: Timeout (msec)
+ dtype: float
+ default: '100'
+- id: pass_tags
+ label: Pass Tags
+ dtype: enum
+ default: 'False'
+ options: ['True', 'False']
+ option_labels: ['Yes', 'No']
+- id: hwm
+ label: High Watermark
+ dtype: int
+ default: '-1'
+ hide: ${ ('part' if hwm == -1 else 'none') }
+
+outputs:
+- domain: stream
+ dtype: ${ type }
+ vlen: ${ vlen }
+
+templates:
+ imports: from gnuradio import zeromq
+ make: zeromq.sub_source(${type.itemsize}, ${vlen}, ${address}, ${timeout}, ${pass_tags},
+ ${hwm})
+
+file_format: 1
diff --git a/gr-zeromq/grc/zeromq_sub_source.xml b/gr-zeromq/grc/zeromq_sub_source.xml
deleted file mode 100644
index 31e6170c6a..0000000000
--- a/gr-zeromq/grc/zeromq_sub_source.xml
+++ /dev/null
@@ -1,89 +0,0 @@
-<?xml version="1.0"?>
-<block>
- <name>ZMQ SUB Source</name>
- <key>zeromq_sub_source</key>
- <category>[Core]/ZeroMQ Interfaces</category>
- <import>from gnuradio import zeromq</import>
- <make>zeromq.sub_source($type.itemsize, $vlen, $address, $timeout, $pass_tags, $hwm)</make>
-
- <param>
- <name>IO Type</name>
- <key>type</key>
- <type>enum</type>
- <option>
- <name>Complex</name>
- <key>complex</key>
- <opt>itemsize:gr.sizeof_gr_complex</opt>
- </option>
- <option>
- <name>Float</name>
- <key>float</key>
- <opt>itemsize:gr.sizeof_float</opt>
- </option>
- <option>
- <name>Int</name>
- <key>int</key>
- <opt>itemsize:gr.sizeof_int</opt>
- </option>
- <option>
- <name>Short</name>
- <key>short</key>
- <opt>itemsize:gr.sizeof_short</opt>
- </option>
- <option>
- <name>Byte</name>
- <key>byte</key>
- <opt>itemsize:gr.sizeof_char</opt>
- </option>
- </param>
-
- <param>
- <name>Vec Length</name>
- <key>vlen</key>
- <value>1</value>
- <type>int</type>
- </param>
-
- <param>
- <name>Address</name>
- <key>address</key>
- <type>string</type>
- </param>
-
- <param>
- <name>Timeout (msec)</name>
- <key>timeout</key>
- <value>100</value>
- <type>float</type>
- </param>
-
- <param>
- <name>Pass Tags</name>
- <key>pass_tags</key>
- <value>False</value>
- <type>enum</type>
- <option>
- <name>Yes</name>
- <key>True</key>
- </option>
- <option>
- <name>No</name>
- <key>False</key>
- </option>
- </param>
-
- <param>
- <name>High Watermark</name>
- <key>hwm</key>
- <value>-1</value>
- <type>int</type>
- <hide>#if $hwm() == -1 then 'part' else 'none'#</hide>
- </param>
-
- <source>
- <name>out</name>
- <type>$type</type>
- <vlen>$vlen</vlen>
- </source>
-
-</block>