From 2abe5741ebe0e36e665f97654c814d44c71af380 Mon Sep 17 00:00:00 2001 From: sasha80 Date: Tue, 31 Mar 2026 15:21:51 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D0=BA=D0=B0.=20=D0=A0=D0=B5=D0=B6=D0=B8=D0=BC=20=D0=AD=D0=9C?= =?UTF-8?q?=D0=A1-=D0=A2=D0=93.=20=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=20=D1=81=D0=B8=D0=B3=D0=BD=D0=B0=D0=BB=20=D0=B4?= =?UTF-8?q?=D0=BB=D1=8F=20=D0=B8=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=8F=20=D1=81=D0=BE=D1=81=D1=82=D0=BE=D1=8F=D0=BD=D0=B8=D1=8F?= =?UTF-8?q?=20=D0=B2=D1=85=D0=BE=D0=B4=D0=BE=D0=B2=20=D0=AD=D0=9C=D0=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scenes/эмс/yems-devs.gd | 9 ++++++++- scripts/signaller.gd | 6 ++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/scenes/эмс/yems-devs.gd b/scenes/эмс/yems-devs.gd index cd17514f..32000d46 100644 --- a/scenes/эмс/yems-devs.gd +++ b/scenes/эмс/yems-devs.gd @@ -7,7 +7,6 @@ class InDev: var connector: String ## Номер разъёма в приборе. var delay: float ## Задержка фронта импульса. var offset: float ## Смещение фронта импульса. - var state: int ## Состояние входа. var freq: int ## Предполагаемая частота на которой работает комплекс. var ports_data: Dictionary ## Словарь состояния портов устройства. var tbl_row_id: int ## Индекс устройства в таблице. @@ -16,6 +15,14 @@ class InDev: var board: String ## Плата в которой находится устройство. var isa_addr: int ## Адрес устройства на шине isa + + @export var state: int: ## Состояние входа. + set(val): + if val != state: + state = val + signaller.call_deferred('emit_signal', 'yems_input_changed', id, val) + + func _init(dev_id : int, params : Array, row_id : int, base_addr: int): id = dev_id dev_name = String(params[0]) diff --git a/scripts/signaller.gd b/scripts/signaller.gd index 46fbe23d..10a18f85 100644 --- a/scripts/signaller.gd +++ b/scripts/signaller.gd @@ -11,6 +11,12 @@ func conn(sgnl: Signal, clbl: Callable): connect(sgnl.get_name(), clbl) func emmit(sgnl: Signal): emit_signal(sgnl.get_name()) +## Вызывается при изменении состояния входа ЭМС +## [param id] - идентификатор входа ЭМС +## [param state] - новое состояние входа ЭМС +signal yems_input_changed(id: int, state: int) + + ## Вызывается при обнаружение ошибки последовательного порта signal serial_error()