Files
SabreTools/SabreTools.DatItems/Formats/Port.cs
2024-07-17 15:46:42 -04:00

40 lines
936 B
C#

using System.Xml.Serialization;
using Newtonsoft.Json;
namespace SabreTools.DatItems.Formats
{
/// <summary>
/// Represents a single port on a machine
/// </summary>
[JsonObject("port"), XmlRoot("port")]
public sealed class Port : DatItem<Models.Metadata.Port>
{
#region Fields
/// <inheritdoc>/>
protected override ItemType ItemType => ItemType.Port;
/// <inheritdoc>/>
protected override string? NameKey => null;
[JsonIgnore]
public bool AnalogsSpecified
{
get
{
var analogs = GetFieldValue<Analog[]?>(Models.Metadata.Port.AnalogKey);
return analogs != null && analogs.Length > 0;
}
}
#endregion
#region Constructors
public Port() : base() { }
public Port(Models.Metadata.Port item) : base(item) { }
#endregion
}
}