common/Hardware/WaterMeter/Genesis/Applications/MeterApplications.cs
2026-04-23 17:50:07 +02:00

66 lines
2.0 KiB
C#

using System;
using Xylem.Common.Hardware.WaterMeter.Genesis.Applications.Const;
namespace Xylem.Common.Hardware.WaterMeter.Genesis.Applications
{
/// <summary>
/// Meter FW and application information
/// </summary>
public class MeterApplications
{
/// <summary>
/// Name of application
/// </summary>
public String AppName;
/// <summary>
/// Identification number of application
/// </summary>
/// <remarks date="2025-Aug-05" author="Thomas Wiedebusch">
/// - AppId from Byte to UInt16 including typecast for Byte[] return. To external, it will be used as Byte
/// as before this change. But being able to parse the configuration.json with OPTICALINTERFACE using the
/// AppId 256, which exceeds the byte range as this isn't a real application, but will be used to identify
/// the interface (configuration.json) version.
/// </remarks>
public UInt16 AppId;
/// <summary>
/// Version of application
/// </summary>
public UInt32 Version;
/// <summary>
/// Version string of application because of FLEXNETVERSION does return a different layout, instead of decimals
/// it uses hexadecimals. Therefore, the version has to be saved as string at time of receiving for the FW-Update
/// comparison.
/// </summary>
public String StrVersion;
/// <summary>
/// Check of application for verification
/// </summary>
public UInt16 Crc;
/// <summary>
/// Check if application is installed
/// </summary>
public Boolean IsInstalled;
/// <summary>
/// Update this version
/// </summary>
public Boolean Update;
/// <summary>
/// Erase this version
/// </summary>
public Boolean Erase;
/// <summary>
/// Status text
/// </summary>
public MeterAppState Status;
}
}