55 lines
1.6 KiB
C#
55 lines
1.6 KiB
C#
using System.ComponentModel.DataAnnotations;
|
|
using System.Text.Json.Serialization;
|
|
|
|
namespace RobotNet.VDA5050.Factsheet;
|
|
|
|
|
|
public class FactSheetMsg
|
|
{
|
|
[JsonPropertyName("headerId")]
|
|
public uint HeaderId { get; set; }
|
|
|
|
[JsonPropertyName("timestamp")]
|
|
[JsonConverter(typeof(DateTimeConverter))]
|
|
public DateTime Timestamp { get; set; }
|
|
|
|
[Required]
|
|
[JsonPropertyName("version")]
|
|
public string Version { get; set; } = string.Empty;
|
|
|
|
[Required]
|
|
[JsonPropertyName("manufacturer")]
|
|
public string Manufacturer { get; set; } = string.Empty;
|
|
|
|
[Required]
|
|
[JsonPropertyName("serialNumber")]
|
|
public string SerialNumber { get; set; } = string.Empty;
|
|
|
|
[Required]
|
|
[JsonPropertyName("typeSpecification")]
|
|
public TypeSpecification TypeSpecification { get; set; } = new();
|
|
|
|
[Required]
|
|
[JsonPropertyName("physicalParameters")]
|
|
public PhysicalParameter PhysicalParameters { get; set; } = new();
|
|
|
|
[Required]
|
|
[JsonPropertyName("protocolLimits")]
|
|
public ProtocolLimits ProtocolLimits { get; set; } = new();
|
|
|
|
[Required]
|
|
[JsonPropertyName("protocolFeatures")]
|
|
public ProtocolFeatures ProtocolFeatures { get; set; } = new();
|
|
|
|
[Required]
|
|
[JsonPropertyName("agvGeometry")]
|
|
public AgvGeometry AgvGeometry { get; set; } = new();
|
|
|
|
[Required]
|
|
[JsonPropertyName("loadSpecification")]
|
|
public LoadSpecification LoadSpecification { get; set; } = new();
|
|
|
|
[JsonPropertyName("vehicleConfig")]
|
|
public VehicleConfig VehicleConfig { get; set; } = new();
|
|
}
|