Add metadata file serialization

This commit is contained in:
Matt Nadareski
2023-08-09 21:28:55 -04:00
parent 3e1b71bddc
commit 8849d19ec1
15 changed files with 365 additions and 123 deletions

View File

@@ -10,10 +10,26 @@ namespace SabreTools.Serialization
{
#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>
/// Convert from <cref="Models.AttractMode.MetadataFile"/> to <cref="Header"/>
/// </summary>
public static Header ConvertHeaderFromAttractMode(Models.AttractMode.MetadataFile item)
private static Header ConvertHeaderFromAttractMode(Models.AttractMode.MetadataFile item)
{
var header = new Header
{
@@ -25,7 +41,7 @@ namespace SabreTools.Serialization
/// <summary>
/// Convert from <cref="Models.AttractMode.Row"/> to <cref="Machine"/>
/// </summary>
public static Machine ConvertMachineFromAttractMode(Models.AttractMode.Row item)
private static Machine ConvertMachineFromAttractMode(Models.AttractMode.Row item)
{
var machine = new Machine
{
@@ -56,7 +72,7 @@ namespace SabreTools.Serialization
/// <summary>
/// Convert from <cref="Models.AttractMode.Row"/> to <cref="Rom"/>
/// </summary>
public static Rom ConvertFromAttractMode(Models.AttractMode.Row item)
private static Rom ConvertFromAttractMode(Models.AttractMode.Row item)
{
var rom = new Rom
{