using System;
using System.Collections.Generic;
namespace MapoSDK
{
///
/// Definizione allarme
///
public class alarmData
{
#region Public Properties
///
/// Codice univoco
///
public string code { get; set; } = "";
///
/// Descrizione
///
public string description { get; set; } = "";
///
/// Severity (0....1000, minimo...massimo)
///
public int severity { get; set; } = 0;
#endregion Public Properties
}
///
/// Definizione classe evento allarme
///
public class alarmEvent
{
#region Public Properties
///
/// Lista delle condizioni di allarme attive ad inizio evento
///
public List activeConditions { get; set; } = null;
///
/// Elenco dei dati di tipo FluxLog nei minuti antecedenti l'evento
///
public List blackBoxData { get; set; } = null;
///
/// Data riferimento campione in formato YMD = yyyyMMdd
///
public int dateYMD { get; set; } = 0;
///
/// Data-Ora inizio evento
///
public DateTime ended { get; set; } = DateTime.Now;
///
/// Data-Ora inizio evento
///
public DateTime started { get; set; } = DateTime.Now;
///
/// Contatore incrementale univoco annuale (per chiave yyyy.n)
///
public int yCounter { get; set; } = 0;
///
/// Anno di riferimento allarme (per chiave yyyy.n)
///
public int yCurr { get; set; } = 0;
#endregion Public Properties
}
///
/// Definizione classe evento allarme
///
public class alarmStats
{
#region Public Properties
///
/// Durata media annuale allarmi
///
public double avgDuration
{
get
{
double answ = 0;
try
{
answ = totalDuration / yCounter;
}
catch
{ }
return answ;
}
}
///
/// Valore cumulato complessivo degli allarmi registrati
///
public double totalDuration { get; set; } = 0;
///
/// Valore Contatore univoco annuale raggiunto yyyy.n
///
public int yCounter { get; set; } = 1;
///
/// Anno riferimento
///
public int year { get; set; } = 0;
#endregion Public Properties
}
}