From ba72c3604ee6575682fe67780084f296a46a1cb5 Mon Sep 17 00:00:00 2001 From: sasha80 Date: Wed, 13 Nov 2024 09:28:15 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B5.=20=D0=92=D1=8B=D0=B7=D0=BE=D0=B2=20?= =?UTF-8?q?=D0=BE=D1=82=D1=81=D1=83=D1=82=D1=81=D1=82=D0=B2=D1=83=D1=8E?= =?UTF-8?q?=D1=89=D0=B5=D0=B3=D0=BE=20=D1=81=D0=B8=D0=B3=D0=BD=D0=B0=D0=BB?= =?UTF-8?q?=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/network.gd | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/scripts/network.gd b/scripts/network.gd index 81048a7c..13767b4f 100644 --- a/scripts/network.gd +++ b/scripts/network.gd @@ -1,4 +1,4 @@ -class_name rep_network extends Node +class_name Network extends Node const PROTOCOL_TYPES: = {'yau07tx': yau07.YaU07, 'json-capsrpb': capsrpb.CapsRpb, 'udp-json-mbcs': sch3.Sch3} @@ -7,6 +7,8 @@ const SERIAL_PROTO: = {'uart': spt25.SPT25 } var tick: int = 0 +signal socket_error(args) + class Serial extends SerialPort: func send_to(data: PackedByteArray): return write_raw(data) func _to_string() -> String: return 'последовательный порт \"%s\" @ %d (%s)' % [self.port, self.baudrate, 'открыт' if is_open() else 'закрыт'] @@ -216,18 +218,18 @@ func _process(_delta: float) -> void: var unit = units[addr] match unit.process(tick): Error.OK: sock_unicast.send_to([addr[0], dst_ports[addr]], unit.tx_data.slice(0, unit.tx_len)) - Error.FAILED: emit_signal('socket_error', 'ошибка: %s %s:%d' % [unit, addr[0], addr[1]]) + Error.FAILED: emit_signal('socket_error', [unit, sock_unicast]) for key in units_serial: var unit = units_serial[key] var serial = serials[key] match unit.process(tick): Error.OK: serial.send_to(unit.tx_data) - Error.FAILED: emit_signal('socket_error', 'ошибка: \"%s\"' % unit.name) + Error.FAILED: emit_signal('socket_error', [unit, serial]) for sock_unit in tcp_sockets: var sock = sock_unit[0] var unit = sock_unit[1] match unit.process(tick): Error.OK: sock.send_to(unit.tx_data) - Error.FAILED: emit_signal('socket_error', 'ошибка: %s' % unit) + Error.FAILED: emit_signal('socket_error', [unit, sock]) poll_receive_tcp(sock) poll_sockets.any(func(sock): poll_receive(sock))