Рефактор.

This commit is contained in:
sasha80
2023-08-25 14:33:47 +03:00
parent bad6130eb3
commit 8204ee9671
4 changed files with 24 additions and 16 deletions

View File

@@ -1,5 +1,6 @@
extends ScrollContainer
## Отображение параметров цели
const CellLineEdit = preload('res://scenes/ячейка-2.tscn') ## Ячейка таблицы.
const TableHeader = preload('res://table/header.tscn') ## Ячейка заголовок таблицы.
@@ -10,6 +11,7 @@ const TABLE_ROW = [ CellLineEdit, CellLineEdit ] ## Описание
const TABLE_HEADERS_TEXT = ['Параметр', 'Значение' ] ## Назания колонок.
const TABLE_COLUMN_SIZE = [ 370, 85 ] ## Ширины колонок.
## Параметры цели для отображения в таблице.[br]
## [b]val[0][/b] - Индекс строки.[br][b]val[1][/b] - Содержание.
const TABLE_PARAMS = {

View File

@@ -9,13 +9,13 @@ const BUFFER_SIZE = 2048 ## Размер приёмного буфера д
class CapsRpb:
signal line_changed(unit: CapsRpb) ## Сигнал состояние связи изменилось
signal data_received(unit: CapsRpb) ## Сигнал данные приняты
signal command_fail(unit: CapsRpb) ## Сигнал при не выполнении команды
signal parse_error(unit: CapsRpb, msg: String) ## Сигнал ошибки разбора сообщения
signal line_changed(unit: CapsRpb) ## Сигнал состояние связи изменилось
signal data_received(unit: CapsRpb) ## Сигнал данные приняты
signal command_fail(unit: CapsRpb) ## Сигнал при не выполнении команды
signal parse_error(unit: CapsRpb, msg: String) ## Сигнал ошибки разбора сообщения
static var json_conv: = JSON.new()
var online: = false ## Состояние на связи
var online: = false ## Состояние связи с источником сообщений
var name: String ## Имя экземпляра
var json_dic: Dictionary ## Аппарат для разбора сообщений
var tick: = 0 ## Тик время последнего обновления, мс

View File

@@ -2,9 +2,15 @@ extends Node
## Параметры
## Профили внешних устройств
## Профили внешних устройств.[br]
## [param key] - Название.[br]
## [param val[0]] - Протокол.[br]
## [param val[1]] - Адрес.[br]
## [param val[2]] - Порт.[br]
## [param val[3]] - Широковещательное.[br]
## [param val[4]] - Привязывать к адресу.[br]
## [param val[5]] - Комментарий.[br]
@export var UnitProfiles: = { \
# Название Протокол Адрес Порт Широков. Привяз. Комментарий
'уарэп-яу07-частный': ['yau07rx', '127.0.0.1', 50079, false, true, 'IP-адрес на котором принимают частные сообщения от ЯУ-07'],
'уарэп-яу07-общий': ['yau07rx', '127.0.0.255', 50000, true, true, 'IP-адрес на котором принимают широковещательные сообщения от ЯУ-07'],
'уарэп-капсрпб-пол': ['jsonrx', '127.0.0.1', 42023, false, true, 'IP-адрес на котором принимают сообщения от КАПС РПБ'],
@@ -27,12 +33,12 @@ extends Node
## Параметры цели
@export var ThreatParams = {
'radius_center': Vector2(560, 560), ## Координаты центра диаграммы в пикселях для отображения частота-пеленг
'time_lost': 5000, ## Время после последнего обновления в мс, через которое цель считается потерянной
'freq_low': 200.0, ## Нижняя рабочая частота, МГЦ
'freq_high': 6000.0, ## Нижняя рабочая частота, МГЦ
'radius_inner': 200, ## Внутренний радиус диаграммы в пикселях для отображения частота-пеленг
'radius_outter': 550 ## Наружний радиус диаграммы в пикселях для отображения частота-пеленг
'radius_center': Vector2(560, 560), ## Координаты центра диаграммы в пикселях для отображения частота-пеленг.
'time_lost': 5000, ## Время после последнего обновления в мс, через которое цель считается потерянной.
'freq_low': 200.0, ## Нижняя рабочая частота, МГЦ.
'freq_high': 6000.0, ## Верхняя рабочая частота, МГЦ.
'radius_inner': 200, ## Внутренний радиус диаграммы в пикселях для отображения частота-пеленг.
'radius_outter': 550 ## Наружний радиус диаграммы в пикселях для отображения частота-пеленг.
}

View File

@@ -31,9 +31,9 @@ class Threat:
func _to_string() -> String: return '<Threat>: номер:%d пеленг:%0.1f частота:%0.1f МГц' % [id, aoa, freq]
func clear_fflags(): Tools.get_members_names(self).any(func(vn): fflags[vn] = false)
func set_from_dic(dic_vals: Dictionary):
var items: = fflags.keys().filter(func(vn): return dic_vals.has(vn))
items.any(func(vn): set(vn, dic_vals[vn]); fflags[vn] = true; return false)
func set_from_dic(dic: Dictionary):
var items: = fflags.keys().filter(func(vn): return dic.has(vn))
items.any(func(vn): set(vn, dic[vn]); fflags[vn] = true; return false)
signal threat_new(th: Threat)