<?xml version="1.0"?> <!-- ################################################### ##TCP Source: Custom blks2 block ################################################### --> <block> <name>TCP Source</name> <key>blks2_tcp_source</key> <import>from grc_gnuradio import blks2 as grc_blks2</import> <make>grc_blks2.tcp_source( itemsize=$type.size*$vlen, addr=$addr, port=$port, server=$server, )</make> <param> <name>Output 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>Address</name> <key>addr</key> <value>127.0.0.1</value> <type>string</type> </param> <param> <name>Port</name> <key>port</key> <value>0</value> <type>int</type> </param> <param> <name>Mode</name> <key>server</key> <value>True</value> <type>enum</type> <option> <name>Server</name> <key>True</key> </option> <option> <name>Client</name> <key>False</key> </option> </param> <param> <name>Vec Length</name> <key>vlen</key> <value>1</value> <type>int</type> </param> <check>$vlen > 0</check> <source> <name>out</name> <type>$type</type> <vlen>$vlen</vlen> </source> <doc> In client mode, we attempt to connect to a server at the given address and port. \ In server mode, we bind a socket to the given address and port and accept the first client. </doc> </block>