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-адрес на котором принимают сообщения от КАПС РПБ'],
    'уарэп-капсрпб-отп':  ['jsontx',  '127.0.0.1',   42022, false,   false,  'IP-адрес на который отправляют сообщения для КАПС РПБ'],
    'уарэп-эмс':          ['yau07tx', '10.1.1.27',   50027, false,   false,  'IP-адрес ЯУ-07 прибора УФ'],
    'уарэп-яу07-2в':      ['yau07tx', '10.1.1.34',   50034, false,   false,  'IP-адрес ЯУ-07 прибора ПРД-В'],
    'уарэп-яу07-2н':      ['yau07tx', '10.1.1.33',   50033, false,   false,  'IP-адрес ЯУ-07 прибора ПРД-Н'],
    'уарэп-яу07-2к':      ['yau07tx', '10.1.1.35',   50035, false,   false,  'IP-адрес ЯУ-07 прибора ПРД-К'],
    'уарэп-яу07-4в':      ['yau07tx', '10.1.1.66',   50066, false,   false,  'IP-адрес ЯУ-07 прибора ПРД-В'],
    'уарэп-яу07-4н':      ['yau07tx', '10.1.1.65',   50065, false,   false,  'IP-адрес ЯУ-07 прибора ПРД-Н'],
    'уарэп-яу07-4к':      ['yau07tx', '10.1.1.67',   50067, false,   false,  'IP-адрес ЯУ-07 прибора ПРД-К'],
    'уарэп-яу07-1в':      ['yau07tx', '10.1.1.18',   50018, false,   false,  'IP-адрес ЯУ-07 прибора ПРД-В'],
    'уарэп-яу07-1н':      ['yau07tx', '10.1.1.17',   50017, false,   false,  'IP-адрес ЯУ-07 прибора ПРД-Н'],
    'уарэп-яу07-1к':      ['yau07tx', '10.1.1.19',   50019, false,   false,  'IP-адрес ЯУ-07 прибора ПРД-К'],
    'уарэп-яу07-3в':      ['yau07tx', '10.1.1.50',   50050, false,   false,  'IP-адрес ЯУ-07 прибора ПРД-В'],
    'уарэп-яу07-3н':      ['yau07tx', '10.1.1.49',   50049, false,   false,  'IP-адрес ЯУ-07 прибора ПРД-Н'],
    'уарэп-яу07-3к':      ['yau07tx', '10.1.1.51',   50051, false,   false,  'IP-адрес ЯУ-07 прибора ПРД-Н'],
    'уарэп-щ3':           ['uart',    '/dev/stty0',  115200, 1, 1, false, 1000, 'Прибор Щ3'] }  # скорость, стартовых, стоповых, чётность, таймаут в мкс


## Параметры цели
@export var ThreatParams = {
        'time_lost': 5000  ## Время после последнего обновления в мс, через которое цель считается потерянной.
     }


func _ready() -> void: log.info('Модуль настроек готов')


## Возвращает ключ устройства
func get_unit_key(unit_name: String) -> Array:
    assert(UnitProfiles.has(unit_name), 'ошибка: нет такого устройства \"%s\"' % unit_name)
    var item = UnitProfiles[unit_name]
    return [item[1], item[2]]
