using IOB_UT_NEXT.Config.Special; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace IOB_UT_NEXT.Config.Base { /// /// Info specifiche all'IOB /// public class IobDto { /// /// Nome file di configurazione /// public string FileName { get; set; } = ""; /// /// Filename senza desinenza del tipo di file /// public string FilenameIOB { get => baseUtils.StringBeforeLastChar(FileName, '.'); } /// /// Tipo Adapter specifico (implementazione) /// public tipoAdapter IobType { get; set; } = tipoAdapter.ND; /// /// Codice Cliente/Installazione /// public string Customer { get; set; } = "SteamWare"; /// /// Cod grupo IOB x creazione PODL al volo /// public string CodGruppoIob { get; set; } = "ND-00"; /// /// Codice univoco IOB /// public string CodIOB { get; set; } = "ND"; /// /// Tempo di attesa (in minuti) x lettura contapezzi standard (default 30 sec) /// public double DelayReadPzCount { get; set; } = 0.5; /// /// Tempo di attesa (in minuti) x lettura contapezzi standard DOPO fase di setup (default 6 sec, da init 0.6 sec) /// public double DelayReadPzCountSetup { get; set; } = 0.1; /// /// Disabilitazione invio DynData di WDST (WatchDogStateTransfer) /// public bool DisabWDST { get; set; } = true; /// /// Determina se sia prevista gestione PODL (creazione/avvio/chiusura) come Soitaab /// public bool EnabelPodlManFull { get; set; } = false; /// /// Soglia massima errori prima della disconnessione automatica in check /// public int MaxErroriCheck { get; set; } = 50; /// /// Max tentativi ping permessi (default: 5) /// public int MaxPingRetry { get; set; } = 5; /// /// Valore minimo (delta) in sec x considerare variazioni info /// public int MinDeltaSec { get; set; } = 5; /// /// Tempo massimo di WatchDog dopo cui inviare un segnale x evitare C101 /// public int WatchDogSec { get; set; } = 60; /// /// Periodo wathdog di default (2 sec se non specificato) /// public int WatchDogPeriod { get; set; } = 2; /// /// Abilita salvataggio coda eventi su redis (ritentiva) /// public bool EnabRedisQue { get; set; } = true; /// /// Forza esecuzione WorkLoopMachine (verso macchina PLC/CNC) in SingleThread (vs ThreadPool) /// public bool MachWLoopSingleThread { get; set; } = true; /// /// Versione software IOB /// public string RelVers { get; set; } = "0.0.0.0"; /// /// Indica se resettare allarmi all'avvio e inviare il reset appena parte adapter /// public bool ResetAlarmOnStart { get; set; } = false; /// /// Abilitazione invio conf macchine /// public bool SenMachineConf { get; set; } = true; /// /// Gestione dei Timers applicazione (UI + task varia scandenza) /// public TimersDto Timers { get; set; } = new TimersDto(); /// /// Tempo di attesa per tentativo reconnect in MSec, override da conf applicativo generale /// public int WaitRecMsec { get; set; } = 59000; } }