68 lines
1.3 KiB
XML
68 lines
1.3 KiB
XML
<?xml version="1.0"?>
|
|
<block>
|
|
<name>Valve</name>
|
|
<key>foo_valve</key>
|
|
<category>[Foo]</category>
|
|
<import>import foo</import>
|
|
<make>foo.valve(item_size=$type.size*$vlen, open=bool($open))</make>
|
|
<callback>set_open(bool($open))</callback>
|
|
<param>
|
|
<name>Type</name>
|
|
<key>type</key>
|
|
<type>enum</type>
|
|
<option>
|
|
<name>Complex</name>
|
|
<key>complex</key>
|
|
<opt>size:gr.sizeof_gr_complex</opt>
|
|
</option>
|
|
<option>
|
|
<name>Float</name>
|
|
<key>float</key>
|
|
<opt>size:gr.sizeof_float</opt>
|
|
</option>
|
|
<option>
|
|
<name>Int</name>
|
|
<key>int</key>
|
|
<opt>size:gr.sizeof_int</opt>
|
|
</option>
|
|
<option>
|
|
<name>Short</name>
|
|
<key>short</key>
|
|
<opt>size:gr.sizeof_short</opt>
|
|
</option>
|
|
<option>
|
|
<name>Byte</name>
|
|
<key>byte</key>
|
|
<opt>size:gr.sizeof_char</opt>
|
|
</option>
|
|
</param>
|
|
<param>
|
|
<name>Open</name>
|
|
<key>open</key>
|
|
<value>0</value>
|
|
<type>raw</type>
|
|
</param>
|
|
<param>
|
|
<name>Vec Length</name>
|
|
<key>vlen</key>
|
|
<value>1</value>
|
|
<type>int</type>
|
|
</param>
|
|
<check>$vlen > 0</check>
|
|
<sink>
|
|
<name>in</name>
|
|
<type>$type</type>
|
|
<vlen>$vlen</vlen>
|
|
<nports>$num_inputs</nports>
|
|
</sink>
|
|
<source>
|
|
<name>out</name>
|
|
<type>$type</type>
|
|
<vlen>$vlen</vlen>
|
|
<nports>$num_outputs</nports>
|
|
</source>
|
|
<doc>
|
|
Connect output to input when valve is closed (not open).
|
|
</doc>
|
|
</block>
|