Files
BQP/srcs/RobotNet10/RobotApp/Communication/Sick.SafetyScanners/DataStructures/ConfigMetadata.cs
2026-07-13 09:25:40 +07:00

64 lines
1.9 KiB
C#

namespace Sick.SafetyScanners.DataStructures;
/// <summary>
/// Contains the configuration metadata from a COLA2 variable command response
/// </summary>
public sealed class ConfigMetadata
{
/// <summary>
/// Gets or sets the version indicator (e.g., "V" for version)
/// </summary>
public string VersionCVersion { get; init; } = string.Empty;
/// <summary>
/// Gets or sets the major version number
/// </summary>
public byte VersionMajorVersionNumber { get; init; }
/// <summary>
/// Gets or sets the minor version number
/// </summary>
public byte VersionMinorVersionNumber { get; init; }
/// <summary>
/// Gets or sets the version release number
/// </summary>
public byte VersionReleaseNumber { get; init; }
/// <summary>
/// Gets or sets the modification time date (days since 1980-01-01)
/// </summary>
public ushort ModificationTimeDate { get; init; }
/// <summary>
/// Gets or sets the modification time (milliseconds since midnight)
/// </summary>
public uint ModificationTimeTime { get; init; }
/// <summary>
/// Gets or sets the transfer time date (days since 1980-01-01)
/// </summary>
public ushort TransferTimeDate { get; init; }
/// <summary>
/// Gets or sets the transfer time (milliseconds since midnight)
/// </summary>
public uint TransferTimeTime { get; init; }
/// <summary>
/// Gets or sets the application checksum
/// </summary>
public uint AppChecksum { get; init; }
/// <summary>
/// Gets or sets the overall checksum
/// </summary>
public uint OverallChecksum { get; init; }
/// <summary>
/// Gets or sets the integrity hash (array of uint32 values)
/// </summary>
public IReadOnlyList<uint> IntegrityHash { get; init; } = Array.Empty<uint>();
}