2023-07-13 23:04:11 -04:00
|
|
|
namespace SabreTools.Models.ClrMamePro
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Base class to unify the various game-like types
|
|
|
|
|
/// </summary>
|
|
|
|
|
public abstract class GameBase
|
|
|
|
|
{
|
|
|
|
|
/// <remarks>name</remarks>
|
2023-08-10 12:09:29 -04:00
|
|
|
[Required]
|
|
|
|
|
public string? Name { get; set; }
|
2023-07-13 23:04:11 -04:00
|
|
|
|
|
|
|
|
/// <remarks>description</remarks>
|
|
|
|
|
public string? Description { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <remarks>year</remarks>
|
|
|
|
|
public string? Year { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <remarks>manufacturer</remarks>
|
|
|
|
|
public string? Manufacturer { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <remarks>category</remarks>
|
|
|
|
|
public string? Category { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <remarks>cloneof</remarks>
|
|
|
|
|
public string? CloneOf { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <remarks>romof</remarks>
|
|
|
|
|
public string? RomOf { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <remarks>sampleof</remarks>
|
|
|
|
|
public string? SampleOf { get; set; }
|
|
|
|
|
|
2023-07-27 22:27:12 -04:00
|
|
|
/// <remarks>release</remarks>
|
|
|
|
|
public Release[]? Release { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <remarks>biosset</remarks>
|
|
|
|
|
public BiosSet[]? BiosSet { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <remarks>rom</remarks>
|
|
|
|
|
public Rom[]? Rom { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <remarks>disk</remarks>
|
|
|
|
|
public Disk[]? Disk { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <remarks>sample</remarks>
|
|
|
|
|
public Sample[]? Sample { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <remarks>archive</remarks>
|
|
|
|
|
public Archive[]? Archive { get; set; }
|
|
|
|
|
|
|
|
|
|
#region Aaru Extensions
|
|
|
|
|
|
|
|
|
|
/// <remarks>media, Appears after Disk</remarks>
|
|
|
|
|
public Media[]? Media { get; set; }
|
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region MAME Extensions
|
|
|
|
|
|
|
|
|
|
/// <remarks>chip, Appears after Archive</remarks>
|
|
|
|
|
public Chip[]? Chip { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <remarks>video, Appears after Chip</remarks>
|
2023-08-10 11:35:32 -04:00
|
|
|
public Video[]? Video { get; set; }
|
2023-07-27 22:27:12 -04:00
|
|
|
|
|
|
|
|
/// <remarks>sound, Appears after Video</remarks>
|
|
|
|
|
public Sound? Sound { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <remarks>input, Appears after Sound</remarks>
|
|
|
|
|
public Input? Input { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <remarks>dipswitch, Appears after Input</remarks>
|
|
|
|
|
public DipSwitch[]? DipSwitch { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <remarks>driver, Appears after DipSwitch</remarks>
|
|
|
|
|
public Driver? Driver { get; set; }
|
|
|
|
|
|
|
|
|
|
#endregion
|
2023-07-13 23:04:11 -04:00
|
|
|
|
|
|
|
|
#region DO NOT USE IN PRODUCTION
|
|
|
|
|
|
|
|
|
|
/// <remarks>Should be empty</remarks>
|
|
|
|
|
public string[]? ADDITIONAL_ELEMENTS { get; set; }
|
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
}
|
|
|
|
|
}
|