using System;
using System.Collections.Generic;
namespace IOB_UT_NEXT.Objects
{
///
/// Gestione dati di timing
///
public static class TimingData
{
#region Public Fields
public static List results = new List();
#endregion Public Fields
#region Public Methods
///
/// aggiorno vettore aggiungendo risultato
///
/// Codice chiamante
/// Codice da registrare (univoco con chiamante)
/// Tempo esecuzione in ticks
public static void addResult(string caller, string codice, long ticks)
{
if (results.Count == 0)
{
results.Add(new TimeRec(caller, codice, ticks));
}
int indice = -1;
for (int i = 0; i < results.Count; i++)
{
// se il codice è quello cercato...
if (results[i].codCall == codice && results[i].classCall == caller)
{
indice = i;
}
}
// se c'è aggiorno...
if (indice >= 0)
{
results[indice].numCall++;
results[indice].totMsec = results[indice].totMsec.Add(new TimeSpan(ticks));
}
// altrimenti aggiungo...
else
{
results.Add(new TimeRec(caller, codice, ticks));
}
}
///
/// Resetta i dati registrati (ad avvio adapter...)
///
public static void resetData()
{
results = new List();
}
#endregion Public Methods
}
}