using System;
using System.Collections.Generic;
using System.Text;
using Xylem.Common.Hardware.WaterMeter.Genesis.Registers;
using Xylem.Common.Hardware.WaterMeter.Genesis.Registers.DataTypes;
using Xylem.Common.Logic.ProductionOrderCore.OrderData;
using Xylem.Common.Utils.Crc16Ccitt;
namespace Xylem.Common.Hardware.WaterMeter.Genesis.GenesisFile
{
///
/// File for metrology look up table
///
public class MeterLogFiles
{
/////
///// List all meter log files covered by the log index file
/////
/////
///// - Initial
/////
//private List ListLogFiles(String logFileName = null)
//{
// SetActualProcessAndLog(@"Flushing the logger");
// _currentGenesis.WriteRegister("LOGGER_TriggerLogFlush", 1);
// CalculateMeterDateTime(RegisterConverter.ByteArrayToValue(
// _currentGenesis.ReadRegister("SYSTEM_CalendarSeconds")));
// SetActualProcessAndLog(@"Reading log index file");
// _meterFile.ReadMeterFile(MeterFile.StrMeterEngLogIndexFile, out var data);
// var fileNames = new List();
// var rawData = data.ToArray();
// var sample = new Byte[4];
// for (var ctr = 0; ctr < data.Count; ctr += 4)
// {
// for (var x = 0; x < 4; x++)
// {
// sample[x] = rawData[ctr + x];
// }
// var name = $"1\\{RegisterConverter.ByteArrayToValue(sample):X8}";
// LogText($"Log file catalogue: {name}", logFileName);
// fileNames.Add(name);
// }
// LogText("", logFileName);
// fileNames.Sort();
// return fileNames;
//}
/////
///// Analyze the log file contents.
/////
/////
///// - Init.
/////
//private Boolean AnalyzeLogFiles()
//{
// var meterDateTime = new TimeT { SecondsSince2000 = secSince2000 };
// return meterDateTime.ToString();
//}
/////
///// Calculate the Cordonel time.
/////
/////
///// - Init.
/////
/////
///// - Used to calculate time in UTC based on 01. Jan 2000
///// and the given offset in seconds.
/////
//private String CalculateMeterDateTime(Int32 secSince2000)
//{
// var meterDateTime = new TimeT { SecondsSince2000 = secSince2000 };
// return meterDateTime.ToString();
//}
}
}