diff options
author | Nao Pross <np@0hm.ch> | 2021-11-15 18:51:53 +0100 |
---|---|---|
committer | Nao Pross <np@0hm.ch> | 2021-11-15 18:51:53 +0100 |
commit | 501dd417fa41dbe2ba6a550e78af4b8f8b7a1630 (patch) | |
tree | a5d88939c70cd26f5f0193ec5a5ca5b686a251ef /src | |
parent | Create UI Plot sink block (diff) | |
download | Fading-501dd417fa41dbe2ba6a550e78af4b8f8b7a1630.tar.gz Fading-501dd417fa41dbe2ba6a550e78af4b8f8b7a1630.zip |
Test UDP connection on sink block
Can be tested locally with: netcat -l4kuv localhost 31415
Diffstat (limited to 'src')
-rw-r--r-- | src/gr-fadingui/grc/fadingui_dearpygui_sink.block.yml | 2 | ||||
-rw-r--r-- | src/gr-fadingui/python/dearpygui_sink.py | 15 |
2 files changed, 14 insertions, 3 deletions
diff --git a/src/gr-fadingui/grc/fadingui_dearpygui_sink.block.yml b/src/gr-fadingui/grc/fadingui_dearpygui_sink.block.yml index 3712be4..dbe6198 100644 --- a/src/gr-fadingui/grc/fadingui_dearpygui_sink.block.yml +++ b/src/gr-fadingui/grc/fadingui_dearpygui_sink.block.yml @@ -4,7 +4,7 @@ category: '[fadingui]' templates: imports: import fadingui - make: fadingui.dearpygui_sink() + make: fadingui.dearpygui_sink(sock_addr=${sock_addr}, ui_element_id=${ui_element_id}) # Make one 'parameters' list entry for every parameter you want settable from the GUI. # Keys include: diff --git a/src/gr-fadingui/python/dearpygui_sink.py b/src/gr-fadingui/python/dearpygui_sink.py index 2b8e9fb..353f2d9 100644 --- a/src/gr-fadingui/python/dearpygui_sink.py +++ b/src/gr-fadingui/python/dearpygui_sink.py @@ -19,6 +19,8 @@ # Boston, MA 02110-1301, USA. # +import socket +from urllib.parse import urlparse import numpy as np from gnuradio import gr @@ -27,15 +29,24 @@ class dearpygui_sink(gr.sync_block): """ docstring for block dearpygui_sink """ - def __init__(self): + def __init__(self, sock_addr, ui_element_id): gr.sync_block.__init__(self, name="dearpygui_sink", in_sig=[np.complex64], out_sig=None) + # sockets + self.socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) + self.srv = urlparse(sock_addr) + + def send(self, value): + data = bytes(repr(value), "ascii") + sent = self.socket.sendto(data, (self.srv.hostname, self.srv.port)) + + return len(data) == sent def work(self, input_items, output_items): in0 = input_items[0] - # <+signal processing here+> + self.send(in0) return len(input_items[0]) |