using System.Xml; using System.Xml.Serialization; using SabreTools.Data.Models.Metadata; namespace SabreTools.Data.Models.Listxml { [XmlRoot("driver")] public class Driver { /// (good|imperfect|preliminary), (good|preliminary|test) in older versions [Required] [XmlAttribute("status")] public SupportStatus? Status { get; set; } /// (good|imperfect|preliminary), Only present in older versions [XmlAttribute("color")] public SupportStatus? Color { get; set; } /// (good|imperfect|preliminary), Only present in older versions [XmlAttribute("sound")] public SupportStatus? Sound { get; set; } /// Only present in older versions [XmlAttribute("palettesize")] public string? PaletteSize { get; set; } /// (good|imperfect|preliminary) [Required] [XmlAttribute("emulation")] public SupportStatus? Emulation { get; set; } /// (good|imperfect|preliminary) [Required] [XmlAttribute("cocktail")] public SupportStatus? Cocktail { get; set; } /// (supported|unsupported) [Required] [XmlAttribute("savestate")] public Supported? SaveState { get; set; } /// (yes|no) "no" [XmlAttribute("requiresartwork")] public bool? RequiresArtwork { get; set; } /// (yes|no) "no" [XmlAttribute("unofficial")] public bool? Unofficial { get; set; } /// (yes|no) "no" [XmlAttribute("nosoundhardware")] public bool? NoSoundHardware { get; set; } /// (yes|no) "no" [XmlAttribute("incomplete")] public bool? Incomplete { get; set; } } }