mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
Add metadata file serialization
This commit is contained in:
@@ -95,9 +95,6 @@ namespace SabreTools.Models.Internal
|
|||||||
/// <remarks>NewDat</remarks>
|
/// <remarks>NewDat</remarks>
|
||||||
public const string NewDatKey = "newDat";
|
public const string NewDatKey = "newDat";
|
||||||
|
|
||||||
/// <remarks>string</remarks>
|
|
||||||
public const string NoNamespaceSchemaLocationKey = "noNamespaceSchemaLocation";
|
|
||||||
|
|
||||||
/// <remarks>string</remarks>
|
/// <remarks>string</remarks>
|
||||||
public const string NotesKey = "notes";
|
public const string NotesKey = "notes";
|
||||||
|
|
||||||
@@ -119,6 +116,9 @@ namespace SabreTools.Models.Internal
|
|||||||
/// <remarks>(none|split|merged|nonmerged|fullmerged|device|full) "split"</remarks>
|
/// <remarks>(none|split|merged|nonmerged|fullmerged|device|full) "split"</remarks>
|
||||||
public const string SampleModeKey = "samplemode";
|
public const string SampleModeKey = "samplemode";
|
||||||
|
|
||||||
|
/// <remarks>string</remarks>
|
||||||
|
public const string SchemaLocationKey = "schemaLocation";
|
||||||
|
|
||||||
/// <remarks>string</remarks>
|
/// <remarks>string</remarks>
|
||||||
public const string ScreenshotsHeightKey = "screenshotsHeight";
|
public const string ScreenshotsHeightKey = "screenshotsHeight";
|
||||||
|
|
||||||
|
|||||||
@@ -10,10 +10,26 @@ namespace SabreTools.Serialization
|
|||||||
{
|
{
|
||||||
#region Serialize
|
#region Serialize
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.ArchiveDotOrg.Files"/> to <cref="MetadataFile"/>
|
||||||
|
/// </summary>
|
||||||
|
public static MetadataFile ConvertFromArchiveDotOrg(Models.ArchiveDotOrg.Files item)
|
||||||
|
{
|
||||||
|
var metadataFile = new MetadataFile
|
||||||
|
{
|
||||||
|
[MetadataFile.HeaderKey] = ConvertHeaderFromArchiveDotOrg(item),
|
||||||
|
};
|
||||||
|
|
||||||
|
if (item?.File != null && item.File.Any())
|
||||||
|
metadataFile[MetadataFile.MachineKey] = item.File.Select(ConvertMachineFromArchiveDotOrg).ToArray();
|
||||||
|
|
||||||
|
return metadataFile;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ArchiveDotOrg.Files"/> to <cref="Header"/>
|
/// Convert from <cref="Models.ArchiveDotOrg.Files"/> to <cref="Header"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Header ConvertHeaderFromArchiveDotOrg(Models.ArchiveDotOrg.Files item)
|
private static Header ConvertHeaderFromArchiveDotOrg(Models.ArchiveDotOrg.Files item)
|
||||||
{
|
{
|
||||||
var header = new Header
|
var header = new Header
|
||||||
{
|
{
|
||||||
@@ -25,7 +41,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ArchiveDotOrg.File"/> to <cref="Machine"/>
|
/// Convert from <cref="Models.ArchiveDotOrg.File"/> to <cref="Machine"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Machine ConvertMachineFromArchiveDotOrg(Models.ArchiveDotOrg.File item)
|
private static Machine ConvertMachineFromArchiveDotOrg(Models.ArchiveDotOrg.File item)
|
||||||
{
|
{
|
||||||
var machine = new Machine
|
var machine = new Machine
|
||||||
{
|
{
|
||||||
@@ -37,7 +53,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ArchiveDotOrg.File"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.ArchiveDotOrg.File"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromArchiveDotOrg(Models.ArchiveDotOrg.File item)
|
private static Rom ConvertFromArchiveDotOrg(Models.ArchiveDotOrg.File item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -10,10 +10,26 @@ namespace SabreTools.Serialization
|
|||||||
{
|
{
|
||||||
#region Serialize
|
#region Serialize
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.AttractMode.MetadataFile"/> to <cref="MetadataFile"/>
|
||||||
|
/// </summary>
|
||||||
|
public static MetadataFile ConvertFromAttractMode(Models.AttractMode.MetadataFile item)
|
||||||
|
{
|
||||||
|
var metadataFile = new MetadataFile
|
||||||
|
{
|
||||||
|
[MetadataFile.HeaderKey] = ConvertHeaderFromAttractMode(item),
|
||||||
|
};
|
||||||
|
|
||||||
|
if (item?.Row != null && item.Row.Any())
|
||||||
|
metadataFile[MetadataFile.MachineKey] = item.Row.Select(ConvertMachineFromAttractMode).ToArray();
|
||||||
|
|
||||||
|
return metadataFile;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.AttractMode.MetadataFile"/> to <cref="Header"/>
|
/// Convert from <cref="Models.AttractMode.MetadataFile"/> to <cref="Header"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Header ConvertHeaderFromAttractMode(Models.AttractMode.MetadataFile item)
|
private static Header ConvertHeaderFromAttractMode(Models.AttractMode.MetadataFile item)
|
||||||
{
|
{
|
||||||
var header = new Header
|
var header = new Header
|
||||||
{
|
{
|
||||||
@@ -25,7 +41,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.AttractMode.Row"/> to <cref="Machine"/>
|
/// Convert from <cref="Models.AttractMode.Row"/> to <cref="Machine"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Machine ConvertMachineFromAttractMode(Models.AttractMode.Row item)
|
private static Machine ConvertMachineFromAttractMode(Models.AttractMode.Row item)
|
||||||
{
|
{
|
||||||
var machine = new Machine
|
var machine = new Machine
|
||||||
{
|
{
|
||||||
@@ -56,7 +72,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.AttractMode.Row"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.AttractMode.Row"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromAttractMode(Models.AttractMode.Row item)
|
private static Rom ConvertFromAttractMode(Models.AttractMode.Row item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -11,10 +11,26 @@ namespace SabreTools.Serialization
|
|||||||
{
|
{
|
||||||
#region Serialize
|
#region Serialize
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.ClrMamePro.MetadataFile"/> to <cref="MetadataFile"/>
|
||||||
|
/// </summary>
|
||||||
|
public static MetadataFile ConvertFromClrMamePro(Models.ClrMamePro.MetadataFile item)
|
||||||
|
{
|
||||||
|
var metadataFile = new MetadataFile();
|
||||||
|
|
||||||
|
if (item?.ClrMamePro != null)
|
||||||
|
metadataFile[MetadataFile.HeaderKey] = ConvertHeaderFromClrMamePro(item.ClrMamePro);
|
||||||
|
|
||||||
|
if (item?.Game != null && item.Game.Any())
|
||||||
|
metadataFile[MetadataFile.MachineKey] = item.Game.Select(ConvertMachineFromClrMamePro).ToArray();
|
||||||
|
|
||||||
|
return metadataFile;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ClrMamePro.ClrMamePro"/> to <cref="Header"/>
|
/// Convert from <cref="Models.ClrMamePro.ClrMamePro"/> to <cref="Header"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Header ConvertHeaderFromClrMamePro(Models.ClrMamePro.ClrMamePro item)
|
private static Header ConvertHeaderFromClrMamePro(Models.ClrMamePro.ClrMamePro item)
|
||||||
{
|
{
|
||||||
var header = new Header
|
var header = new Header
|
||||||
{
|
{
|
||||||
@@ -40,7 +56,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ClrMamePro.GameBase"/> to <cref="Machine"/>
|
/// Convert from <cref="Models.ClrMamePro.GameBase"/> to <cref="Machine"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Machine ConvertMachineFromClrMamePro(Models.ClrMamePro.GameBase item)
|
private static Machine ConvertMachineFromClrMamePro(Models.ClrMamePro.GameBase item)
|
||||||
{
|
{
|
||||||
var machine = new Machine
|
var machine = new Machine
|
||||||
{
|
{
|
||||||
@@ -162,7 +178,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ClrMamePro.Archive"/> to <cref="Archive"/>
|
/// Convert from <cref="Models.ClrMamePro.Archive"/> to <cref="Archive"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Archive ConvertFromClrMamePro(Models.ClrMamePro.Archive item)
|
private static Archive ConvertFromClrMamePro(Models.ClrMamePro.Archive item)
|
||||||
{
|
{
|
||||||
var archive = new Archive
|
var archive = new Archive
|
||||||
{
|
{
|
||||||
@@ -174,7 +190,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ClrMamePro.BiosSet"/> to <cref="BiosSet"/>
|
/// Convert from <cref="Models.ClrMamePro.BiosSet"/> to <cref="BiosSet"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static BiosSet ConvertFromClrMamePro(Models.ClrMamePro.BiosSet item)
|
private static BiosSet ConvertFromClrMamePro(Models.ClrMamePro.BiosSet item)
|
||||||
{
|
{
|
||||||
var biosset = new BiosSet
|
var biosset = new BiosSet
|
||||||
{
|
{
|
||||||
@@ -188,7 +204,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ClrMamePro.Chip"/> to <cref="Chip"/>
|
/// Convert from <cref="Models.ClrMamePro.Chip"/> to <cref="Chip"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Chip ConvertFromClrMamePro(Models.ClrMamePro.Chip item)
|
private static Chip ConvertFromClrMamePro(Models.ClrMamePro.Chip item)
|
||||||
{
|
{
|
||||||
var chip = new Chip
|
var chip = new Chip
|
||||||
{
|
{
|
||||||
@@ -203,7 +219,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ClrMamePro.DipSwitch"/> to <cref="DipSwitch"/>
|
/// Convert from <cref="Models.ClrMamePro.DipSwitch"/> to <cref="DipSwitch"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static DipSwitch ConvertFromClrMamePro(Models.ClrMamePro.DipSwitch item)
|
private static DipSwitch ConvertFromClrMamePro(Models.ClrMamePro.DipSwitch item)
|
||||||
{
|
{
|
||||||
var dipswitch = new DipSwitch
|
var dipswitch = new DipSwitch
|
||||||
{
|
{
|
||||||
@@ -217,7 +233,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ClrMamePro.Disk"/> to <cref="Disk"/>
|
/// Convert from <cref="Models.ClrMamePro.Disk"/> to <cref="Disk"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Disk ConvertFromClrMamePro(Models.ClrMamePro.Disk item)
|
private static Disk ConvertFromClrMamePro(Models.ClrMamePro.Disk item)
|
||||||
{
|
{
|
||||||
var disk = new Disk
|
var disk = new Disk
|
||||||
{
|
{
|
||||||
@@ -234,7 +250,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ClrMamePro.Driver"/> to <cref="Driver"/>
|
/// Convert from <cref="Models.ClrMamePro.Driver"/> to <cref="Driver"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Driver ConvertFromClrMamePro(Models.ClrMamePro.Driver item)
|
private static Driver ConvertFromClrMamePro(Models.ClrMamePro.Driver item)
|
||||||
{
|
{
|
||||||
var driver = new Driver
|
var driver = new Driver
|
||||||
{
|
{
|
||||||
@@ -250,7 +266,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ClrMamePro.Input"/> to <cref="Input"/>
|
/// Convert from <cref="Models.ClrMamePro.Input"/> to <cref="Input"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Input ConvertFromClrMamePro(Models.ClrMamePro.Input item)
|
private static Input ConvertFromClrMamePro(Models.ClrMamePro.Input item)
|
||||||
{
|
{
|
||||||
var input = new Input
|
var input = new Input
|
||||||
{
|
{
|
||||||
@@ -267,7 +283,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ClrMamePro.Media"/> to <cref="Media"/>
|
/// Convert from <cref="Models.ClrMamePro.Media"/> to <cref="Media"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Media ConvertFromClrMamePro(Models.ClrMamePro.Media item)
|
private static Media ConvertFromClrMamePro(Models.ClrMamePro.Media item)
|
||||||
{
|
{
|
||||||
var media = new Media
|
var media = new Media
|
||||||
{
|
{
|
||||||
@@ -283,7 +299,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ClrMamePro.Release"/> to <cref="Release"/>
|
/// Convert from <cref="Models.ClrMamePro.Release"/> to <cref="Release"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Release ConvertFromClrMamePro(Models.ClrMamePro.Release item)
|
private static Release ConvertFromClrMamePro(Models.ClrMamePro.Release item)
|
||||||
{
|
{
|
||||||
var release = new Release
|
var release = new Release
|
||||||
{
|
{
|
||||||
@@ -299,7 +315,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ClrMamePro.Rom"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.ClrMamePro.Rom"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromClrMamePro(Models.ClrMamePro.Rom item)
|
private static Rom ConvertFromClrMamePro(Models.ClrMamePro.Rom item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
@@ -331,7 +347,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ClrMamePro.Sample"/> to <cref="Sample"/>
|
/// Convert from <cref="Models.ClrMamePro.Sample"/> to <cref="Sample"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Sample ConvertFromClrMamePro(Models.ClrMamePro.Sample item)
|
private static Sample ConvertFromClrMamePro(Models.ClrMamePro.Sample item)
|
||||||
{
|
{
|
||||||
var sample = new Sample
|
var sample = new Sample
|
||||||
{
|
{
|
||||||
@@ -343,7 +359,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ClrMamePro.Sound"/> to <cref="Sound"/>
|
/// Convert from <cref="Models.ClrMamePro.Sound"/> to <cref="Sound"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Sound ConvertFromClrMamePro(Models.ClrMamePro.Sound item)
|
private static Sound ConvertFromClrMamePro(Models.ClrMamePro.Sound item)
|
||||||
{
|
{
|
||||||
var sound = new Sound
|
var sound = new Sound
|
||||||
{
|
{
|
||||||
@@ -355,7 +371,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.ClrMamePro.Video"/> to <cref="Video"/>
|
/// Convert from <cref="Models.ClrMamePro.Video"/> to <cref="Video"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Video ConvertFromClrMamePro(Models.ClrMamePro.Video item)
|
private static Video ConvertFromClrMamePro(Models.ClrMamePro.Video item)
|
||||||
{
|
{
|
||||||
var video = new Video
|
var video = new Video
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -11,10 +11,26 @@ namespace SabreTools.Serialization
|
|||||||
{
|
{
|
||||||
#region Serialize
|
#region Serialize
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.DosCenter.MetadataFile"/> to <cref="MetadataFile"/>
|
||||||
|
/// </summary>
|
||||||
|
public static MetadataFile ConvertFromDosCenter(Models.DosCenter.MetadataFile item)
|
||||||
|
{
|
||||||
|
var metadataFile = new MetadataFile();
|
||||||
|
|
||||||
|
if (item?.DosCenter != null)
|
||||||
|
metadataFile[MetadataFile.HeaderKey] = ConvertHeaderFromDosCenter(item.DosCenter);
|
||||||
|
|
||||||
|
if (item?.Game != null && item.Game.Any())
|
||||||
|
metadataFile[MetadataFile.MachineKey] = item.Game.Select(ConvertMachineFromDosCenter).ToArray();
|
||||||
|
|
||||||
|
return metadataFile;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.DosCenter.DosCenter"/> to <cref="Header"/>
|
/// Convert from <cref="Models.DosCenter.DosCenter"/> to <cref="Header"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Header ConvertHeaderFromDosCenter(Models.DosCenter.DosCenter item)
|
private static Header ConvertHeaderFromDosCenter(Models.DosCenter.DosCenter item)
|
||||||
{
|
{
|
||||||
var header = new Header
|
var header = new Header
|
||||||
{
|
{
|
||||||
@@ -32,7 +48,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.DosCenter.Game"/> to <cref="Machine"/>
|
/// Convert from <cref="Models.DosCenter.Game"/> to <cref="Machine"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Machine ConvertMachineFromDosCenter(Models.DosCenter.Game item)
|
private static Machine ConvertMachineFromDosCenter(Models.DosCenter.Game item)
|
||||||
{
|
{
|
||||||
var machine = new Machine
|
var machine = new Machine
|
||||||
{
|
{
|
||||||
@@ -55,7 +71,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.DosCenter.File"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.DosCenter.File"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromDosCenter(Models.DosCenter.File item)
|
private static Rom ConvertFromDosCenter(Models.DosCenter.File item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -10,10 +10,26 @@ namespace SabreTools.Serialization
|
|||||||
{
|
{
|
||||||
#region Serialize
|
#region Serialize
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.EverdriveSMDB.MetadataFile"/> to <cref="MetadataFile"/>
|
||||||
|
/// </summary>
|
||||||
|
public static MetadataFile ConvertFromEverdriveSMDB(Models.EverdriveSMDB.MetadataFile item)
|
||||||
|
{
|
||||||
|
var metadataFile = new MetadataFile
|
||||||
|
{
|
||||||
|
[MetadataFile.HeaderKey] = ConvertHeaderFromEverdriveSMDB(item),
|
||||||
|
};
|
||||||
|
|
||||||
|
if (item?.Row != null && item.Row.Any())
|
||||||
|
metadataFile[MetadataFile.MachineKey] = item.Row.Select(ConvertMachineFromEverdriveSMDB).ToArray();
|
||||||
|
|
||||||
|
return metadataFile;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.EverdriveSMDB.MetadataFile"/> to <cref="Header"/>
|
/// Convert from <cref="Models.EverdriveSMDB.MetadataFile"/> to <cref="Header"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Header ConvertHeaderFromEverdriveSMDB(Models.EverdriveSMDB.MetadataFile item)
|
private static Header ConvertHeaderFromEverdriveSMDB(Models.EverdriveSMDB.MetadataFile item)
|
||||||
{
|
{
|
||||||
var header = new Header
|
var header = new Header
|
||||||
{
|
{
|
||||||
@@ -25,7 +41,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.EverdriveSMDB.Row"/> to <cref="Machine"/>
|
/// Convert from <cref="Models.EverdriveSMDB.Row"/> to <cref="Machine"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Machine ConvertMachineFromEverdriveSMDB(Models.EverdriveSMDB.Row item)
|
private static Machine ConvertMachineFromEverdriveSMDB(Models.EverdriveSMDB.Row item)
|
||||||
{
|
{
|
||||||
var machine = new Machine
|
var machine = new Machine
|
||||||
{
|
{
|
||||||
@@ -37,7 +53,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.EverdriveSMDB.Row"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.EverdriveSMDB.Row"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromEverdriveSMDB(Models.EverdriveSMDB.Row item)
|
private static Rom ConvertFromEverdriveSMDB(Models.EverdriveSMDB.Row item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -12,10 +12,26 @@ namespace SabreTools.Serialization
|
|||||||
{
|
{
|
||||||
#region Serialize
|
#region Serialize
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.Hashfile.Hashfile"/> to <cref="MetadataFile"/>
|
||||||
|
/// </summary>
|
||||||
|
public static MetadataFile ConvertFromHashfile(Models.Hashfile.Hashfile item)
|
||||||
|
{
|
||||||
|
var metadataFile = new MetadataFile
|
||||||
|
{
|
||||||
|
[MetadataFile.HeaderKey] = ConvertHeaderFromHashfile(item),
|
||||||
|
};
|
||||||
|
|
||||||
|
var machine = ConvertMachineFromHashfile(item);
|
||||||
|
metadataFile[MetadataFile.MachineKey] = new Machine[] { machine };
|
||||||
|
|
||||||
|
return metadataFile;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Hashfile.Hashfile"/> to <cref="Header"/>
|
/// Convert from <cref="Models.Hashfile.Hashfile"/> to <cref="Header"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Header ConvertHeaderFromHashfile(Models.Hashfile.Hashfile item)
|
private static Header ConvertHeaderFromHashfile(Models.Hashfile.Hashfile item)
|
||||||
{
|
{
|
||||||
var header = new Header
|
var header = new Header
|
||||||
{
|
{
|
||||||
@@ -27,7 +43,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Hashfile.Hashfile"/> to <cref="Machine"/>
|
/// Convert from <cref="Models.Hashfile.Hashfile"/> to <cref="Machine"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Machine ConvertMachineFromHashfile(Models.Hashfile.Hashfile item)
|
private static Machine ConvertMachineFromHashfile(Models.Hashfile.Hashfile item)
|
||||||
{
|
{
|
||||||
var machine = new Machine();
|
var machine = new Machine();
|
||||||
|
|
||||||
@@ -107,7 +123,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Hashfile.MD5"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.Hashfile.MD5"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromMD5(Models.Hashfile.MD5 item)
|
private static Rom ConvertFromMD5(Models.Hashfile.MD5 item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
@@ -120,7 +136,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Hashfile.SFV"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.Hashfile.SFV"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromSFV(Models.Hashfile.SFV item)
|
private static Rom ConvertFromSFV(Models.Hashfile.SFV item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
@@ -133,7 +149,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Hashfile.SHA1"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.Hashfile.SHA1"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromSHA1(Models.Hashfile.SHA1 item)
|
private static Rom ConvertFromSHA1(Models.Hashfile.SHA1 item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
@@ -146,7 +162,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Hashfile.SHA256"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.Hashfile.SHA256"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromSHA256(Models.Hashfile.SHA256 item)
|
private static Rom ConvertFromSHA256(Models.Hashfile.SHA256 item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
@@ -159,7 +175,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Hashfile.SHA384"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.Hashfile.SHA384"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromSHA384(Models.Hashfile.SHA384 item)
|
private static Rom ConvertFromSHA384(Models.Hashfile.SHA384 item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
@@ -172,7 +188,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Hashfile.SHA512"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.Hashfile.SHA512"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromSHA512(Models.Hashfile.SHA512 item)
|
private static Rom ConvertFromSHA512(Models.Hashfile.SHA512 item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
@@ -185,7 +201,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Hashfile.SpamSum"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.Hashfile.SpamSum"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromSpamSum(Models.Hashfile.SpamSum item)
|
private static Rom ConvertFromSpamSum(Models.Hashfile.SpamSum item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -11,10 +11,26 @@ namespace SabreTools.Serialization
|
|||||||
{
|
{
|
||||||
#region Serialize
|
#region Serialize
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.Listrom.MetadataFile"/> to <cref="MetadataFile"/>
|
||||||
|
/// </summary>
|
||||||
|
public static MetadataFile ConvertFromListrom(Models.Listrom.MetadataFile item)
|
||||||
|
{
|
||||||
|
var metadataFile = new MetadataFile
|
||||||
|
{
|
||||||
|
[MetadataFile.HeaderKey] = ConvertHeaderFromListrom(item),
|
||||||
|
};
|
||||||
|
|
||||||
|
if (item?.Set != null && item.Set.Any())
|
||||||
|
metadataFile[MetadataFile.MachineKey] = item.Set.Select(ConvertMachineFromListrom).ToArray();
|
||||||
|
|
||||||
|
return metadataFile;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listrom.MetadataFile"/> to <cref="Header"/>
|
/// Convert from <cref="Models.Listrom.MetadataFile"/> to <cref="Header"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Header ConvertHeaderFromListrom(Models.Listrom.MetadataFile item)
|
private static Header ConvertHeaderFromListrom(Models.Listrom.MetadataFile item)
|
||||||
{
|
{
|
||||||
var header = new Header
|
var header = new Header
|
||||||
{
|
{
|
||||||
@@ -26,7 +42,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listrom.Set"/> to <cref="Machine"/>
|
/// Convert from <cref="Models.Listrom.Set"/> to <cref="Machine"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Machine ConvertMachineFromListrom(Models.Listrom.Set item)
|
private static Machine ConvertMachineFromListrom(Models.Listrom.Set item)
|
||||||
{
|
{
|
||||||
var machine = new Machine();
|
var machine = new Machine();
|
||||||
if (!string.IsNullOrWhiteSpace(item.Device))
|
if (!string.IsNullOrWhiteSpace(item.Device))
|
||||||
@@ -57,7 +73,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listrom.Row"/> to <cref="DatItem"/>
|
/// Convert from <cref="Models.Listrom.Row"/> to <cref="DatItem"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static DatItem ConvertFromListrom(Models.Listrom.Row item)
|
private static DatItem ConvertFromListrom(Models.Listrom.Row item)
|
||||||
{
|
{
|
||||||
if (item.Size == null)
|
if (item.Size == null)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -11,10 +11,42 @@ namespace SabreTools.Serialization
|
|||||||
{
|
{
|
||||||
#region Serialize
|
#region Serialize
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.Listxml.M1"/> to <cref="MetadataFile"/>
|
||||||
|
/// </summary>
|
||||||
|
public static MetadataFile ConvertFromListxml(Models.Listxml.M1 item)
|
||||||
|
{
|
||||||
|
var metadataFile = new MetadataFile
|
||||||
|
{
|
||||||
|
[MetadataFile.HeaderKey] = ConvertHeaderFromListxml(item),
|
||||||
|
};
|
||||||
|
|
||||||
|
if (item?.Game != null && item.Game.Any())
|
||||||
|
metadataFile[MetadataFile.MachineKey] = item.Game.Select(ConvertMachineFromListxml).ToArray();
|
||||||
|
|
||||||
|
return metadataFile;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.Listxml.Mame"/> to <cref="MetadataFile"/>
|
||||||
|
/// </summary>
|
||||||
|
public static MetadataFile ConvertFromListxml(Models.Listxml.Mame item)
|
||||||
|
{
|
||||||
|
var metadataFile = new MetadataFile
|
||||||
|
{
|
||||||
|
[MetadataFile.HeaderKey] = ConvertHeaderFromListxml(item),
|
||||||
|
};
|
||||||
|
|
||||||
|
if (item?.Game != null && item.Game.Any())
|
||||||
|
metadataFile[MetadataFile.MachineKey] = item.Game.Select(ConvertMachineFromListxml).ToArray();
|
||||||
|
|
||||||
|
return metadataFile;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.M1"/> to <cref="Header"/>
|
/// Convert from <cref="Models.Listxml.M1"/> to <cref="Header"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Header ConvertHeaderFromListxml(Models.Listxml.M1 item)
|
private static Header ConvertHeaderFromListxml(Models.Listxml.M1 item)
|
||||||
{
|
{
|
||||||
var header = new Header
|
var header = new Header
|
||||||
{
|
{
|
||||||
@@ -26,7 +58,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Mame"/> to <cref="Header"/>
|
/// Convert from <cref="Models.Listxml.Mame"/> to <cref="Header"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Header ConvertHeaderFromListxml(Models.Listxml.Mame item)
|
private static Header ConvertHeaderFromListxml(Models.Listxml.Mame item)
|
||||||
{
|
{
|
||||||
var header = new Header
|
var header = new Header
|
||||||
{
|
{
|
||||||
@@ -40,7 +72,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.GameBase"/> to <cref="Machine"/>
|
/// Convert from <cref="Models.Listxml.GameBase"/> to <cref="Machine"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Machine ConvertMachineFromListxml(Models.Listxml.GameBase item)
|
private static Machine ConvertMachineFromListxml(Models.Listxml.GameBase item)
|
||||||
{
|
{
|
||||||
var machine = new Machine
|
var machine = new Machine
|
||||||
{
|
{
|
||||||
@@ -244,7 +276,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Adjuster"/> to <cref="Adjuster"/>
|
/// Convert from <cref="Models.Listxml.Adjuster"/> to <cref="Adjuster"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Adjuster ConvertFromListxml(Models.Listxml.Adjuster item)
|
private static Adjuster ConvertFromListxml(Models.Listxml.Adjuster item)
|
||||||
{
|
{
|
||||||
var adjuster = new Adjuster
|
var adjuster = new Adjuster
|
||||||
{
|
{
|
||||||
@@ -261,7 +293,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Analog"/> to <cref="Analog"/>
|
/// Convert from <cref="Models.Listxml.Analog"/> to <cref="Analog"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Analog ConvertFromListxml(Models.Listxml.Analog item)
|
private static Analog ConvertFromListxml(Models.Listxml.Analog item)
|
||||||
{
|
{
|
||||||
var analog = new Analog
|
var analog = new Analog
|
||||||
{
|
{
|
||||||
@@ -273,7 +305,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.BiosSet"/> to <cref="BiosSet"/>
|
/// Convert from <cref="Models.Listxml.BiosSet"/> to <cref="BiosSet"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static BiosSet ConvertFromListxml(Models.Listxml.BiosSet item)
|
private static BiosSet ConvertFromListxml(Models.Listxml.BiosSet item)
|
||||||
{
|
{
|
||||||
var biosset = new BiosSet
|
var biosset = new BiosSet
|
||||||
{
|
{
|
||||||
@@ -287,7 +319,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Chip"/> to <cref="Chip"/>
|
/// Convert from <cref="Models.Listxml.Chip"/> to <cref="Chip"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Chip ConvertFromListxml(Models.Listxml.Chip item)
|
private static Chip ConvertFromListxml(Models.Listxml.Chip item)
|
||||||
{
|
{
|
||||||
var chip = new Chip
|
var chip = new Chip
|
||||||
{
|
{
|
||||||
@@ -303,7 +335,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Condition"/> to <cref="Condition"/>
|
/// Convert from <cref="Models.Listxml.Condition"/> to <cref="Condition"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Condition ConvertFromListxml(Models.Listxml.Condition item)
|
private static Condition ConvertFromListxml(Models.Listxml.Condition item)
|
||||||
{
|
{
|
||||||
var condition = new Condition
|
var condition = new Condition
|
||||||
{
|
{
|
||||||
@@ -318,7 +350,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Configuration"/> to <cref="Configuration"/>
|
/// Convert from <cref="Models.Listxml.Configuration"/> to <cref="Configuration"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Configuration ConvertFromListxml(Models.Listxml.Configuration item)
|
private static Configuration ConvertFromListxml(Models.Listxml.Configuration item)
|
||||||
{
|
{
|
||||||
var configuration = new Configuration
|
var configuration = new Configuration
|
||||||
{
|
{
|
||||||
@@ -356,7 +388,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.ConfLocation"/> to <cref="ConfLocation"/>
|
/// Convert from <cref="Models.Listxml.ConfLocation"/> to <cref="ConfLocation"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static ConfLocation ConvertFromListxml(Models.Listxml.ConfLocation item)
|
private static ConfLocation ConvertFromListxml(Models.Listxml.ConfLocation item)
|
||||||
{
|
{
|
||||||
var confLocation = new ConfLocation
|
var confLocation = new ConfLocation
|
||||||
{
|
{
|
||||||
@@ -370,7 +402,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.ConfSetting"/> to <cref="ConfSetting"/>
|
/// Convert from <cref="Models.Listxml.ConfSetting"/> to <cref="ConfSetting"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static ConfSetting ConvertFromListxml(Models.Listxml.ConfSetting item)
|
private static ConfSetting ConvertFromListxml(Models.Listxml.ConfSetting item)
|
||||||
{
|
{
|
||||||
var confSetting = new ConfSetting
|
var confSetting = new ConfSetting
|
||||||
{
|
{
|
||||||
@@ -388,7 +420,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Control"/> to <cref="Control"/>
|
/// Convert from <cref="Models.Listxml.Control"/> to <cref="Control"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Control ConvertFromListxml(Models.Listxml.Control item)
|
private static Control ConvertFromListxml(Models.Listxml.Control item)
|
||||||
{
|
{
|
||||||
var control = new Control
|
var control = new Control
|
||||||
{
|
{
|
||||||
@@ -411,7 +443,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Device"/> to <cref="Device"/>
|
/// Convert from <cref="Models.Listxml.Device"/> to <cref="Device"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Device ConvertFromListxml(Models.Listxml.Device item)
|
private static Device ConvertFromListxml(Models.Listxml.Device item)
|
||||||
{
|
{
|
||||||
var device = new Device
|
var device = new Device
|
||||||
{
|
{
|
||||||
@@ -441,7 +473,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.DeviceRef"/> to <cref="DeviceRef"/>
|
/// Convert from <cref="Models.Listxml.DeviceRef"/> to <cref="DeviceRef"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static DeviceRef ConvertFromListxml(Models.Listxml.DeviceRef item)
|
private static DeviceRef ConvertFromListxml(Models.Listxml.DeviceRef item)
|
||||||
{
|
{
|
||||||
var deviceRef = new DeviceRef
|
var deviceRef = new DeviceRef
|
||||||
{
|
{
|
||||||
@@ -453,7 +485,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.DipLocation"/> to <cref="DipLocation"/>
|
/// Convert from <cref="Models.Listxml.DipLocation"/> to <cref="DipLocation"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static DipLocation ConvertFromListxml(Models.Listxml.DipLocation item)
|
private static DipLocation ConvertFromListxml(Models.Listxml.DipLocation item)
|
||||||
{
|
{
|
||||||
var dipLocation = new DipLocation
|
var dipLocation = new DipLocation
|
||||||
{
|
{
|
||||||
@@ -467,7 +499,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.DipSwitch"/> to <cref="DipSwitch"/>
|
/// Convert from <cref="Models.Listxml.DipSwitch"/> to <cref="DipSwitch"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static DipSwitch ConvertFromListxml(Models.Listxml.DipSwitch item)
|
private static DipSwitch ConvertFromListxml(Models.Listxml.DipSwitch item)
|
||||||
{
|
{
|
||||||
var dipSwitch = new DipSwitch
|
var dipSwitch = new DipSwitch
|
||||||
{
|
{
|
||||||
@@ -505,7 +537,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.DipValue"/> to <cref="DipValue"/>
|
/// Convert from <cref="Models.Listxml.DipValue"/> to <cref="DipValue"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static DipValue ConvertFromListxml(Models.Listxml.DipValue item)
|
private static DipValue ConvertFromListxml(Models.Listxml.DipValue item)
|
||||||
{
|
{
|
||||||
var dipValue = new DipValue
|
var dipValue = new DipValue
|
||||||
{
|
{
|
||||||
@@ -523,7 +555,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Disk"/> to <cref="Disk"/>
|
/// Convert from <cref="Models.Listxml.Disk"/> to <cref="Disk"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Disk ConvertFromListxml(Models.Listxml.Disk item)
|
private static Disk ConvertFromListxml(Models.Listxml.Disk item)
|
||||||
{
|
{
|
||||||
var disk = new Disk
|
var disk = new Disk
|
||||||
{
|
{
|
||||||
@@ -543,7 +575,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Display"/> to <cref="Display"/>
|
/// Convert from <cref="Models.Listxml.Display"/> to <cref="Display"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Display ConvertFromListxml(Models.Listxml.Display item)
|
private static Display ConvertFromListxml(Models.Listxml.Display item)
|
||||||
{
|
{
|
||||||
var display = new Display
|
var display = new Display
|
||||||
{
|
{
|
||||||
@@ -568,7 +600,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Driver"/> to <cref="Driver"/>
|
/// Convert from <cref="Models.Listxml.Driver"/> to <cref="Driver"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Driver ConvertFromListxml(Models.Listxml.Driver item)
|
private static Driver ConvertFromListxml(Models.Listxml.Driver item)
|
||||||
{
|
{
|
||||||
var driver = new Driver
|
var driver = new Driver
|
||||||
{
|
{
|
||||||
@@ -590,7 +622,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Extension"/> to <cref="Extension"/>
|
/// Convert from <cref="Models.Listxml.Extension"/> to <cref="Extension"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Extension ConvertFromListxml(Models.Listxml.Extension item)
|
private static Extension ConvertFromListxml(Models.Listxml.Extension item)
|
||||||
{
|
{
|
||||||
var extension = new Extension
|
var extension = new Extension
|
||||||
{
|
{
|
||||||
@@ -602,7 +634,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Feature"/> to <cref="Feature"/>
|
/// Convert from <cref="Models.Listxml.Feature"/> to <cref="Feature"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Feature ConvertFromListxml(Models.Listxml.Feature item)
|
private static Feature ConvertFromListxml(Models.Listxml.Feature item)
|
||||||
{
|
{
|
||||||
var feature = new Feature
|
var feature = new Feature
|
||||||
{
|
{
|
||||||
@@ -616,7 +648,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Input"/> to <cref="Input"/>
|
/// Convert from <cref="Models.Listxml.Input"/> to <cref="Input"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Input ConvertFromListxml(Models.Listxml.Input item)
|
private static Input ConvertFromListxml(Models.Listxml.Input item)
|
||||||
{
|
{
|
||||||
var input = new Input
|
var input = new Input
|
||||||
{
|
{
|
||||||
@@ -644,7 +676,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Instance"/> to <cref="Instance"/>
|
/// Convert from <cref="Models.Listxml.Instance"/> to <cref="Instance"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Instance ConvertFromListxml(Models.Listxml.Instance item)
|
private static Instance ConvertFromListxml(Models.Listxml.Instance item)
|
||||||
{
|
{
|
||||||
var instance = new Instance
|
var instance = new Instance
|
||||||
{
|
{
|
||||||
@@ -657,7 +689,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Port"/> to <cref="Port"/>
|
/// Convert from <cref="Models.Listxml.Port"/> to <cref="Port"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Port ConvertFromListxml(Models.Listxml.Port item)
|
private static Port ConvertFromListxml(Models.Listxml.Port item)
|
||||||
{
|
{
|
||||||
var port = new Port
|
var port = new Port
|
||||||
{
|
{
|
||||||
@@ -680,7 +712,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.RamOption"/> to <cref="RamOption"/>
|
/// Convert from <cref="Models.Listxml.RamOption"/> to <cref="RamOption"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static RamOption ConvertFromListxml(Models.Listxml.RamOption item)
|
private static RamOption ConvertFromListxml(Models.Listxml.RamOption item)
|
||||||
{
|
{
|
||||||
var ramOption = new RamOption
|
var ramOption = new RamOption
|
||||||
{
|
{
|
||||||
@@ -693,7 +725,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Rom"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.Listxml.Rom"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromListxml(Models.Listxml.Rom item)
|
private static Rom ConvertFromListxml(Models.Listxml.Rom item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
@@ -716,7 +748,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Sample"/> to <cref="Sample"/>
|
/// Convert from <cref="Models.Listxml.Sample"/> to <cref="Sample"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Sample ConvertFromListxml(Models.Listxml.Sample item)
|
private static Sample ConvertFromListxml(Models.Listxml.Sample item)
|
||||||
{
|
{
|
||||||
var sample = new Sample
|
var sample = new Sample
|
||||||
{
|
{
|
||||||
@@ -728,7 +760,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Slot"/> to <cref="Slot"/>
|
/// Convert from <cref="Models.Listxml.Slot"/> to <cref="Slot"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Slot ConvertFromListxml(Models.Listxml.Slot item)
|
private static Slot ConvertFromListxml(Models.Listxml.Slot item)
|
||||||
{
|
{
|
||||||
var slot = new Slot
|
var slot = new Slot
|
||||||
{
|
{
|
||||||
@@ -751,7 +783,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.SlotOption"/> to <cref="SlotOption"/>
|
/// Convert from <cref="Models.Listxml.SlotOption"/> to <cref="SlotOption"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static SlotOption ConvertFromListxml(Models.Listxml.SlotOption item)
|
private static SlotOption ConvertFromListxml(Models.Listxml.SlotOption item)
|
||||||
{
|
{
|
||||||
var slotOption = new SlotOption
|
var slotOption = new SlotOption
|
||||||
{
|
{
|
||||||
@@ -765,7 +797,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.SoftwareList"/> to <cref="SoftwareList"/>
|
/// Convert from <cref="Models.Listxml.SoftwareList"/> to <cref="SoftwareList"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static SoftwareList ConvertFromListxml(Models.Listxml.SoftwareList item)
|
private static SoftwareList ConvertFromListxml(Models.Listxml.SoftwareList item)
|
||||||
{
|
{
|
||||||
var softwareList = new SoftwareList
|
var softwareList = new SoftwareList
|
||||||
{
|
{
|
||||||
@@ -780,7 +812,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Sound"/> to <cref="Sound"/>
|
/// Convert from <cref="Models.Listxml.Sound"/> to <cref="Sound"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Sound ConvertFromListxml(Models.Listxml.Sound item)
|
private static Sound ConvertFromListxml(Models.Listxml.Sound item)
|
||||||
{
|
{
|
||||||
var sound = new Sound
|
var sound = new Sound
|
||||||
{
|
{
|
||||||
@@ -792,7 +824,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Listxml.Video"/> to <cref="Video"/>
|
/// Convert from <cref="Models.Listxml.Video"/> to <cref="Video"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Video ConvertFromListxml(Models.Listxml.Video item)
|
private static Video ConvertFromListxml(Models.Listxml.Video item)
|
||||||
{
|
{
|
||||||
var video = new Video
|
var video = new Video
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -11,10 +11,41 @@ namespace SabreTools.Serialization
|
|||||||
{
|
{
|
||||||
#region Serialize
|
#region Serialize
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.Logiqx.Datafile"/> to <cref="MetadataFile"/>
|
||||||
|
/// </summary>
|
||||||
|
public static MetadataFile ConvertFromLogiqx(Models.Logiqx.Datafile item)
|
||||||
|
{
|
||||||
|
var metadataFile = new MetadataFile
|
||||||
|
{
|
||||||
|
[MetadataFile.HeaderKey] = ConvertHeaderFromLogiqx(item),
|
||||||
|
};
|
||||||
|
|
||||||
|
// TODO: Handle Dir items
|
||||||
|
if (item?.Game != null && item.Game.Any())
|
||||||
|
metadataFile[MetadataFile.MachineKey] = item.Game.Select(ConvertMachineFromLogiqx).ToArray();
|
||||||
|
|
||||||
|
return metadataFile;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.Logiqx.Datafile"/> to <cref="Header"/>
|
||||||
|
/// </summary>
|
||||||
|
private static Header ConvertHeaderFromLogiqx(Models.Logiqx.Datafile item)
|
||||||
|
{
|
||||||
|
var header = ConvertHeaderFromLogiqx(item.Header);
|
||||||
|
|
||||||
|
header[Header.BuildKey] = item.Build;
|
||||||
|
header[Header.DebugKey] = item.Debug;
|
||||||
|
header[Header.SchemaLocationKey] = item.SchemaLocation;
|
||||||
|
|
||||||
|
return header;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Logiqx.Header"/> to <cref="Header"/>
|
/// Convert from <cref="Models.Logiqx.Header"/> to <cref="Header"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Header ConvertHeaderFromLogiqx(Models.Logiqx.Header item)
|
private static Header ConvertHeaderFromLogiqx(Models.Logiqx.Header item)
|
||||||
{
|
{
|
||||||
var header = new Header
|
var header = new Header
|
||||||
{
|
{
|
||||||
@@ -58,7 +89,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Logiqx.GameBase"/> to <cref="Machine"/>
|
/// Convert from <cref="Models.Logiqx.GameBase"/> to <cref="Machine"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Machine ConvertMachineFromLogiqx(Models.Logiqx.GameBase item)
|
private static Machine ConvertMachineFromLogiqx(Models.Logiqx.GameBase item)
|
||||||
{
|
{
|
||||||
var machine = new Machine
|
var machine = new Machine
|
||||||
{
|
{
|
||||||
@@ -190,7 +221,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Logiqx.Archive"/> to <cref="Archive"/>
|
/// Convert from <cref="Models.Logiqx.Archive"/> to <cref="Archive"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Archive ConvertFromLogiqx(Models.Logiqx.Archive item)
|
private static Archive ConvertFromLogiqx(Models.Logiqx.Archive item)
|
||||||
{
|
{
|
||||||
var archive = new Archive
|
var archive = new Archive
|
||||||
{
|
{
|
||||||
@@ -202,7 +233,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Logiqx.BiosSet"/> to <cref="BiosSet"/>
|
/// Convert from <cref="Models.Logiqx.BiosSet"/> to <cref="BiosSet"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static BiosSet ConvertFromLogiqx(Models.Logiqx.BiosSet item)
|
private static BiosSet ConvertFromLogiqx(Models.Logiqx.BiosSet item)
|
||||||
{
|
{
|
||||||
var biosset = new BiosSet
|
var biosset = new BiosSet
|
||||||
{
|
{
|
||||||
@@ -216,7 +247,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Logiqx.DeviceRef"/> to <cref="DeviceRef"/>
|
/// Convert from <cref="Models.Logiqx.DeviceRef"/> to <cref="DeviceRef"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static DeviceRef ConvertFromLogiqx(Models.Logiqx.DeviceRef item)
|
private static DeviceRef ConvertFromLogiqx(Models.Logiqx.DeviceRef item)
|
||||||
{
|
{
|
||||||
var deviceRef = new DeviceRef
|
var deviceRef = new DeviceRef
|
||||||
{
|
{
|
||||||
@@ -228,7 +259,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Logiqx.Disk"/> to <cref="Disk"/>
|
/// Convert from <cref="Models.Logiqx.Disk"/> to <cref="Disk"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Disk ConvertFromLogiqx(Models.Logiqx.Disk item)
|
private static Disk ConvertFromLogiqx(Models.Logiqx.Disk item)
|
||||||
{
|
{
|
||||||
var disk = new Disk
|
var disk = new Disk
|
||||||
{
|
{
|
||||||
@@ -245,7 +276,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Logiqx.Driver"/> to <cref="Driver"/>
|
/// Convert from <cref="Models.Logiqx.Driver"/> to <cref="Driver"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Driver ConvertFromLogiqx(Models.Logiqx.Driver item)
|
private static Driver ConvertFromLogiqx(Models.Logiqx.Driver item)
|
||||||
{
|
{
|
||||||
var driver = new Driver
|
var driver = new Driver
|
||||||
{
|
{
|
||||||
@@ -264,7 +295,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Logiqx.Media"/> to <cref="Media"/>
|
/// Convert from <cref="Models.Logiqx.Media"/> to <cref="Media"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Media ConvertFromLogiqx(Models.Logiqx.Media item)
|
private static Media ConvertFromLogiqx(Models.Logiqx.Media item)
|
||||||
{
|
{
|
||||||
var media = new Media
|
var media = new Media
|
||||||
{
|
{
|
||||||
@@ -280,7 +311,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Logiqx.Release"/> to <cref="Release"/>
|
/// Convert from <cref="Models.Logiqx.Release"/> to <cref="Release"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Release ConvertFromLogiqx(Models.Logiqx.Release item)
|
private static Release ConvertFromLogiqx(Models.Logiqx.Release item)
|
||||||
{
|
{
|
||||||
var release = new Release
|
var release = new Release
|
||||||
{
|
{
|
||||||
@@ -296,7 +327,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Logiqx.Rom"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.Logiqx.Rom"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromLogiqx(Models.Logiqx.Rom item)
|
private static Rom ConvertFromLogiqx(Models.Logiqx.Rom item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
@@ -325,7 +356,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Logiqx.Sample"/> to <cref="Sample"/>
|
/// Convert from <cref="Models.Logiqx.Sample"/> to <cref="Sample"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Sample ConvertFromLogiqx(Models.Logiqx.Sample item)
|
private static Sample ConvertFromLogiqx(Models.Logiqx.Sample item)
|
||||||
{
|
{
|
||||||
var sample = new Sample
|
var sample = new Sample
|
||||||
{
|
{
|
||||||
@@ -337,7 +368,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.Logiqx.SoftwareList"/> to <cref="SoftwareList"/>
|
/// Convert from <cref="Models.Logiqx.SoftwareList"/> to <cref="SoftwareList"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static SoftwareList ConvertFromLogiqx(Models.Logiqx.SoftwareList item)
|
private static SoftwareList ConvertFromLogiqx(Models.Logiqx.SoftwareList item)
|
||||||
{
|
{
|
||||||
var softwareList = new SoftwareList
|
var softwareList = new SoftwareList
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -11,14 +11,30 @@ namespace SabreTools.Serialization
|
|||||||
{
|
{
|
||||||
#region Serialize
|
#region Serialize
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.OfflineList.Dat"/> to <cref="MetadataFile"/>
|
||||||
|
/// </summary>
|
||||||
|
public static MetadataFile ConvertFromOfflineList(Models.OfflineList.Dat item)
|
||||||
|
{
|
||||||
|
var metadataFile = new MetadataFile
|
||||||
|
{
|
||||||
|
[MetadataFile.HeaderKey] = ConvertHeaderFromOfflineList(item),
|
||||||
|
};
|
||||||
|
|
||||||
|
if (item?.Games?.Game != null && item.Games.Game.Any())
|
||||||
|
metadataFile[MetadataFile.MachineKey] = item.Games.Game.Select(ConvertMachineFromOfflineList).ToArray();
|
||||||
|
|
||||||
|
return metadataFile;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.OfflineList.Dat"/> to <cref="Header"/>
|
/// Convert from <cref="Models.OfflineList.Dat"/> to <cref="Header"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Header ConvertHeaderFromOfflineList(Models.OfflineList.Dat item)
|
private static Header ConvertHeaderFromOfflineList(Models.OfflineList.Dat item)
|
||||||
{
|
{
|
||||||
var header = new Header
|
var header = new Header
|
||||||
{
|
{
|
||||||
[Header.NoNamespaceSchemaLocationKey] = item.NoNamespaceSchemaLocation,
|
[Header.SchemaLocationKey] = item.NoNamespaceSchemaLocation,
|
||||||
};
|
};
|
||||||
|
|
||||||
if (item.Configuration != null)
|
if (item.Configuration != null)
|
||||||
@@ -47,7 +63,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.OfflineList.Game"/> to <cref="Machine"/>
|
/// Convert from <cref="Models.OfflineList.Game"/> to <cref="Machine"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Machine ConvertMachineFromOfflineList(Models.OfflineList.Game item)
|
private static Machine ConvertMachineFromOfflineList(Models.OfflineList.Game item)
|
||||||
{
|
{
|
||||||
var machine = new Machine
|
var machine = new Machine
|
||||||
{
|
{
|
||||||
@@ -80,23 +96,10 @@ namespace SabreTools.Serialization
|
|||||||
return machine;
|
return machine;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Convert from <cref="Models.OfflineList.Files"/> to an array of <cref="Rom"/>
|
|
||||||
/// </summary>
|
|
||||||
public static Rom[] ConvertFromOfflineList(Models.OfflineList.Files item)
|
|
||||||
{
|
|
||||||
var roms = new List<Rom>();
|
|
||||||
foreach (var romCRC in item.RomCRC)
|
|
||||||
{
|
|
||||||
roms.Add(ConvertFromOfflineList(romCRC));
|
|
||||||
}
|
|
||||||
return roms.ToArray();
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.OfflineList.FileRomCRC"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.OfflineList.FileRomCRC"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromOfflineList(Models.OfflineList.FileRomCRC item)
|
private static Rom ConvertFromOfflineList(Models.OfflineList.FileRomCRC item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
@@ -120,7 +123,7 @@ namespace SabreTools.Serialization
|
|||||||
|
|
||||||
var dat = new Models.OfflineList.Dat
|
var dat = new Models.OfflineList.Dat
|
||||||
{
|
{
|
||||||
NoNamespaceSchemaLocation = item.ReadString(Header.NoNamespaceSchemaLocationKey),
|
NoNamespaceSchemaLocation = item.ReadString(Header.SchemaLocationKey),
|
||||||
};
|
};
|
||||||
|
|
||||||
if (item.ContainsKey(Header.NameKey)
|
if (item.ContainsKey(Header.NameKey)
|
||||||
|
|||||||
@@ -11,6 +11,22 @@ namespace SabreTools.Serialization
|
|||||||
{
|
{
|
||||||
#region Serialize
|
#region Serialize
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.OpenMSX.SoftwareDb"/> to <cref="MetadataFile"/>
|
||||||
|
/// </summary>
|
||||||
|
public static MetadataFile ConvertFromOpenMSX(Models.OpenMSX.SoftwareDb item)
|
||||||
|
{
|
||||||
|
var metadataFile = new MetadataFile
|
||||||
|
{
|
||||||
|
[MetadataFile.HeaderKey] = ConvertHeaderFromOpenMSX(item),
|
||||||
|
};
|
||||||
|
|
||||||
|
if (item?.Software != null && item.Software.Any())
|
||||||
|
metadataFile[MetadataFile.MachineKey] = item.Software.Select(ConvertMachineFromOpenMSX).ToArray();
|
||||||
|
|
||||||
|
return metadataFile;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.OpenMSX.SoftwareDb"/> to <cref="Header"/>
|
/// Convert from <cref="Models.OpenMSX.SoftwareDb"/> to <cref="Header"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -10,10 +10,26 @@ namespace SabreTools.Serialization
|
|||||||
{
|
{
|
||||||
#region Serialize
|
#region Serialize
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.RomCenter.MetadataFile"/> to <cref="MetadataFile"/>
|
||||||
|
/// </summary>
|
||||||
|
public static MetadataFile ConvertFromRomCenter(Models.RomCenter.MetadataFile item)
|
||||||
|
{
|
||||||
|
var metadataFile = new MetadataFile
|
||||||
|
{
|
||||||
|
[MetadataFile.HeaderKey] = ConvertHeaderFromRomCenter(item),
|
||||||
|
};
|
||||||
|
|
||||||
|
if (item?.Games?.Rom != null && item.Games.Rom.Any())
|
||||||
|
metadataFile[MetadataFile.MachineKey] = item.Games.Rom.Select(ConvertMachineFromRomCenter).ToArray();
|
||||||
|
|
||||||
|
return metadataFile;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.RomCenter.MetadataFile"/> to <cref="Header"/>
|
/// Convert from <cref="Models.RomCenter.MetadataFile"/> to <cref="Header"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Header ConvertHeaderFromRomCenter(Models.RomCenter.MetadataFile item)
|
private static Header ConvertHeaderFromRomCenter(Models.RomCenter.MetadataFile item)
|
||||||
{
|
{
|
||||||
var header = new Header();
|
var header = new Header();
|
||||||
|
|
||||||
@@ -51,7 +67,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.RomCenter.Game"/> to <cref="Machine"/>
|
/// Convert from <cref="Models.RomCenter.Game"/> to <cref="Machine"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Machine ConvertMachineFromRomCenter(Models.RomCenter.Rom item)
|
private static Machine ConvertMachineFromRomCenter(Models.RomCenter.Rom item)
|
||||||
{
|
{
|
||||||
var machine = new Machine
|
var machine = new Machine
|
||||||
{
|
{
|
||||||
@@ -68,7 +84,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.RomCenter.Rom"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.RomCenter.Rom"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromRomCenter(Models.RomCenter.Rom item)
|
private static Rom ConvertFromRomCenter(Models.RomCenter.Rom item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -11,10 +11,26 @@ namespace SabreTools.Serialization
|
|||||||
{
|
{
|
||||||
#region Serialize
|
#region Serialize
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.SeparatedValue.MetadataFile"/> to <cref="MetadataFile"/>
|
||||||
|
/// </summary>
|
||||||
|
public static MetadataFile ConvertFromClrMamePro(Models.SeparatedValue.MetadataFile item)
|
||||||
|
{
|
||||||
|
var metadataFile = new MetadataFile
|
||||||
|
{
|
||||||
|
[MetadataFile.HeaderKey] = ConvertHeaderFromSeparatedValue(item),
|
||||||
|
};
|
||||||
|
|
||||||
|
if (item?.Row != null && item.Row.Any())
|
||||||
|
metadataFile[MetadataFile.MachineKey] = item.Row.Select(ConvertMachineFromSeparatedValue).ToArray();
|
||||||
|
|
||||||
|
return metadataFile;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.SeparatedValue.MetadataFile"/> to <cref="Header"/>
|
/// Convert from <cref="Models.SeparatedValue.MetadataFile"/> to <cref="Header"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Header ConvertHeaderFromSeparatedValue(Models.SeparatedValue.MetadataFile item)
|
private static Header ConvertHeaderFromSeparatedValue(Models.SeparatedValue.MetadataFile item)
|
||||||
{
|
{
|
||||||
var header = new Header
|
var header = new Header
|
||||||
{
|
{
|
||||||
@@ -35,7 +51,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.SeparatedValue.Row"/> to <cref="Machine"/>
|
/// Convert from <cref="Models.SeparatedValue.Row"/> to <cref="Machine"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Machine ConvertMachineFromSeparatedValue(Models.SeparatedValue.Row item)
|
private static Machine ConvertMachineFromSeparatedValue(Models.SeparatedValue.Row item)
|
||||||
{
|
{
|
||||||
var machine = new Machine
|
var machine = new Machine
|
||||||
{
|
{
|
||||||
@@ -65,7 +81,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.SeparatedValue.Row"/> to <cref="DatItem"/>
|
/// Convert from <cref="Models.SeparatedValue.Row"/> to <cref="DatItem"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static DatItem? ConvertFromSeparatedValue(Models.SeparatedValue.Row item)
|
private static DatItem? ConvertFromSeparatedValue(Models.SeparatedValue.Row item)
|
||||||
{
|
{
|
||||||
return item.Type switch
|
return item.Type switch
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -11,10 +11,26 @@ namespace SabreTools.Serialization
|
|||||||
{
|
{
|
||||||
#region Serialize
|
#region Serialize
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convert from <cref="Models.SoftwareList.SoftwareList"/> to <cref="MetadataFile"/>
|
||||||
|
/// </summary>
|
||||||
|
public static MetadataFile ConvertFromSoftwareList(Models.SoftwareList.SoftwareList item)
|
||||||
|
{
|
||||||
|
var metadataFile = new MetadataFile
|
||||||
|
{
|
||||||
|
[MetadataFile.HeaderKey] = ConvertHeaderFromSoftwareList(item),
|
||||||
|
};
|
||||||
|
|
||||||
|
if (item?.Software != null && item.Software.Any())
|
||||||
|
metadataFile[MetadataFile.MachineKey] = item.Software.Select(ConvertMachineFromSoftwareList).ToArray();
|
||||||
|
|
||||||
|
return metadataFile;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.SoftwareList.SoftwareList"/> to <cref="Header"/>
|
/// Convert from <cref="Models.SoftwareList.SoftwareList"/> to <cref="Header"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Header ConvertHeaderFromSoftwareList(Models.SoftwareList.SoftwareList item)
|
private static Header ConvertHeaderFromSoftwareList(Models.SoftwareList.SoftwareList item)
|
||||||
{
|
{
|
||||||
var header = new Header
|
var header = new Header
|
||||||
{
|
{
|
||||||
@@ -28,7 +44,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.SoftwareList.Software"/> to <cref="Machine"/>
|
/// Convert from <cref="Models.SoftwareList.Software"/> to <cref="Machine"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Machine ConvertMachineFromSoftwareList(Models.SoftwareList.Software item)
|
private static Machine ConvertMachineFromSoftwareList(Models.SoftwareList.Software item)
|
||||||
{
|
{
|
||||||
var machine = new Machine
|
var machine = new Machine
|
||||||
{
|
{
|
||||||
@@ -77,7 +93,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.SoftwareList.DataArea"/> to <cref="DataArea"/>
|
/// Convert from <cref="Models.SoftwareList.DataArea"/> to <cref="DataArea"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static DataArea ConvertFromSoftwareList(Models.SoftwareList.DataArea item)
|
private static DataArea ConvertFromSoftwareList(Models.SoftwareList.DataArea item)
|
||||||
{
|
{
|
||||||
var dataArea = new DataArea
|
var dataArea = new DataArea
|
||||||
{
|
{
|
||||||
@@ -103,7 +119,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.SoftwareList.DipSwitch"/> to <cref="DipSwitch"/>
|
/// Convert from <cref="Models.SoftwareList.DipSwitch"/> to <cref="DipSwitch"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static DipSwitch ConvertFromSoftwareList(Models.SoftwareList.DipSwitch item)
|
private static DipSwitch ConvertFromSoftwareList(Models.SoftwareList.DipSwitch item)
|
||||||
{
|
{
|
||||||
var dipSwitch = new DipSwitch
|
var dipSwitch = new DipSwitch
|
||||||
{
|
{
|
||||||
@@ -128,7 +144,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.SoftwareList.DipValue"/> to <cref="DipValue"/>
|
/// Convert from <cref="Models.SoftwareList.DipValue"/> to <cref="DipValue"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static DipValue ConvertFromSoftwareList(Models.SoftwareList.DipValue item)
|
private static DipValue ConvertFromSoftwareList(Models.SoftwareList.DipValue item)
|
||||||
{
|
{
|
||||||
var dipValue = new DipValue
|
var dipValue = new DipValue
|
||||||
{
|
{
|
||||||
@@ -142,7 +158,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.SoftwareList.Disk"/> to <cref="Disk"/>
|
/// Convert from <cref="Models.SoftwareList.Disk"/> to <cref="Disk"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Disk ConvertFromSoftwareList(Models.SoftwareList.Disk item)
|
private static Disk ConvertFromSoftwareList(Models.SoftwareList.Disk item)
|
||||||
{
|
{
|
||||||
var disk = new Disk
|
var disk = new Disk
|
||||||
{
|
{
|
||||||
@@ -158,7 +174,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.SoftwareList.DiskArea"/> to <cref="DiskArea"/>
|
/// Convert from <cref="Models.SoftwareList.DiskArea"/> to <cref="DiskArea"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static DiskArea ConvertFromSoftwareList(Models.SoftwareList.DiskArea item)
|
private static DiskArea ConvertFromSoftwareList(Models.SoftwareList.DiskArea item)
|
||||||
{
|
{
|
||||||
var diskArea = new DiskArea
|
var diskArea = new DiskArea
|
||||||
{
|
{
|
||||||
@@ -181,7 +197,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.SoftwareList.Feature"/> to <cref="Feature"/>
|
/// Convert from <cref="Models.SoftwareList.Feature"/> to <cref="Feature"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Feature ConvertFromSoftwareList(Models.SoftwareList.Feature item)
|
private static Feature ConvertFromSoftwareList(Models.SoftwareList.Feature item)
|
||||||
{
|
{
|
||||||
var feature = new Feature
|
var feature = new Feature
|
||||||
{
|
{
|
||||||
@@ -194,7 +210,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.SoftwareList.Info"/> to <cref="Info"/>
|
/// Convert from <cref="Models.SoftwareList.Info"/> to <cref="Info"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Info ConvertFromSoftwareList(Models.SoftwareList.Info item)
|
private static Info ConvertFromSoftwareList(Models.SoftwareList.Info item)
|
||||||
{
|
{
|
||||||
var info = new Info
|
var info = new Info
|
||||||
{
|
{
|
||||||
@@ -207,7 +223,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.SoftwareList.Part"/> to <cref="Part"/>
|
/// Convert from <cref="Models.SoftwareList.Part"/> to <cref="Part"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Part ConvertFromSoftwareList(Models.SoftwareList.Part item)
|
private static Part ConvertFromSoftwareList(Models.SoftwareList.Part item)
|
||||||
{
|
{
|
||||||
var part = new Part
|
var part = new Part
|
||||||
{
|
{
|
||||||
@@ -261,7 +277,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.SoftwareList.Rom"/> to <cref="Rom"/>
|
/// Convert from <cref="Models.SoftwareList.Rom"/> to <cref="Rom"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static Rom ConvertFromSoftwareList(Models.SoftwareList.Rom item)
|
private static Rom ConvertFromSoftwareList(Models.SoftwareList.Rom item)
|
||||||
{
|
{
|
||||||
var rom = new Rom
|
var rom = new Rom
|
||||||
{
|
{
|
||||||
@@ -281,7 +297,7 @@ namespace SabreTools.Serialization
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Convert from <cref="Models.SoftwareList.SharedFeat"/> to <cref="SharedFeat"/>
|
/// Convert from <cref="Models.SoftwareList.SharedFeat"/> to <cref="SharedFeat"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static SharedFeat ConvertFromSoftwareList(Models.SoftwareList.SharedFeat item)
|
private static SharedFeat ConvertFromSoftwareList(Models.SoftwareList.SharedFeat item)
|
||||||
{
|
{
|
||||||
var sharedFeat = new SharedFeat
|
var sharedFeat = new SharedFeat
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user