using System.Xml.Serialization; using Newtonsoft.Json; using SabreTools.Core.Tools; namespace SabreTools.DatItems.Formats { /// /// SoftwareList dataarea information /// /// One DataArea can contain multiple Rom items [JsonObject("dataarea"), XmlRoot("dataarea")] public sealed class DataArea : DatItem { #region Fields /// /> protected override ItemType ItemType => ItemType.DataArea; #endregion #region Constructors public DataArea() : base() { } public DataArea(Models.Metadata.DataArea item) : base(item) { // Process flag values if (GetStringFieldValue(Models.Metadata.DataArea.EndiannessKey) != null) SetFieldValue(Models.Metadata.DataArea.EndiannessKey, GetStringFieldValue(Models.Metadata.DataArea.EndiannessKey).AsEndianness().AsStringValue()); if (GetInt64FieldValue(Models.Metadata.DataArea.SizeKey) != null) SetFieldValue(Models.Metadata.DataArea.SizeKey, GetInt64FieldValue(Models.Metadata.DataArea.SizeKey).ToString()); if (GetInt64FieldValue(Models.Metadata.DataArea.WidthKey) != null) SetFieldValue(Models.Metadata.DataArea.WidthKey, GetInt64FieldValue(Models.Metadata.DataArea.WidthKey).ToString()); } #endregion } }