mirror of
https://github.com/SabreTools/SabreTools.Serialization.git
synced 2026-09-22 23:05:12 +00:00
Migrate metadata models from Models
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.CrossModel
|
||||
@@ -8,13 +9,13 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.ArchiveDotOrg();
|
||||
var serializer = new ArchiveDotOrg();
|
||||
|
||||
// Build the data
|
||||
Models.ArchiveDotOrg.Files files = Build();
|
||||
|
||||
// Serialize to generic model
|
||||
Models.Metadata.MetadataFile? metadata = serializer.Serialize(files);
|
||||
SabreTools.Serialization.Models.Metadata.MetadataFile? metadata = serializer.Serialize(files);
|
||||
Assert.NotNull(metadata);
|
||||
|
||||
// Serialize back to original model
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.CrossModel
|
||||
@@ -8,7 +9,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.AttractMode();
|
||||
var serializer = new AttractMode();
|
||||
|
||||
// Build the data
|
||||
Models.AttractMode.MetadataFile mf = Build();
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.CrossModel
|
||||
@@ -8,7 +9,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripGameTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.ClrMamePro();
|
||||
var serializer = new ClrMamePro();
|
||||
|
||||
// Build the data
|
||||
Models.ClrMamePro.MetadataFile mf = Build(game: true);
|
||||
@@ -32,7 +33,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripMachineTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.ClrMamePro();
|
||||
var serializer = new ClrMamePro();
|
||||
|
||||
// Build the data
|
||||
Models.ClrMamePro.MetadataFile mf = Build(game: false);
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.CrossModel
|
||||
@@ -8,7 +9,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.DosCenter();
|
||||
var serializer = new DosCenter();
|
||||
|
||||
// Build the data
|
||||
Models.DosCenter.MetadataFile mf = Build();
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.CrossModel
|
||||
@@ -8,7 +9,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.EverdriveSMDB();
|
||||
var serializer = new EverdriveSMDB();
|
||||
|
||||
// Build the data
|
||||
Models.EverdriveSMDB.MetadataFile mf = Build();
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using System;
|
||||
using SabreTools.Hashing;
|
||||
using Xunit;
|
||||
@@ -10,7 +11,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripSFVTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Hashfile();
|
||||
var serializer = new Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.CRC32);
|
||||
@@ -33,7 +34,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripMD2Test()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Hashfile();
|
||||
var serializer = new Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.MD2);
|
||||
@@ -56,7 +57,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripMD4Test()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Hashfile();
|
||||
var serializer = new Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.MD4);
|
||||
@@ -79,7 +80,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripMD5Test()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Hashfile();
|
||||
var serializer = new Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.MD5);
|
||||
@@ -102,7 +103,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripSHA1Test()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Hashfile();
|
||||
var serializer = new Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.SHA1);
|
||||
@@ -125,7 +126,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripSHA256Test()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Hashfile();
|
||||
var serializer = new Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.SHA256);
|
||||
@@ -148,7 +149,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripSHA384Test()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Hashfile();
|
||||
var serializer = new Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.SHA384);
|
||||
@@ -171,7 +172,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripSHA512Test()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Hashfile();
|
||||
var serializer = new Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.SHA512);
|
||||
@@ -194,7 +195,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripSpamSumTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Hashfile();
|
||||
var serializer = new Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.SpamSum);
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.CrossModel
|
||||
@@ -8,7 +9,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Listrom();
|
||||
var serializer = new Listrom();
|
||||
|
||||
// Build the data
|
||||
Models.Listrom.MetadataFile mf = Build();
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.CrossModel
|
||||
@@ -8,7 +9,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripGameTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Listxml();
|
||||
var serializer = new Listxml();
|
||||
|
||||
// Build the data
|
||||
Models.Listxml.Mame mame = Build(game: true);
|
||||
@@ -35,7 +36,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripMachineTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Listxml();
|
||||
var serializer = new Listxml();
|
||||
|
||||
// Build the data
|
||||
Models.Listxml.Mame mame = Build(game: false);
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.CrossModel
|
||||
@@ -8,7 +9,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripGameTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Logiqx();
|
||||
var serializer = new Logiqx();
|
||||
|
||||
// Build the data
|
||||
Models.Logiqx.Datafile df = Build(game: true);
|
||||
@@ -40,7 +41,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripMachineTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Logiqx();
|
||||
var serializer = new Logiqx();
|
||||
|
||||
// Build the data
|
||||
Models.Logiqx.Datafile df = Build(game: false);
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.CrossModel
|
||||
@@ -8,7 +9,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripGameTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.M1();
|
||||
var serializer = new M1();
|
||||
|
||||
// Build the data
|
||||
Models.Listxml.M1 m1 = Build(game: true);
|
||||
@@ -33,7 +34,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripMachineTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.M1();
|
||||
var serializer = new M1();
|
||||
|
||||
// Build the data
|
||||
Models.Listxml.M1 m1 = Build(game: false);
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.CrossModel
|
||||
@@ -8,7 +9,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripGameTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Mess();
|
||||
var serializer = new Mess();
|
||||
|
||||
// Build the data
|
||||
Models.Listxml.Mess m1 = Build(game: true);
|
||||
@@ -33,7 +34,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripMachineTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.Mess();
|
||||
var serializer = new Mess();
|
||||
|
||||
// Build the data
|
||||
Models.Listxml.Mess m1 = Build(game: false);
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.CrossModel
|
||||
@@ -8,7 +9,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.OfflineList();
|
||||
var serializer = new OfflineList();
|
||||
|
||||
// Build the data
|
||||
Models.OfflineList.Dat dat = Build();
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.CrossModel
|
||||
@@ -8,7 +9,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.OpenMSX();
|
||||
var serializer = new OpenMSX();
|
||||
|
||||
// Build the data
|
||||
Models.OpenMSX.SoftwareDb sdb = Build();
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.CrossModel
|
||||
@@ -8,7 +9,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.RomCenter();
|
||||
var serializer = new RomCenter();
|
||||
|
||||
// Build the data
|
||||
Models.RomCenter.MetadataFile mf = Build();
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.CrossModel
|
||||
@@ -8,7 +9,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.SeparatedValue();
|
||||
var serializer = new SeparatedValue();
|
||||
|
||||
// Build the data
|
||||
Models.SeparatedValue.MetadataFile mf = Build();
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using SabreTools.Serialization.CrossModel;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.CrossModel
|
||||
@@ -8,7 +9,7 @@ namespace SabreTools.Serialization.Test.CrossModel
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the cross-model serializer
|
||||
var serializer = new Serialization.CrossModel.SoftwareList();
|
||||
var serializer = new SoftwareList();
|
||||
|
||||
// Build the data
|
||||
Models.SoftwareList.SoftwareList sl = Build();
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using SabreTools.Models.ASN1;
|
||||
using SabreTools.Serialization.Deserializers;
|
||||
using SabreTools.Serialization.Models.ASN1;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.Deserializers
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using SabreTools.Serialization.Deserializers;
|
||||
@@ -75,8 +74,8 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.ArchiveDotOrg();
|
||||
var serializer = new Serialization.Serializers.ArchiveDotOrg();
|
||||
var deserializer = new ArchiveDotOrg();
|
||||
var serializer = new SabreTools.Serialization.Serializers.ArchiveDotOrg();
|
||||
|
||||
// Build the data
|
||||
Models.ArchiveDotOrg.Files files = Build();
|
||||
|
||||
@@ -75,14 +75,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripShortTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.AttractMode();
|
||||
var serializer = new Serialization.Serializers.AttractMode();
|
||||
var deserializer = new AttractMode();
|
||||
var serializer = new SabreTools.Serialization.Serializers.AttractMode();
|
||||
|
||||
// Build the data
|
||||
Models.AttractMode.MetadataFile mf = Build();
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(mf, longHeader: false);
|
||||
Stream? actual = serializer.SerializeStream(mf, longHeader: false);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
@@ -100,14 +100,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripLongTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.AttractMode();
|
||||
var serializer = new Serialization.Serializers.AttractMode();
|
||||
var deserializer = new AttractMode();
|
||||
var serializer = new SabreTools.Serialization.Serializers.AttractMode();
|
||||
|
||||
// Build the data
|
||||
Models.AttractMode.MetadataFile mf = Build();
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(mf, longHeader: true);
|
||||
Stream? actual = serializer.SerializeStream(mf, longHeader: true);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
@@ -168,9 +168,9 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
{
|
||||
Assert.NotNull(header);
|
||||
if (longHeader)
|
||||
Assert.True(Serialization.Serializers.AttractMode.HeaderArrayWithRomname.SequenceEqual(header));
|
||||
Assert.True(SabreTools.Serialization.Serializers.AttractMode.HeaderArrayWithRomname.SequenceEqual(header));
|
||||
else
|
||||
Assert.True(Serialization.Serializers.AttractMode.HeaderArrayWithoutRomname.SequenceEqual(header));
|
||||
Assert.True(SabreTools.Serialization.Serializers.AttractMode.HeaderArrayWithoutRomname.SequenceEqual(header));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -74,14 +74,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripGameTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.ClrMamePro();
|
||||
var serializer = new Serialization.Serializers.ClrMamePro();
|
||||
var deserializer = new ClrMamePro();
|
||||
var serializer = new SabreTools.Serialization.Serializers.ClrMamePro();
|
||||
|
||||
// Build the data
|
||||
Models.ClrMamePro.MetadataFile mf = Build(game: true);
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(mf);
|
||||
Stream? actual = serializer.SerializeStream(mf);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
@@ -99,14 +99,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripGameWithoutQuotesTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.ClrMamePro();
|
||||
var serializer = new Serialization.Serializers.ClrMamePro();
|
||||
var deserializer = new ClrMamePro();
|
||||
var serializer = new SabreTools.Serialization.Serializers.ClrMamePro();
|
||||
|
||||
// Build the data
|
||||
Models.ClrMamePro.MetadataFile mf = Build(game: true);
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(mf, quotes: false);
|
||||
Stream? actual = serializer.SerializeStream(mf, quotes: false);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
@@ -124,14 +124,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripMachineTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.ClrMamePro();
|
||||
var serializer = new Serialization.Serializers.ClrMamePro();
|
||||
var deserializer = new ClrMamePro();
|
||||
var serializer = new SabreTools.Serialization.Serializers.ClrMamePro();
|
||||
|
||||
// Build the data
|
||||
Models.ClrMamePro.MetadataFile mf = Build(game: false);
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(mf);
|
||||
Stream? actual = serializer.SerializeStream(mf);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
@@ -149,14 +149,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripMachineWithoutQuotesTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.ClrMamePro();
|
||||
var serializer = new Serialization.Serializers.ClrMamePro();
|
||||
var deserializer = new ClrMamePro();
|
||||
var serializer = new SabreTools.Serialization.Serializers.ClrMamePro();
|
||||
|
||||
// Build the data
|
||||
Models.ClrMamePro.MetadataFile mf = Build(game: false);
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(mf, quotes: false);
|
||||
Stream? actual = serializer.SerializeStream(mf, quotes: false);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using SabreTools.Serialization.Deserializers;
|
||||
@@ -75,14 +74,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.DosCenter();
|
||||
var serializer = new Serialization.Serializers.DosCenter();
|
||||
var deserializer = new DosCenter();
|
||||
var serializer = new SabreTools.Serialization.Serializers.DosCenter();
|
||||
|
||||
// Build the data
|
||||
Models.DosCenter.MetadataFile mf = Build();
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(mf);
|
||||
Stream? actual = serializer.SerializeStream(mf);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using SabreTools.Serialization.Deserializers;
|
||||
@@ -75,14 +74,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.EverdriveSMDB();
|
||||
var serializer = new Serialization.Serializers.EverdriveSMDB();
|
||||
var deserializer = new EverdriveSMDB();
|
||||
var serializer = new SabreTools.Serialization.Serializers.EverdriveSMDB();
|
||||
|
||||
// Build the data
|
||||
Models.EverdriveSMDB.MetadataFile mf = Build();
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(mf);
|
||||
Stream? actual = serializer.SerializeStream(mf);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
|
||||
@@ -76,14 +76,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripSFVTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Hashfile();
|
||||
var serializer = new Serialization.Serializers.Hashfile();
|
||||
var deserializer = new Hashfile();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.CRC32);
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(hf, HashType.CRC32);
|
||||
Stream? actual = serializer.SerializeStream(hf, HashType.CRC32);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
@@ -100,14 +100,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripMD2Test()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Hashfile();
|
||||
var serializer = new Serialization.Serializers.Hashfile();
|
||||
var deserializer = new Hashfile();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.MD2);
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(hf, HashType.MD2);
|
||||
Stream? actual = serializer.SerializeStream(hf, HashType.MD2);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
@@ -124,14 +124,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripMD4Test()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Hashfile();
|
||||
var serializer = new Serialization.Serializers.Hashfile();
|
||||
var deserializer = new Hashfile();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.MD4);
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(hf, HashType.MD4);
|
||||
Stream? actual = serializer.SerializeStream(hf, HashType.MD4);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
@@ -148,14 +148,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripMD5Test()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Hashfile();
|
||||
var serializer = new Serialization.Serializers.Hashfile();
|
||||
var deserializer = new Hashfile();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.MD5);
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(hf, HashType.MD5);
|
||||
Stream? actual = serializer.SerializeStream(hf, HashType.MD5);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
@@ -172,14 +172,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripSHA1Test()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Hashfile();
|
||||
var serializer = new Serialization.Serializers.Hashfile();
|
||||
var deserializer = new Hashfile();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.SHA1);
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(hf, HashType.SHA1);
|
||||
Stream? actual = serializer.SerializeStream(hf, HashType.SHA1);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
@@ -196,14 +196,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripSHA256Test()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Hashfile();
|
||||
var serializer = new Serialization.Serializers.Hashfile();
|
||||
var deserializer = new Hashfile();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.SHA256);
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(hf, HashType.SHA256);
|
||||
Stream? actual = serializer.SerializeStream(hf, HashType.SHA256);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
@@ -220,14 +220,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripSHA384Test()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Hashfile();
|
||||
var serializer = new Serialization.Serializers.Hashfile();
|
||||
var deserializer = new Hashfile();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.SHA384);
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(hf, HashType.SHA384);
|
||||
Stream? actual = serializer.SerializeStream(hf, HashType.SHA384);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
@@ -244,14 +244,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripSHA512Test()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Hashfile();
|
||||
var serializer = new Serialization.Serializers.Hashfile();
|
||||
var deserializer = new Hashfile();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.SHA512);
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(hf, HashType.SHA512);
|
||||
Stream? actual = serializer.SerializeStream(hf, HashType.SHA512);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
@@ -268,14 +268,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripSpamSumTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Hashfile();
|
||||
var serializer = new Serialization.Serializers.Hashfile();
|
||||
var deserializer = new Hashfile();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Hashfile();
|
||||
|
||||
// Build the data
|
||||
Models.Hashfile.Hashfile hf = Build(HashType.SpamSum);
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(hf, HashType.SpamSum);
|
||||
Stream? actual = serializer.SerializeStream(hf, HashType.SpamSum);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using SabreTools.Serialization.Deserializers;
|
||||
@@ -75,14 +74,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Listrom();
|
||||
var serializer = new Serialization.Serializers.Listrom();
|
||||
var deserializer = new Listrom();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Listrom();
|
||||
|
||||
// Build the data
|
||||
Models.Listrom.MetadataFile mf = Build();
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = serializer.Serialize(mf);
|
||||
Stream? actual = serializer.SerializeStream(mf);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using SabreTools.Serialization.Deserializers;
|
||||
@@ -75,8 +74,8 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripGameTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Listxml();
|
||||
var serializer = new Serialization.Serializers.Listxml();
|
||||
var deserializer = new Listxml();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Listxml();
|
||||
|
||||
// Build the data
|
||||
Models.Listxml.Mame mame = Build(game: true);
|
||||
@@ -103,8 +102,8 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripMachineTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Listxml();
|
||||
var serializer = new Serialization.Serializers.Listxml();
|
||||
var deserializer = new Listxml();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Listxml();
|
||||
|
||||
// Build the data
|
||||
Models.Listxml.Mame mame = Build(game: false);
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using SabreTools.Serialization.Deserializers;
|
||||
@@ -75,8 +74,8 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripGameTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Logiqx();
|
||||
var serializer = new Serialization.Serializers.Logiqx();
|
||||
var deserializer = new Logiqx();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Logiqx();
|
||||
|
||||
// Build the data
|
||||
Models.Logiqx.Datafile df = Build(game: true);
|
||||
@@ -107,8 +106,8 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripMachineTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Logiqx();
|
||||
var serializer = new Serialization.Serializers.Logiqx();
|
||||
var deserializer = new Logiqx();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Logiqx();
|
||||
|
||||
// Build the data
|
||||
Models.Logiqx.Datafile df = Build(game: false);
|
||||
|
||||
@@ -74,8 +74,8 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripGameTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.M1();
|
||||
var serializer = new Serialization.Serializers.M1();
|
||||
var deserializer = new M1();
|
||||
var serializer = new SabreTools.Serialization.Serializers.M1();
|
||||
|
||||
// Build the data
|
||||
Models.Listxml.M1 m1 = Build(game: true);
|
||||
@@ -100,8 +100,8 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripMachineTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.M1();
|
||||
var serializer = new Serialization.Serializers.M1();
|
||||
var deserializer = new M1();
|
||||
var serializer = new SabreTools.Serialization.Serializers.M1();
|
||||
|
||||
// Build the data
|
||||
Models.Listxml.M1 m1 = Build(game: false);
|
||||
|
||||
@@ -74,8 +74,8 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripGameTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Mess();
|
||||
var serializer = new Serialization.Serializers.Mess();
|
||||
var deserializer = new Mess();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Mess();
|
||||
|
||||
// Build the data
|
||||
Models.Listxml.Mess m1 = Build(game: true);
|
||||
@@ -100,8 +100,8 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripMachineTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.Mess();
|
||||
var serializer = new Serialization.Serializers.Mess();
|
||||
var deserializer = new Mess();
|
||||
var serializer = new SabreTools.Serialization.Serializers.Mess();
|
||||
|
||||
// Build the data
|
||||
Models.Listxml.Mess m1 = Build(game: false);
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using SabreTools.Serialization.Deserializers;
|
||||
@@ -75,8 +74,8 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.OfflineList();
|
||||
var serializer = new Serialization.Serializers.OfflineList();
|
||||
var deserializer = new OfflineList();
|
||||
var serializer = new SabreTools.Serialization.Serializers.OfflineList();
|
||||
|
||||
// Build the data
|
||||
Models.OfflineList.Dat dat = Build();
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using SabreTools.Serialization.Deserializers;
|
||||
@@ -75,8 +74,8 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.OpenMSX();
|
||||
var serializer = new Serialization.Serializers.OpenMSX();
|
||||
var deserializer = new OpenMSX();
|
||||
var serializer = new SabreTools.Serialization.Serializers.OpenMSX();
|
||||
|
||||
// Build the data
|
||||
Models.OpenMSX.SoftwareDb sdb = Build();
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using SabreTools.Serialization.Deserializers;
|
||||
@@ -75,14 +74,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.RomCenter();
|
||||
var serializer = new Serialization.Serializers.RomCenter();
|
||||
var deserializer = new RomCenter();
|
||||
var serializer = new SabreTools.Serialization.Serializers.RomCenter();
|
||||
|
||||
// Build the data
|
||||
Models.RomCenter.MetadataFile mf = Build();
|
||||
|
||||
// Serialize to stream
|
||||
Stream? metadata = serializer.Serialize(mf);
|
||||
Stream? metadata = serializer.SerializeStream(mf);
|
||||
Assert.NotNull(metadata);
|
||||
|
||||
// Serialize back to original model
|
||||
|
||||
@@ -75,14 +75,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripShortTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.SeparatedValue();
|
||||
var serializer = new Serialization.Serializers.SeparatedValue();
|
||||
var deserializer = new SeparatedValue();
|
||||
var serializer = new SabreTools.Serialization.Serializers.SeparatedValue();
|
||||
|
||||
// Build the data
|
||||
Models.SeparatedValue.MetadataFile mf = Build();
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = Serialization.Serializers.SeparatedValue.SerializeStream(mf, longHeader: false);
|
||||
Stream? actual = serializer.SerializeStream(mf, ',', longHeader: false);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
@@ -103,14 +103,14 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripLongTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.SeparatedValue();
|
||||
var serializer = new Serialization.Serializers.SeparatedValue();
|
||||
var deserializer = new SeparatedValue();
|
||||
var serializer = new SabreTools.Serialization.Serializers.SeparatedValue();
|
||||
|
||||
// Build the data
|
||||
Models.SeparatedValue.MetadataFile mf = Build();
|
||||
|
||||
// Serialize to stream
|
||||
Stream? actual = Serialization.Serializers.SeparatedValue.SerializeStream(mf, longHeader: true);
|
||||
Stream? actual = serializer.SerializeStream(mf, ',', longHeader: true);
|
||||
Assert.NotNull(actual);
|
||||
|
||||
// Serialize back to original model
|
||||
@@ -197,9 +197,9 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
{
|
||||
Assert.NotNull(header);
|
||||
if (longHeader)
|
||||
Assert.True(Serialization.Serializers.SeparatedValue.HeaderArrayExtended.SequenceEqual(header));
|
||||
Assert.True(SabreTools.Serialization.Serializers.SeparatedValue.HeaderArrayExtended.SequenceEqual(header));
|
||||
else
|
||||
Assert.True(Serialization.Serializers.SeparatedValue.HeaderArrayStandard.SequenceEqual(header));
|
||||
Assert.True(SabreTools.Serialization.Serializers.SeparatedValue.HeaderArrayStandard.SequenceEqual(header));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using SabreTools.Serialization.Deserializers;
|
||||
@@ -75,8 +74,8 @@ namespace SabreTools.Serialization.Test.Deserializers
|
||||
public void RoundTripTest()
|
||||
{
|
||||
// Get the serializer and deserializer
|
||||
var deserializer = new Serialization.Deserializers.SoftwareList();
|
||||
var serializer = new Serialization.Serializers.SoftwareList();
|
||||
var deserializer = new SoftwareList();
|
||||
var serializer = new SabreTools.Serialization.Serializers.SoftwareList();
|
||||
|
||||
// Build the data
|
||||
Models.SoftwareList.SoftwareList sl = Build();
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
using System;
|
||||
using SabreTools.Models.ASN1;
|
||||
using SabreTools.Serialization.Extensions;
|
||||
using SabreTools.Serialization.Models.ASN1;
|
||||
using Xunit;
|
||||
|
||||
namespace SabreTools.Serialization.Test.Extensions
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace SabreTools.Serialization.Test.Serializers
|
||||
public void SerializeStream_Null_Null()
|
||||
{
|
||||
var serializer = new AttractMode();
|
||||
Stream? actual = serializer.Serialize(null);
|
||||
Stream? actual = serializer.SerializeStream(null);
|
||||
Assert.Null(actual);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace SabreTools.Serialization.Test.Serializers
|
||||
public void SerializeStream_Null_Null()
|
||||
{
|
||||
var serializer = new Catalog();
|
||||
Stream? actual = serializer.Serialize(null);
|
||||
Stream? actual = serializer.SerializeStream(null);
|
||||
Assert.Null(actual);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace SabreTools.Serialization.Test.Serializers
|
||||
public void SerializeStream_Null_Null()
|
||||
{
|
||||
var serializer = new ClrMamePro();
|
||||
Stream? actual = serializer.Serialize(null);
|
||||
Stream? actual = serializer.SerializeStream(null);
|
||||
Assert.Null(actual);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace SabreTools.Serialization.Test.Serializers
|
||||
public void SerializeStream_Null_Null()
|
||||
{
|
||||
var serializer = new CueSheet();
|
||||
Stream? actual = serializer.Serialize(null);
|
||||
Stream? actual = serializer.SerializeStream(null);
|
||||
Assert.Null(actual);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace SabreTools.Serialization.Test.Serializers
|
||||
public void SerializeStream_Null_Null()
|
||||
{
|
||||
var serializer = new DosCenter();
|
||||
Stream? actual = serializer.Serialize(null);
|
||||
Stream? actual = serializer.SerializeStream(null);
|
||||
Assert.Null(actual);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace SabreTools.Serialization.Test.Serializers
|
||||
public void SerializeStream_Null_Null()
|
||||
{
|
||||
var serializer = new EverdriveSMDB();
|
||||
Stream? actual = serializer.Serialize(null);
|
||||
Stream? actual = serializer.SerializeStream(null);
|
||||
Assert.Null(actual);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace SabreTools.Serialization.Test.Serializers
|
||||
public void SerializeStream_Null_Null()
|
||||
{
|
||||
var serializer = new Hashfile();
|
||||
Stream? actual = serializer.Serialize(null);
|
||||
Stream? actual = serializer.SerializeStream(null);
|
||||
Assert.Null(actual);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace SabreTools.Serialization.Test.Serializers
|
||||
public void SerializeStream_Null_Null()
|
||||
{
|
||||
var serializer = new IRD();
|
||||
Stream? actual = serializer.Serialize(null);
|
||||
Stream? actual = serializer.SerializeStream(null);
|
||||
Assert.Null(actual);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace SabreTools.Serialization.Test.Serializers
|
||||
public void SerializeStream_Null_Null()
|
||||
{
|
||||
var serializer = new Listrom();
|
||||
Stream? actual = serializer.Serialize(null);
|
||||
Stream? actual = serializer.SerializeStream(null);
|
||||
Assert.Null(actual);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace SabreTools.Serialization.Test.Serializers
|
||||
public void SerializeStream_Null_Null()
|
||||
{
|
||||
var serializer = new RomCenter();
|
||||
Stream? actual = serializer.Serialize(null);
|
||||
Stream? actual = serializer.SerializeStream(null);
|
||||
Assert.Null(actual);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace SabreTools.Serialization.Test.Serializers
|
||||
public void SerializeStream_Null_Null()
|
||||
{
|
||||
var serializer = new SeparatedValue();
|
||||
Stream? actual = serializer.Serialize(null);
|
||||
Stream? actual = serializer.SerializeStream(null);
|
||||
Assert.Null(actual);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,21 +1,22 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.ArchiveDotOrg;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class ArchiveDotOrg : IModelSerializer<Models.ArchiveDotOrg.Files, Models.Metadata.MetadataFile>
|
||||
public partial class ArchiveDotOrg : IModelSerializer<Files, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.ArchiveDotOrg.Files? Deserialize(Models.Metadata.MetadataFile? obj)
|
||||
public Files? Deserialize(Serialization.Models.Metadata.MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var files = new Models.ArchiveDotOrg.Files();
|
||||
var files = new Files();
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var items = new List<Models.ArchiveDotOrg.File>();
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
var items = new List<File>();
|
||||
foreach (var machine in machines ?? [])
|
||||
{
|
||||
items.AddRange(ConvertFromInternalModel(machine));
|
||||
@@ -26,11 +27,11 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Machine"/> to an array of <see cref="Models.ArchiveDotOrg.File"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Machine"/> to an array of <see cref="File"/>
|
||||
/// </summary>
|
||||
private static Models.ArchiveDotOrg.File[] ConvertFromInternalModel(Models.Metadata.Machine item)
|
||||
private static File[] ConvertFromInternalModel(Serialization.Models.Metadata.Machine item)
|
||||
{
|
||||
var roms = item.Read<Models.Metadata.Rom[]>(Models.Metadata.Machine.RomKey);
|
||||
var roms = item.Read<Serialization.Models.Metadata.Rom[]>(Serialization.Models.Metadata.Machine.RomKey);
|
||||
if (roms == null)
|
||||
return [];
|
||||
|
||||
@@ -38,75 +39,75 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.ArchiveDotOrg.File"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="File"/>
|
||||
/// </summary>
|
||||
private static Models.ArchiveDotOrg.File ConvertFromInternalModel(Models.Metadata.Rom item)
|
||||
private static File ConvertFromInternalModel(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var file = new Models.ArchiveDotOrg.File
|
||||
var file = new File
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Source = item.ReadString(Models.Metadata.Rom.SourceKey),
|
||||
BitTorrentMagnetHash = item.ReadString(Models.Metadata.Rom.BitTorrentMagnetHashKey),
|
||||
LastModifiedTime = item.ReadString(Models.Metadata.Rom.LastModifiedTimeKey),
|
||||
Size = item.ReadString(Models.Metadata.Rom.SizeKey),
|
||||
MD5 = item.ReadString(Models.Metadata.Rom.MD5Key),
|
||||
CRC32 = item.ReadString(Models.Metadata.Rom.CRCKey),
|
||||
SHA1 = item.ReadString(Models.Metadata.Rom.SHA1Key),
|
||||
FileCount = item.ReadString(Models.Metadata.Rom.FileCountKey),
|
||||
Format = item.ReadString(Models.Metadata.Rom.FormatKey),
|
||||
Original = item.ReadString(Models.Metadata.Rom.OriginalKey),
|
||||
Summation = item.ReadString(Models.Metadata.Rom.SummationKey),
|
||||
MatrixNumber = item.ReadString(Models.Metadata.Rom.MatrixNumberKey),
|
||||
CollectionCatalogNumber = item.ReadString(Models.Metadata.Rom.CollectionCatalogNumberKey),
|
||||
Publisher = item.ReadString(Models.Metadata.Rom.PublisherKey),
|
||||
Comment = item.ReadString(Models.Metadata.Rom.CommentKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
Source = item.ReadString(Serialization.Models.Metadata.Rom.SourceKey),
|
||||
BitTorrentMagnetHash = item.ReadString(Serialization.Models.Metadata.Rom.BitTorrentMagnetHashKey),
|
||||
LastModifiedTime = item.ReadString(Serialization.Models.Metadata.Rom.LastModifiedTimeKey),
|
||||
Size = item.ReadString(Serialization.Models.Metadata.Rom.SizeKey),
|
||||
MD5 = item.ReadString(Serialization.Models.Metadata.Rom.MD5Key),
|
||||
CRC32 = item.ReadString(Serialization.Models.Metadata.Rom.CRCKey),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Rom.SHA1Key),
|
||||
FileCount = item.ReadString(Serialization.Models.Metadata.Rom.FileCountKey),
|
||||
Format = item.ReadString(Serialization.Models.Metadata.Rom.FormatKey),
|
||||
Original = item.ReadString(Serialization.Models.Metadata.Rom.OriginalKey),
|
||||
Summation = item.ReadString(Serialization.Models.Metadata.Rom.SummationKey),
|
||||
MatrixNumber = item.ReadString(Serialization.Models.Metadata.Rom.MatrixNumberKey),
|
||||
CollectionCatalogNumber = item.ReadString(Serialization.Models.Metadata.Rom.CollectionCatalogNumberKey),
|
||||
Publisher = item.ReadString(Serialization.Models.Metadata.Rom.PublisherKey),
|
||||
Comment = item.ReadString(Serialization.Models.Metadata.Rom.CommentKey),
|
||||
|
||||
ASRDetectedLang = item.ReadString(Models.Metadata.Rom.ASRDetectedLangKey),
|
||||
ASRDetectedLangConf = item.ReadString(Models.Metadata.Rom.ASRDetectedLangConfKey),
|
||||
ASRTranscribedLang = item.ReadString(Models.Metadata.Rom.ASRTranscribedLangKey),
|
||||
WhisperASRModuleVersion = item.ReadString(Models.Metadata.Rom.WhisperASRModuleVersionKey),
|
||||
WhisperModelHash = item.ReadString(Models.Metadata.Rom.WhisperModelHashKey),
|
||||
WhisperModelName = item.ReadString(Models.Metadata.Rom.WhisperModelNameKey),
|
||||
WhisperVersion = item.ReadString(Models.Metadata.Rom.WhisperVersionKey),
|
||||
ASRDetectedLang = item.ReadString(Serialization.Models.Metadata.Rom.ASRDetectedLangKey),
|
||||
ASRDetectedLangConf = item.ReadString(Serialization.Models.Metadata.Rom.ASRDetectedLangConfKey),
|
||||
ASRTranscribedLang = item.ReadString(Serialization.Models.Metadata.Rom.ASRTranscribedLangKey),
|
||||
WhisperASRModuleVersion = item.ReadString(Serialization.Models.Metadata.Rom.WhisperASRModuleVersionKey),
|
||||
WhisperModelHash = item.ReadString(Serialization.Models.Metadata.Rom.WhisperModelHashKey),
|
||||
WhisperModelName = item.ReadString(Serialization.Models.Metadata.Rom.WhisperModelNameKey),
|
||||
WhisperVersion = item.ReadString(Serialization.Models.Metadata.Rom.WhisperVersionKey),
|
||||
|
||||
ClothCoverDetectionModuleVersion = item.ReadString(Models.Metadata.Rom.ClothCoverDetectionModuleVersionKey),
|
||||
hOCRCharToWordhOCRVersion = item.ReadString(Models.Metadata.Rom.hOCRCharToWordhOCRVersionKey),
|
||||
hOCRCharToWordModuleVersion = item.ReadString(Models.Metadata.Rom.hOCRCharToWordModuleVersionKey),
|
||||
hOCRFtsTexthOCRVersion = item.ReadString(Models.Metadata.Rom.hOCRFtsTexthOCRVersionKey),
|
||||
hOCRFtsTextModuleVersion = item.ReadString(Models.Metadata.Rom.hOCRFtsTextModuleVersionKey),
|
||||
hOCRPageIndexhOCRVersion = item.ReadString(Models.Metadata.Rom.hOCRPageIndexhOCRVersionKey),
|
||||
hOCRPageIndexModuleVersion = item.ReadString(Models.Metadata.Rom.hOCRPageIndexModuleVersionKey),
|
||||
TesseractOCR = item.ReadString(Models.Metadata.Rom.TesseractOCRKey),
|
||||
TesseractOCRConverted = item.ReadString(Models.Metadata.Rom.TesseractOCRConvertedKey),
|
||||
TesseractOCRDetectedLang = item.ReadString(Models.Metadata.Rom.TesseractOCRDetectedLangKey),
|
||||
TesseractOCRDetectedLangConf = item.ReadString(Models.Metadata.Rom.TesseractOCRDetectedLangConfKey),
|
||||
TesseractOCRDetectedScript = item.ReadString(Models.Metadata.Rom.TesseractOCRDetectedScriptKey),
|
||||
TesseractOCRDetectedScriptConf = item.ReadString(Models.Metadata.Rom.TesseractOCRDetectedScriptConfKey),
|
||||
TesseractOCRModuleVersion = item.ReadString(Models.Metadata.Rom.TesseractOCRModuleVersionKey),
|
||||
TesseractOCRParameters = item.ReadString(Models.Metadata.Rom.TesseractOCRParametersKey),
|
||||
PDFModuleVersion = item.ReadString(Models.Metadata.Rom.PDFModuleVersionKey),
|
||||
WordConfidenceInterval0To10 = item.ReadString(Models.Metadata.Rom.WordConfidenceInterval0To10Key),
|
||||
WordConfidenceInterval11To20 = item.ReadString(Models.Metadata.Rom.WordConfidenceInterval11To20Key),
|
||||
WordConfidenceInterval21To30 = item.ReadString(Models.Metadata.Rom.WordConfidenceInterval21To30Key),
|
||||
WordConfidenceInterval31To40 = item.ReadString(Models.Metadata.Rom.WordConfidenceInterval31To40Key),
|
||||
WordConfidenceInterval41To50 = item.ReadString(Models.Metadata.Rom.WordConfidenceInterval41To50Key),
|
||||
WordConfidenceInterval51To60 = item.ReadString(Models.Metadata.Rom.WordConfidenceInterval51To60Key),
|
||||
WordConfidenceInterval61To70 = item.ReadString(Models.Metadata.Rom.WordConfidenceInterval61To70Key),
|
||||
WordConfidenceInterval71To80 = item.ReadString(Models.Metadata.Rom.WordConfidenceInterval71To80Key),
|
||||
WordConfidenceInterval81To90 = item.ReadString(Models.Metadata.Rom.WordConfidenceInterval81To90Key),
|
||||
WordConfidenceInterval91To100 = item.ReadString(Models.Metadata.Rom.WordConfidenceInterval91To100Key),
|
||||
ClothCoverDetectionModuleVersion = item.ReadString(Serialization.Models.Metadata.Rom.ClothCoverDetectionModuleVersionKey),
|
||||
hOCRCharToWordhOCRVersion = item.ReadString(Serialization.Models.Metadata.Rom.hOCRCharToWordhOCRVersionKey),
|
||||
hOCRCharToWordModuleVersion = item.ReadString(Serialization.Models.Metadata.Rom.hOCRCharToWordModuleVersionKey),
|
||||
hOCRFtsTexthOCRVersion = item.ReadString(Serialization.Models.Metadata.Rom.hOCRFtsTexthOCRVersionKey),
|
||||
hOCRFtsTextModuleVersion = item.ReadString(Serialization.Models.Metadata.Rom.hOCRFtsTextModuleVersionKey),
|
||||
hOCRPageIndexhOCRVersion = item.ReadString(Serialization.Models.Metadata.Rom.hOCRPageIndexhOCRVersionKey),
|
||||
hOCRPageIndexModuleVersion = item.ReadString(Serialization.Models.Metadata.Rom.hOCRPageIndexModuleVersionKey),
|
||||
TesseractOCR = item.ReadString(Serialization.Models.Metadata.Rom.TesseractOCRKey),
|
||||
TesseractOCRConverted = item.ReadString(Serialization.Models.Metadata.Rom.TesseractOCRConvertedKey),
|
||||
TesseractOCRDetectedLang = item.ReadString(Serialization.Models.Metadata.Rom.TesseractOCRDetectedLangKey),
|
||||
TesseractOCRDetectedLangConf = item.ReadString(Serialization.Models.Metadata.Rom.TesseractOCRDetectedLangConfKey),
|
||||
TesseractOCRDetectedScript = item.ReadString(Serialization.Models.Metadata.Rom.TesseractOCRDetectedScriptKey),
|
||||
TesseractOCRDetectedScriptConf = item.ReadString(Serialization.Models.Metadata.Rom.TesseractOCRDetectedScriptConfKey),
|
||||
TesseractOCRModuleVersion = item.ReadString(Serialization.Models.Metadata.Rom.TesseractOCRModuleVersionKey),
|
||||
TesseractOCRParameters = item.ReadString(Serialization.Models.Metadata.Rom.TesseractOCRParametersKey),
|
||||
PDFModuleVersion = item.ReadString(Serialization.Models.Metadata.Rom.PDFModuleVersionKey),
|
||||
WordConfidenceInterval0To10 = item.ReadString(Serialization.Models.Metadata.Rom.WordConfidenceInterval0To10Key),
|
||||
WordConfidenceInterval11To20 = item.ReadString(Serialization.Models.Metadata.Rom.WordConfidenceInterval11To20Key),
|
||||
WordConfidenceInterval21To30 = item.ReadString(Serialization.Models.Metadata.Rom.WordConfidenceInterval21To30Key),
|
||||
WordConfidenceInterval31To40 = item.ReadString(Serialization.Models.Metadata.Rom.WordConfidenceInterval31To40Key),
|
||||
WordConfidenceInterval41To50 = item.ReadString(Serialization.Models.Metadata.Rom.WordConfidenceInterval41To50Key),
|
||||
WordConfidenceInterval51To60 = item.ReadString(Serialization.Models.Metadata.Rom.WordConfidenceInterval51To60Key),
|
||||
WordConfidenceInterval61To70 = item.ReadString(Serialization.Models.Metadata.Rom.WordConfidenceInterval61To70Key),
|
||||
WordConfidenceInterval71To80 = item.ReadString(Serialization.Models.Metadata.Rom.WordConfidenceInterval71To80Key),
|
||||
WordConfidenceInterval81To90 = item.ReadString(Serialization.Models.Metadata.Rom.WordConfidenceInterval81To90Key),
|
||||
WordConfidenceInterval91To100 = item.ReadString(Serialization.Models.Metadata.Rom.WordConfidenceInterval91To100Key),
|
||||
|
||||
Album = item.ReadString(Models.Metadata.Rom.AlbumKey),
|
||||
Artist = item.ReadString(Models.Metadata.Rom.ArtistKey),
|
||||
Bitrate = item.ReadString(Models.Metadata.Rom.BitrateKey),
|
||||
Creator = item.ReadString(Models.Metadata.Rom.CreatorKey),
|
||||
Height = item.ReadString(Models.Metadata.Rom.HeightKey),
|
||||
Length = item.ReadString(Models.Metadata.Rom.LengthKey),
|
||||
PreviewImage = item.ReadString(Models.Metadata.Rom.PreviewImageKey),
|
||||
Rotation = item.ReadString(Models.Metadata.Rom.RotationKey),
|
||||
Title = item.ReadString(Models.Metadata.Rom.TitleKey),
|
||||
Track = item.ReadString(Models.Metadata.Rom.TrackKey),
|
||||
Width = item.ReadString(Models.Metadata.Rom.WidthKey),
|
||||
Album = item.ReadString(Serialization.Models.Metadata.Rom.AlbumKey),
|
||||
Artist = item.ReadString(Serialization.Models.Metadata.Rom.ArtistKey),
|
||||
Bitrate = item.ReadString(Serialization.Models.Metadata.Rom.BitrateKey),
|
||||
Creator = item.ReadString(Serialization.Models.Metadata.Rom.CreatorKey),
|
||||
Height = item.ReadString(Serialization.Models.Metadata.Rom.HeightKey),
|
||||
Length = item.ReadString(Serialization.Models.Metadata.Rom.LengthKey),
|
||||
PreviewImage = item.ReadString(Serialization.Models.Metadata.Rom.PreviewImageKey),
|
||||
Rotation = item.ReadString(Serialization.Models.Metadata.Rom.RotationKey),
|
||||
Title = item.ReadString(Serialization.Models.Metadata.Rom.TitleKey),
|
||||
Track = item.ReadString(Serialization.Models.Metadata.Rom.TrackKey),
|
||||
Width = item.ReadString(Serialization.Models.Metadata.Rom.WidthKey),
|
||||
};
|
||||
return file;
|
||||
}
|
||||
|
||||
@@ -1,24 +1,25 @@
|
||||
using System;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.ArchiveDotOrg;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class ArchiveDotOrg : IModelSerializer<Models.ArchiveDotOrg.Files, Models.Metadata.MetadataFile>
|
||||
public partial class ArchiveDotOrg : IModelSerializer<Files, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Metadata.MetadataFile? Serialize(Models.ArchiveDotOrg.Files? item)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(Files? item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile
|
||||
{
|
||||
[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
};
|
||||
|
||||
if (item?.File != null && item.File.Length > 0)
|
||||
{
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey]
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey]
|
||||
= Array.ConvertAll(item.File, ConvertMachineToInternalModel);
|
||||
}
|
||||
|
||||
@@ -26,104 +27,104 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ArchiveDotOrg.Files"/> to <see cref="Models.Metadata.Header"/>
|
||||
/// Convert from <see cref="Files"/> to <see cref="Serialization.Models.Metadata.Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel(Models.ArchiveDotOrg.Files item)
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel(Files item)
|
||||
{
|
||||
var header = new Models.Metadata.Header
|
||||
var header = new Serialization.Models.Metadata.Header
|
||||
{
|
||||
[Models.Metadata.Header.NameKey] = "archive.org",
|
||||
[Serialization.Models.Metadata.Header.NameKey] = "archive.org",
|
||||
};
|
||||
return header;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ArchiveDotOrg.File"/> to <see cref="Models.Metadata.Machine"/>
|
||||
/// Convert from <see cref="File"/> to <see cref="Serialization.Models.Metadata.Machine"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Machine ConvertMachineToInternalModel(Models.ArchiveDotOrg.File? item)
|
||||
private static Serialization.Models.Metadata.Machine ConvertMachineToInternalModel(File? item)
|
||||
{
|
||||
var machine = new Models.Metadata.Machine();
|
||||
var machine = new Serialization.Models.Metadata.Machine();
|
||||
|
||||
var rom = ConvertToInternalModel(item);
|
||||
if (rom != null)
|
||||
machine[Models.Metadata.Machine.RomKey] = new Models.Metadata.Rom[] { rom };
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey] = new Serialization.Models.Metadata.Rom[] { rom };
|
||||
|
||||
return machine;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ArchiveDotOrg.File"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="File"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom? ConvertToInternalModel(Models.ArchiveDotOrg.File? item)
|
||||
private static Serialization.Models.Metadata.Rom? ConvertToInternalModel(File? item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Models.Metadata.Rom.SourceKey] = item.Source,
|
||||
[Models.Metadata.Rom.BitTorrentMagnetHashKey] = item.BitTorrentMagnetHash,
|
||||
[Models.Metadata.Rom.LastModifiedTimeKey] = item.LastModifiedTime,
|
||||
[Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Models.Metadata.Rom.MD5Key] = item.MD5,
|
||||
[Models.Metadata.Rom.CRCKey] = item.CRC32,
|
||||
[Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Rom.FileCountKey] = item.FileCount,
|
||||
[Models.Metadata.Rom.FormatKey] = item.Format,
|
||||
[Models.Metadata.Rom.OriginalKey] = item.Original,
|
||||
[Models.Metadata.Rom.SummationKey] = item.Summation,
|
||||
[Models.Metadata.Rom.MatrixNumberKey] = item.MatrixNumber,
|
||||
[Models.Metadata.Rom.CollectionCatalogNumberKey] = item.CollectionCatalogNumber,
|
||||
[Models.Metadata.Rom.PublisherKey] = item.Publisher,
|
||||
[Models.Metadata.Rom.CommentKey] = item.Comment,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Rom.SourceKey] = item.Source,
|
||||
[Serialization.Models.Metadata.Rom.BitTorrentMagnetHashKey] = item.BitTorrentMagnetHash,
|
||||
[Serialization.Models.Metadata.Rom.LastModifiedTimeKey] = item.LastModifiedTime,
|
||||
[Serialization.Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Serialization.Models.Metadata.Rom.MD5Key] = item.MD5,
|
||||
[Serialization.Models.Metadata.Rom.CRCKey] = item.CRC32,
|
||||
[Serialization.Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Rom.FileCountKey] = item.FileCount,
|
||||
[Serialization.Models.Metadata.Rom.FormatKey] = item.Format,
|
||||
[Serialization.Models.Metadata.Rom.OriginalKey] = item.Original,
|
||||
[Serialization.Models.Metadata.Rom.SummationKey] = item.Summation,
|
||||
[Serialization.Models.Metadata.Rom.MatrixNumberKey] = item.MatrixNumber,
|
||||
[Serialization.Models.Metadata.Rom.CollectionCatalogNumberKey] = item.CollectionCatalogNumber,
|
||||
[Serialization.Models.Metadata.Rom.PublisherKey] = item.Publisher,
|
||||
[Serialization.Models.Metadata.Rom.CommentKey] = item.Comment,
|
||||
|
||||
[Models.Metadata.Rom.ASRDetectedLangKey] = item.ASRDetectedLang,
|
||||
[Models.Metadata.Rom.ASRDetectedLangConfKey] = item.ASRDetectedLangConf,
|
||||
[Models.Metadata.Rom.ASRTranscribedLangKey] = item.ASRTranscribedLang,
|
||||
[Models.Metadata.Rom.WhisperASRModuleVersionKey] = item.WhisperASRModuleVersion,
|
||||
[Models.Metadata.Rom.WhisperModelHashKey] = item.WhisperModelHash,
|
||||
[Models.Metadata.Rom.WhisperModelNameKey] = item.WhisperModelName,
|
||||
[Models.Metadata.Rom.WhisperVersionKey] = item.WhisperVersion,
|
||||
[Serialization.Models.Metadata.Rom.ASRDetectedLangKey] = item.ASRDetectedLang,
|
||||
[Serialization.Models.Metadata.Rom.ASRDetectedLangConfKey] = item.ASRDetectedLangConf,
|
||||
[Serialization.Models.Metadata.Rom.ASRTranscribedLangKey] = item.ASRTranscribedLang,
|
||||
[Serialization.Models.Metadata.Rom.WhisperASRModuleVersionKey] = item.WhisperASRModuleVersion,
|
||||
[Serialization.Models.Metadata.Rom.WhisperModelHashKey] = item.WhisperModelHash,
|
||||
[Serialization.Models.Metadata.Rom.WhisperModelNameKey] = item.WhisperModelName,
|
||||
[Serialization.Models.Metadata.Rom.WhisperVersionKey] = item.WhisperVersion,
|
||||
|
||||
[Models.Metadata.Rom.ClothCoverDetectionModuleVersionKey] = item.ClothCoverDetectionModuleVersion,
|
||||
[Models.Metadata.Rom.hOCRCharToWordhOCRVersionKey] = item.hOCRCharToWordhOCRVersion,
|
||||
[Models.Metadata.Rom.hOCRCharToWordModuleVersionKey] = item.hOCRCharToWordModuleVersion,
|
||||
[Models.Metadata.Rom.hOCRFtsTexthOCRVersionKey] = item.hOCRFtsTexthOCRVersion,
|
||||
[Models.Metadata.Rom.hOCRFtsTextModuleVersionKey] = item.hOCRFtsTextModuleVersion,
|
||||
[Models.Metadata.Rom.hOCRPageIndexhOCRVersionKey] = item.hOCRPageIndexhOCRVersion,
|
||||
[Models.Metadata.Rom.hOCRPageIndexModuleVersionKey] = item.hOCRPageIndexModuleVersion,
|
||||
[Models.Metadata.Rom.TesseractOCRKey] = item.TesseractOCR,
|
||||
[Models.Metadata.Rom.TesseractOCRConvertedKey] = item.TesseractOCRConverted,
|
||||
[Models.Metadata.Rom.TesseractOCRDetectedLangKey] = item.TesseractOCRDetectedLang,
|
||||
[Models.Metadata.Rom.TesseractOCRDetectedLangConfKey] = item.TesseractOCRDetectedLangConf,
|
||||
[Models.Metadata.Rom.TesseractOCRDetectedScriptKey] = item.TesseractOCRDetectedScript,
|
||||
[Models.Metadata.Rom.TesseractOCRDetectedScriptConfKey] = item.TesseractOCRDetectedScriptConf,
|
||||
[Models.Metadata.Rom.TesseractOCRModuleVersionKey] = item.TesseractOCRModuleVersion,
|
||||
[Models.Metadata.Rom.TesseractOCRParametersKey] = item.TesseractOCRParameters,
|
||||
[Models.Metadata.Rom.PDFModuleVersionKey] = item.PDFModuleVersion,
|
||||
[Models.Metadata.Rom.WordConfidenceInterval0To10Key] = item.WordConfidenceInterval0To10,
|
||||
[Models.Metadata.Rom.WordConfidenceInterval11To20Key] = item.WordConfidenceInterval11To20,
|
||||
[Models.Metadata.Rom.WordConfidenceInterval21To30Key] = item.WordConfidenceInterval21To30,
|
||||
[Models.Metadata.Rom.WordConfidenceInterval31To40Key] = item.WordConfidenceInterval31To40,
|
||||
[Models.Metadata.Rom.WordConfidenceInterval41To50Key] = item.WordConfidenceInterval41To50,
|
||||
[Models.Metadata.Rom.WordConfidenceInterval51To60Key] = item.WordConfidenceInterval51To60,
|
||||
[Models.Metadata.Rom.WordConfidenceInterval61To70Key] = item.WordConfidenceInterval61To70,
|
||||
[Models.Metadata.Rom.WordConfidenceInterval71To80Key] = item.WordConfidenceInterval71To80,
|
||||
[Models.Metadata.Rom.WordConfidenceInterval81To90Key] = item.WordConfidenceInterval81To90,
|
||||
[Models.Metadata.Rom.WordConfidenceInterval91To100Key] = item.WordConfidenceInterval91To100,
|
||||
[Serialization.Models.Metadata.Rom.ClothCoverDetectionModuleVersionKey] = item.ClothCoverDetectionModuleVersion,
|
||||
[Serialization.Models.Metadata.Rom.hOCRCharToWordhOCRVersionKey] = item.hOCRCharToWordhOCRVersion,
|
||||
[Serialization.Models.Metadata.Rom.hOCRCharToWordModuleVersionKey] = item.hOCRCharToWordModuleVersion,
|
||||
[Serialization.Models.Metadata.Rom.hOCRFtsTexthOCRVersionKey] = item.hOCRFtsTexthOCRVersion,
|
||||
[Serialization.Models.Metadata.Rom.hOCRFtsTextModuleVersionKey] = item.hOCRFtsTextModuleVersion,
|
||||
[Serialization.Models.Metadata.Rom.hOCRPageIndexhOCRVersionKey] = item.hOCRPageIndexhOCRVersion,
|
||||
[Serialization.Models.Metadata.Rom.hOCRPageIndexModuleVersionKey] = item.hOCRPageIndexModuleVersion,
|
||||
[Serialization.Models.Metadata.Rom.TesseractOCRKey] = item.TesseractOCR,
|
||||
[Serialization.Models.Metadata.Rom.TesseractOCRConvertedKey] = item.TesseractOCRConverted,
|
||||
[Serialization.Models.Metadata.Rom.TesseractOCRDetectedLangKey] = item.TesseractOCRDetectedLang,
|
||||
[Serialization.Models.Metadata.Rom.TesseractOCRDetectedLangConfKey] = item.TesseractOCRDetectedLangConf,
|
||||
[Serialization.Models.Metadata.Rom.TesseractOCRDetectedScriptKey] = item.TesseractOCRDetectedScript,
|
||||
[Serialization.Models.Metadata.Rom.TesseractOCRDetectedScriptConfKey] = item.TesseractOCRDetectedScriptConf,
|
||||
[Serialization.Models.Metadata.Rom.TesseractOCRModuleVersionKey] = item.TesseractOCRModuleVersion,
|
||||
[Serialization.Models.Metadata.Rom.TesseractOCRParametersKey] = item.TesseractOCRParameters,
|
||||
[Serialization.Models.Metadata.Rom.PDFModuleVersionKey] = item.PDFModuleVersion,
|
||||
[Serialization.Models.Metadata.Rom.WordConfidenceInterval0To10Key] = item.WordConfidenceInterval0To10,
|
||||
[Serialization.Models.Metadata.Rom.WordConfidenceInterval11To20Key] = item.WordConfidenceInterval11To20,
|
||||
[Serialization.Models.Metadata.Rom.WordConfidenceInterval21To30Key] = item.WordConfidenceInterval21To30,
|
||||
[Serialization.Models.Metadata.Rom.WordConfidenceInterval31To40Key] = item.WordConfidenceInterval31To40,
|
||||
[Serialization.Models.Metadata.Rom.WordConfidenceInterval41To50Key] = item.WordConfidenceInterval41To50,
|
||||
[Serialization.Models.Metadata.Rom.WordConfidenceInterval51To60Key] = item.WordConfidenceInterval51To60,
|
||||
[Serialization.Models.Metadata.Rom.WordConfidenceInterval61To70Key] = item.WordConfidenceInterval61To70,
|
||||
[Serialization.Models.Metadata.Rom.WordConfidenceInterval71To80Key] = item.WordConfidenceInterval71To80,
|
||||
[Serialization.Models.Metadata.Rom.WordConfidenceInterval81To90Key] = item.WordConfidenceInterval81To90,
|
||||
[Serialization.Models.Metadata.Rom.WordConfidenceInterval91To100Key] = item.WordConfidenceInterval91To100,
|
||||
|
||||
[Models.Metadata.Rom.AlbumKey] = item.Album,
|
||||
[Models.Metadata.Rom.ArtistKey] = item.Artist,
|
||||
[Models.Metadata.Rom.BitrateKey] = item.Bitrate,
|
||||
[Models.Metadata.Rom.CreatorKey] = item.Creator,
|
||||
[Models.Metadata.Rom.HeightKey] = item.Height,
|
||||
[Models.Metadata.Rom.LengthKey] = item.Length,
|
||||
[Models.Metadata.Rom.PreviewImageKey] = item.PreviewImage,
|
||||
[Models.Metadata.Rom.RotationKey] = item.Rotation,
|
||||
[Models.Metadata.Rom.TitleKey] = item.Title,
|
||||
[Models.Metadata.Rom.TrackKey] = item.Track,
|
||||
[Models.Metadata.Rom.WidthKey] = item.Width,
|
||||
[Serialization.Models.Metadata.Rom.AlbumKey] = item.Album,
|
||||
[Serialization.Models.Metadata.Rom.ArtistKey] = item.Artist,
|
||||
[Serialization.Models.Metadata.Rom.BitrateKey] = item.Bitrate,
|
||||
[Serialization.Models.Metadata.Rom.CreatorKey] = item.Creator,
|
||||
[Serialization.Models.Metadata.Rom.HeightKey] = item.Height,
|
||||
[Serialization.Models.Metadata.Rom.LengthKey] = item.Length,
|
||||
[Serialization.Models.Metadata.Rom.PreviewImageKey] = item.PreviewImage,
|
||||
[Serialization.Models.Metadata.Rom.RotationKey] = item.Rotation,
|
||||
[Serialization.Models.Metadata.Rom.TitleKey] = item.Title,
|
||||
[Serialization.Models.Metadata.Rom.TrackKey] = item.Track,
|
||||
[Serialization.Models.Metadata.Rom.WidthKey] = item.Width,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using SabreTools.Models.AttractMode;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.AttractMode;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class AttractMode : IModelSerializer<MetadataFile, Models.Metadata.MetadataFile>
|
||||
public partial class AttractMode : IModelSerializer<MetadataFile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public MetadataFile? Deserialize(Models.Metadata.MetadataFile? obj)
|
||||
public MetadataFile? Deserialize(Serialization.Models.Metadata.MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var header = obj.Read<Models.Metadata.Header>(Models.Metadata.MetadataFile.HeaderKey);
|
||||
var header = obj.Read<Serialization.Models.Metadata.Header>(Serialization.Models.Metadata.MetadataFile.HeaderKey);
|
||||
var metadataFile = header != null ? ConvertHeaderFromInternalModel(header) : new MetadataFile();
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
var items = new List<Row>();
|
||||
foreach (var machine in machines ?? [])
|
||||
{
|
||||
@@ -28,23 +28,23 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Header"/> to <see cref="Models.AttractMode.MetadataFile"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Header"/> to <see cref="MetadataFile"/>
|
||||
/// </summary>
|
||||
private static MetadataFile ConvertHeaderFromInternalModel(Models.Metadata.Header item)
|
||||
private static MetadataFile ConvertHeaderFromInternalModel(Serialization.Models.Metadata.Header item)
|
||||
{
|
||||
var metadataFile = new MetadataFile
|
||||
{
|
||||
Header = item.ReadStringArray(Models.Metadata.Header.HeaderKey),
|
||||
Header = item.ReadStringArray(Serialization.Models.Metadata.Header.HeaderKey),
|
||||
};
|
||||
return metadataFile;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Machine"/> to an array of <see cref="Models.AttractMode.Row"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Machine"/> to an array of <see cref="Row"/>
|
||||
/// </summary>
|
||||
private static Row[] ConvertMachineFromInternalModel(Models.Metadata.Machine item)
|
||||
private static Row[] ConvertMachineFromInternalModel(Serialization.Models.Metadata.Machine item)
|
||||
{
|
||||
var roms = item.Read<Models.Metadata.Rom[]>(Models.Metadata.Machine.RomKey);
|
||||
var roms = item.Read<Serialization.Models.Metadata.Rom[]>(Serialization.Models.Metadata.Machine.RomKey);
|
||||
if (roms == null || roms.Length == 0)
|
||||
return [];
|
||||
|
||||
@@ -52,34 +52,34 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.AttractMode.Row"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="Row"/>
|
||||
/// </summary>
|
||||
private static Row ConvertFromInternalModel(Models.Metadata.Rom item, Models.Metadata.Machine parent)
|
||||
private static Row ConvertFromInternalModel(Serialization.Models.Metadata.Rom item, Serialization.Models.Metadata.Machine parent)
|
||||
{
|
||||
var row = new Row
|
||||
{
|
||||
Name = parent.ReadString(Models.Metadata.Machine.NameKey),
|
||||
Title = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Emulator = parent.ReadString(Models.Metadata.Machine.EmulatorKey),
|
||||
CloneOf = parent.ReadString(Models.Metadata.Machine.CloneOfKey),
|
||||
Year = parent.ReadString(Models.Metadata.Machine.YearKey),
|
||||
Manufacturer = parent.ReadString(Models.Metadata.Machine.ManufacturerKey),
|
||||
Category = parent.ReadString(Models.Metadata.Machine.CategoryKey),
|
||||
Players = parent.ReadString(Models.Metadata.Machine.PlayersKey),
|
||||
Rotation = parent.ReadString(Models.Metadata.Machine.RotationKey),
|
||||
Control = parent.ReadString(Models.Metadata.Machine.ControlKey),
|
||||
Status = parent.ReadString(Models.Metadata.Machine.StatusKey),
|
||||
DisplayCount = parent.ReadString(Models.Metadata.Machine.DisplayCountKey),
|
||||
DisplayType = parent.ReadString(Models.Metadata.Machine.DisplayTypeKey),
|
||||
AltRomname = item.ReadString(Models.Metadata.Rom.AltRomnameKey),
|
||||
AltTitle = item.ReadString(Models.Metadata.Rom.AltTitleKey),
|
||||
Extra = parent.ReadString(Models.Metadata.Machine.ExtraKey),
|
||||
Buttons = parent.ReadString(Models.Metadata.Machine.ButtonsKey),
|
||||
Favorite = parent.ReadString(Models.Metadata.Machine.FavoriteKey),
|
||||
Tags = parent.ReadString(Models.Metadata.Machine.TagsKey),
|
||||
PlayedCount = parent.ReadString(Models.Metadata.Machine.PlayedCountKey),
|
||||
PlayedTime = parent.ReadString(Models.Metadata.Machine.PlayedTimeKey),
|
||||
FileIsAvailable = item.ReadString(Models.Metadata.Rom.FileIsAvailableKey),
|
||||
Name = parent.ReadString(Serialization.Models.Metadata.Machine.NameKey),
|
||||
Title = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
Emulator = parent.ReadString(Serialization.Models.Metadata.Machine.EmulatorKey),
|
||||
CloneOf = parent.ReadString(Serialization.Models.Metadata.Machine.CloneOfKey),
|
||||
Year = parent.ReadString(Serialization.Models.Metadata.Machine.YearKey),
|
||||
Manufacturer = parent.ReadString(Serialization.Models.Metadata.Machine.ManufacturerKey),
|
||||
Category = parent.ReadString(Serialization.Models.Metadata.Machine.CategoryKey),
|
||||
Players = parent.ReadString(Serialization.Models.Metadata.Machine.PlayersKey),
|
||||
Rotation = parent.ReadString(Serialization.Models.Metadata.Machine.RotationKey),
|
||||
Control = parent.ReadString(Serialization.Models.Metadata.Machine.ControlKey),
|
||||
Status = parent.ReadString(Serialization.Models.Metadata.Machine.StatusKey),
|
||||
DisplayCount = parent.ReadString(Serialization.Models.Metadata.Machine.DisplayCountKey),
|
||||
DisplayType = parent.ReadString(Serialization.Models.Metadata.Machine.DisplayTypeKey),
|
||||
AltRomname = item.ReadString(Serialization.Models.Metadata.Rom.AltRomnameKey),
|
||||
AltTitle = item.ReadString(Serialization.Models.Metadata.Rom.AltTitleKey),
|
||||
Extra = parent.ReadString(Serialization.Models.Metadata.Machine.ExtraKey),
|
||||
Buttons = parent.ReadString(Serialization.Models.Metadata.Machine.ButtonsKey),
|
||||
Favorite = parent.ReadString(Serialization.Models.Metadata.Machine.FavoriteKey),
|
||||
Tags = parent.ReadString(Serialization.Models.Metadata.Machine.TagsKey),
|
||||
PlayedCount = parent.ReadString(Serialization.Models.Metadata.Machine.PlayedCountKey),
|
||||
PlayedTime = parent.ReadString(Serialization.Models.Metadata.Machine.PlayedTimeKey),
|
||||
FileIsAvailable = item.ReadString(Serialization.Models.Metadata.Rom.FileIsAvailableKey),
|
||||
};
|
||||
return row;
|
||||
}
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
using System;
|
||||
using SabreTools.Models.AttractMode;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.AttractMode;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class AttractMode : IModelSerializer<MetadataFile, Models.Metadata.MetadataFile>
|
||||
public partial class AttractMode : IModelSerializer<MetadataFile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Metadata.MetadataFile? Serialize(MetadataFile? obj)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile
|
||||
{
|
||||
[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(obj),
|
||||
[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(obj),
|
||||
};
|
||||
|
||||
if (obj?.Row != null && obj.Row.Length > 0)
|
||||
{
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey]
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey]
|
||||
= Array.ConvertAll(obj.Row, ConvertMachineToInternalModel);
|
||||
}
|
||||
|
||||
@@ -27,62 +27,62 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.AttractMode.MetadataFile"/> to <see cref="Models.Metadata.Header"/>
|
||||
/// Convert from <see cref="MetadataFile"/> to <see cref="Serialization.Models.Metadata.Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel(MetadataFile item)
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel(MetadataFile item)
|
||||
{
|
||||
var header = new Models.Metadata.Header
|
||||
var header = new Serialization.Models.Metadata.Header
|
||||
{
|
||||
[Models.Metadata.Header.HeaderKey] = item.Header,
|
||||
[Serialization.Models.Metadata.Header.HeaderKey] = item.Header,
|
||||
};
|
||||
return header;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.AttractMode.Row"/> to <see cref="Models.Metadata.Machine"/>
|
||||
/// Convert from <see cref="Row"/> to <see cref="Serialization.Models.Metadata.Machine"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Machine? ConvertMachineToInternalModel(Row? item)
|
||||
private static Serialization.Models.Metadata.Machine? ConvertMachineToInternalModel(Row? item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var machine = new Models.Metadata.Machine
|
||||
var machine = new Serialization.Models.Metadata.Machine
|
||||
{
|
||||
[Models.Metadata.Machine.NameKey] = item.Name,
|
||||
[Models.Metadata.Machine.EmulatorKey] = item.Emulator,
|
||||
[Models.Metadata.Machine.CloneOfKey] = item.CloneOf,
|
||||
[Models.Metadata.Machine.YearKey] = item.Year,
|
||||
[Models.Metadata.Machine.ManufacturerKey] = item.Manufacturer,
|
||||
[Models.Metadata.Machine.CategoryKey] = item.Category,
|
||||
[Models.Metadata.Machine.PlayersKey] = item.Players,
|
||||
[Models.Metadata.Machine.RotationKey] = item.Rotation,
|
||||
[Models.Metadata.Machine.ControlKey] = item.Control,
|
||||
[Models.Metadata.Machine.StatusKey] = item.Status,
|
||||
[Models.Metadata.Machine.DisplayCountKey] = item.DisplayCount,
|
||||
[Models.Metadata.Machine.DisplayTypeKey] = item.DisplayType,
|
||||
[Models.Metadata.Machine.ExtraKey] = item.Extra,
|
||||
[Models.Metadata.Machine.ButtonsKey] = item.Buttons,
|
||||
[Models.Metadata.Machine.FavoriteKey] = item.Favorite,
|
||||
[Models.Metadata.Machine.TagsKey] = item.Tags,
|
||||
[Models.Metadata.Machine.PlayedCountKey] = item.PlayedCount,
|
||||
[Models.Metadata.Machine.PlayedTimeKey] = item.PlayedTime,
|
||||
[Models.Metadata.Machine.PlayedTimeKey] = item.PlayedTime,
|
||||
[Models.Metadata.Machine.RomKey] = new Models.Metadata.Rom[] { ConvertToInternalModel(item) },
|
||||
[Serialization.Models.Metadata.Machine.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Machine.EmulatorKey] = item.Emulator,
|
||||
[Serialization.Models.Metadata.Machine.CloneOfKey] = item.CloneOf,
|
||||
[Serialization.Models.Metadata.Machine.YearKey] = item.Year,
|
||||
[Serialization.Models.Metadata.Machine.ManufacturerKey] = item.Manufacturer,
|
||||
[Serialization.Models.Metadata.Machine.CategoryKey] = item.Category,
|
||||
[Serialization.Models.Metadata.Machine.PlayersKey] = item.Players,
|
||||
[Serialization.Models.Metadata.Machine.RotationKey] = item.Rotation,
|
||||
[Serialization.Models.Metadata.Machine.ControlKey] = item.Control,
|
||||
[Serialization.Models.Metadata.Machine.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.Machine.DisplayCountKey] = item.DisplayCount,
|
||||
[Serialization.Models.Metadata.Machine.DisplayTypeKey] = item.DisplayType,
|
||||
[Serialization.Models.Metadata.Machine.ExtraKey] = item.Extra,
|
||||
[Serialization.Models.Metadata.Machine.ButtonsKey] = item.Buttons,
|
||||
[Serialization.Models.Metadata.Machine.FavoriteKey] = item.Favorite,
|
||||
[Serialization.Models.Metadata.Machine.TagsKey] = item.Tags,
|
||||
[Serialization.Models.Metadata.Machine.PlayedCountKey] = item.PlayedCount,
|
||||
[Serialization.Models.Metadata.Machine.PlayedTimeKey] = item.PlayedTime,
|
||||
[Serialization.Models.Metadata.Machine.PlayedTimeKey] = item.PlayedTime,
|
||||
[Serialization.Models.Metadata.Machine.RomKey] = new Serialization.Models.Metadata.Rom[] { ConvertToInternalModel(item) },
|
||||
};
|
||||
return machine;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.AttractMode.Row"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="Row"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(Row item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(Row item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.NameKey] = item.Title,
|
||||
[Models.Metadata.Rom.AltRomnameKey] = item.AltRomname,
|
||||
[Models.Metadata.Rom.AltTitleKey] = item.AltTitle,
|
||||
[Models.Metadata.Rom.FileIsAvailableKey] = item.FileIsAvailable,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.Title,
|
||||
[Serialization.Models.Metadata.Rom.AltRomnameKey] = item.AltRomname,
|
||||
[Serialization.Models.Metadata.Rom.AltTitleKey] = item.AltTitle,
|
||||
[Serialization.Models.Metadata.Rom.FileIsAvailableKey] = item.FileIsAvailable,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
@@ -1,27 +1,27 @@
|
||||
using System;
|
||||
using SabreTools.Models.ClrMamePro;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.ClrMamePro;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class ClrMamePro : IModelSerializer<MetadataFile, Models.Metadata.MetadataFile>
|
||||
public partial class ClrMamePro : IModelSerializer<MetadataFile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public MetadataFile? Deserialize(Models.Metadata.MetadataFile? obj) => Deserialize(obj, true);
|
||||
public MetadataFile? Deserialize(Serialization.Models.Metadata.MetadataFile? obj) => Deserialize(obj, true);
|
||||
|
||||
/// <inheritdoc cref="Deserialize(Models.Metadata.MetadataFile)"/>
|
||||
public MetadataFile? Deserialize(Models.Metadata.MetadataFile? obj, bool game)
|
||||
/// <inheritdoc cref="Deserialize(Serialization.Models.Metadata.MetadataFile)"/>
|
||||
public MetadataFile? Deserialize(Serialization.Models.Metadata.MetadataFile? obj, bool game)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new MetadataFile();
|
||||
|
||||
var header = obj.Read<Models.Metadata.Header>(Models.Metadata.MetadataFile.HeaderKey);
|
||||
var header = obj.Read<Serialization.Models.Metadata.Header>(Serialization.Models.Metadata.MetadataFile.HeaderKey);
|
||||
if (header != null)
|
||||
metadataFile.ClrMamePro = ConvertHeaderFromInternalModel(header);
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
if (machines != null && machines.Length > 0)
|
||||
{
|
||||
metadataFile.Game
|
||||
@@ -32,96 +32,96 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Header"/> to <see cref="Models.ClrMamePro.ClrMamePro"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Header"/> to <see cref="Models.ClrMamePro.ClrMamePro"/>
|
||||
/// </summary>
|
||||
private static Models.ClrMamePro.ClrMamePro ConvertHeaderFromInternalModel(Models.Metadata.Header item)
|
||||
private static SabreTools.Serialization.Models.ClrMamePro.ClrMamePro ConvertHeaderFromInternalModel(Serialization.Models.Metadata.Header item)
|
||||
{
|
||||
var clrMamePro = new Models.ClrMamePro.ClrMamePro
|
||||
var clrMamePro = new SabreTools.Serialization.Models.ClrMamePro.ClrMamePro
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Header.NameKey),
|
||||
Description = item.ReadString(Models.Metadata.Header.DescriptionKey),
|
||||
RootDir = item.ReadString(Models.Metadata.Header.RootDirKey),
|
||||
Category = item.ReadString(Models.Metadata.Header.CategoryKey),
|
||||
Version = item.ReadString(Models.Metadata.Header.VersionKey),
|
||||
Date = item.ReadString(Models.Metadata.Header.DateKey),
|
||||
Author = item.ReadString(Models.Metadata.Header.AuthorKey),
|
||||
Homepage = item.ReadString(Models.Metadata.Header.HomepageKey),
|
||||
Url = item.ReadString(Models.Metadata.Header.UrlKey),
|
||||
Comment = item.ReadString(Models.Metadata.Header.CommentKey),
|
||||
Header = item.ReadString(Models.Metadata.Header.HeaderKey),
|
||||
Type = item.ReadString(Models.Metadata.Header.TypeKey),
|
||||
ForceMerging = item.ReadString(Models.Metadata.Header.ForceMergingKey),
|
||||
ForceZipping = item.ReadString(Models.Metadata.Header.ForceZippingKey),
|
||||
ForcePacking = item.ReadString(Models.Metadata.Header.ForcePackingKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Header.NameKey),
|
||||
Description = item.ReadString(Serialization.Models.Metadata.Header.DescriptionKey),
|
||||
RootDir = item.ReadString(Serialization.Models.Metadata.Header.RootDirKey),
|
||||
Category = item.ReadString(Serialization.Models.Metadata.Header.CategoryKey),
|
||||
Version = item.ReadString(Serialization.Models.Metadata.Header.VersionKey),
|
||||
Date = item.ReadString(Serialization.Models.Metadata.Header.DateKey),
|
||||
Author = item.ReadString(Serialization.Models.Metadata.Header.AuthorKey),
|
||||
Homepage = item.ReadString(Serialization.Models.Metadata.Header.HomepageKey),
|
||||
Url = item.ReadString(Serialization.Models.Metadata.Header.UrlKey),
|
||||
Comment = item.ReadString(Serialization.Models.Metadata.Header.CommentKey),
|
||||
Header = item.ReadString(Serialization.Models.Metadata.Header.HeaderKey),
|
||||
Type = item.ReadString(Serialization.Models.Metadata.Header.TypeKey),
|
||||
ForceMerging = item.ReadString(Serialization.Models.Metadata.Header.ForceMergingKey),
|
||||
ForceZipping = item.ReadString(Serialization.Models.Metadata.Header.ForceZippingKey),
|
||||
ForcePacking = item.ReadString(Serialization.Models.Metadata.Header.ForcePackingKey),
|
||||
};
|
||||
return clrMamePro;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Archive"/> to <see cref="Models.ClrMamePro.Machine"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Archive"/> to <see cref="Machine"/>
|
||||
/// </summary>
|
||||
private static GameBase ConvertMachineFromInternalModel(Models.Metadata.Machine item, bool game)
|
||||
private static GameBase ConvertMachineFromInternalModel(Serialization.Models.Metadata.Machine item, bool game)
|
||||
{
|
||||
GameBase gameBase = game ? new Models.ClrMamePro.Game() : new Models.ClrMamePro.Machine();
|
||||
GameBase gameBase = game ? new Game() : new Machine();
|
||||
|
||||
gameBase.Name = item.ReadString(Models.Metadata.Machine.NameKey);
|
||||
gameBase.Description = item.ReadString(Models.Metadata.Machine.DescriptionKey);
|
||||
gameBase.Year = item.ReadString(Models.Metadata.Machine.YearKey);
|
||||
gameBase.Manufacturer = item.ReadString(Models.Metadata.Machine.ManufacturerKey);
|
||||
gameBase.Category = item.ReadString(Models.Metadata.Machine.CategoryKey);
|
||||
gameBase.CloneOf = item.ReadString(Models.Metadata.Machine.CloneOfKey);
|
||||
gameBase.RomOf = item.ReadString(Models.Metadata.Machine.RomOfKey);
|
||||
gameBase.SampleOf = item.ReadString(Models.Metadata.Machine.SampleOfKey);
|
||||
gameBase.Name = item.ReadString(Serialization.Models.Metadata.Machine.NameKey);
|
||||
gameBase.Description = item.ReadString(Serialization.Models.Metadata.Machine.DescriptionKey);
|
||||
gameBase.Year = item.ReadString(Serialization.Models.Metadata.Machine.YearKey);
|
||||
gameBase.Manufacturer = item.ReadString(Serialization.Models.Metadata.Machine.ManufacturerKey);
|
||||
gameBase.Category = item.ReadString(Serialization.Models.Metadata.Machine.CategoryKey);
|
||||
gameBase.CloneOf = item.ReadString(Serialization.Models.Metadata.Machine.CloneOfKey);
|
||||
gameBase.RomOf = item.ReadString(Serialization.Models.Metadata.Machine.RomOfKey);
|
||||
gameBase.SampleOf = item.ReadString(Serialization.Models.Metadata.Machine.SampleOfKey);
|
||||
|
||||
var releases = item.Read<Models.Metadata.Release[]>(Models.Metadata.Machine.ReleaseKey);
|
||||
var releases = item.Read<Serialization.Models.Metadata.Release[]>(Serialization.Models.Metadata.Machine.ReleaseKey);
|
||||
if (releases != null && releases.Length > 0)
|
||||
gameBase.Release = Array.ConvertAll(releases, ConvertFromInternalModel);
|
||||
|
||||
var biosSets = item.Read<Models.Metadata.BiosSet[]>(Models.Metadata.Machine.BiosSetKey);
|
||||
var biosSets = item.Read<Serialization.Models.Metadata.BiosSet[]>(Serialization.Models.Metadata.Machine.BiosSetKey);
|
||||
if (biosSets != null && biosSets.Length > 0)
|
||||
gameBase.BiosSet = Array.ConvertAll(biosSets, ConvertFromInternalModel);
|
||||
|
||||
var roms = item.Read<Models.Metadata.Rom[]>(Models.Metadata.Machine.RomKey);
|
||||
var roms = item.Read<Serialization.Models.Metadata.Rom[]>(Serialization.Models.Metadata.Machine.RomKey);
|
||||
if (roms != null && roms.Length > 0)
|
||||
gameBase.Rom = Array.ConvertAll(roms, ConvertFromInternalModel);
|
||||
|
||||
var disks = item.Read<Models.Metadata.Disk[]>(Models.Metadata.Machine.DiskKey);
|
||||
var disks = item.Read<Serialization.Models.Metadata.Disk[]>(Serialization.Models.Metadata.Machine.DiskKey);
|
||||
if (disks != null && disks.Length > 0)
|
||||
gameBase.Disk = Array.ConvertAll(disks, ConvertFromInternalModel);
|
||||
|
||||
var medias = item.Read<Models.Metadata.Media[]>(Models.Metadata.Machine.MediaKey);
|
||||
var medias = item.Read<Serialization.Models.Metadata.Media[]>(Serialization.Models.Metadata.Machine.MediaKey);
|
||||
if (medias != null && medias.Length > 0)
|
||||
gameBase.Media = Array.ConvertAll(medias, ConvertFromInternalModel);
|
||||
|
||||
var samples = item.Read<Models.Metadata.Sample[]>(Models.Metadata.Machine.SampleKey);
|
||||
var samples = item.Read<Serialization.Models.Metadata.Sample[]>(Serialization.Models.Metadata.Machine.SampleKey);
|
||||
if (samples != null && samples.Length > 0)
|
||||
gameBase.Sample = Array.ConvertAll(samples, ConvertFromInternalModel);
|
||||
|
||||
var archives = item.Read<Models.Metadata.Archive[]>(Models.Metadata.Machine.ArchiveKey);
|
||||
var archives = item.Read<Serialization.Models.Metadata.Archive[]>(Serialization.Models.Metadata.Machine.ArchiveKey);
|
||||
if (archives != null && archives.Length > 0)
|
||||
gameBase.Archive = Array.ConvertAll(archives, ConvertFromInternalModel);
|
||||
|
||||
var chips = item.Read<Models.Metadata.Chip[]>(Models.Metadata.Machine.ChipKey);
|
||||
var chips = item.Read<Serialization.Models.Metadata.Chip[]>(Serialization.Models.Metadata.Machine.ChipKey);
|
||||
if (chips != null && chips.Length > 0)
|
||||
gameBase.Chip = Array.ConvertAll(chips, ConvertFromInternalModel);
|
||||
|
||||
var videos = item.Read<Models.Metadata.Video[]>(Models.Metadata.Machine.VideoKey);
|
||||
var videos = item.Read<Serialization.Models.Metadata.Video[]>(Serialization.Models.Metadata.Machine.VideoKey);
|
||||
if (videos != null && videos.Length > 0)
|
||||
gameBase.Video = Array.ConvertAll(videos, ConvertFromInternalModel);
|
||||
|
||||
var sound = item.Read<Models.Metadata.Sound>(Models.Metadata.Machine.SoundKey);
|
||||
var sound = item.Read<Serialization.Models.Metadata.Sound>(Serialization.Models.Metadata.Machine.SoundKey);
|
||||
if (sound != null)
|
||||
gameBase.Sound = ConvertFromInternalModel(sound);
|
||||
|
||||
var input = item.Read<Models.Metadata.Input>(Models.Metadata.Machine.InputKey);
|
||||
var input = item.Read<Serialization.Models.Metadata.Input>(Serialization.Models.Metadata.Machine.InputKey);
|
||||
if (input != null)
|
||||
gameBase.Input = ConvertFromInternalModel(input);
|
||||
|
||||
var dipSwitches = item.Read<Models.Metadata.DipSwitch[]>(Models.Metadata.Machine.DipSwitchKey);
|
||||
var dipSwitches = item.Read<Serialization.Models.Metadata.DipSwitch[]>(Serialization.Models.Metadata.Machine.DipSwitchKey);
|
||||
if (dipSwitches != null && dipSwitches.Length > 0)
|
||||
gameBase.DipSwitch = Array.ConvertAll(dipSwitches, ConvertFromInternalModel);
|
||||
|
||||
var driver = item.Read<Models.Metadata.Driver>(Models.Metadata.Machine.DriverKey);
|
||||
var driver = item.Read<Serialization.Models.Metadata.Driver>(Serialization.Models.Metadata.Machine.DriverKey);
|
||||
if (driver != null)
|
||||
gameBase.Driver = ConvertFromInternalModel(driver);
|
||||
|
||||
@@ -129,216 +129,216 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Archive"/> to <see cref="Models.ClrMamePro.Archive"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Archive"/> to <see cref="Archive"/>
|
||||
/// </summary>
|
||||
private static Archive ConvertFromInternalModel(Models.Metadata.Archive item)
|
||||
private static Archive ConvertFromInternalModel(Serialization.Models.Metadata.Archive item)
|
||||
{
|
||||
var archive = new Archive
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Archive.NameKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Archive.NameKey),
|
||||
};
|
||||
return archive;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.BiosSet"/> to <see cref="Models.ClrMamePro.BiosSet"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.BiosSet"/> to <see cref="BiosSet"/>
|
||||
/// </summary>
|
||||
private static BiosSet ConvertFromInternalModel(Models.Metadata.BiosSet item)
|
||||
private static BiosSet ConvertFromInternalModel(Serialization.Models.Metadata.BiosSet item)
|
||||
{
|
||||
var biosset = new BiosSet
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.BiosSet.NameKey),
|
||||
Description = item.ReadString(Models.Metadata.BiosSet.DescriptionKey),
|
||||
Default = item.ReadString(Models.Metadata.BiosSet.DefaultKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.BiosSet.NameKey),
|
||||
Description = item.ReadString(Serialization.Models.Metadata.BiosSet.DescriptionKey),
|
||||
Default = item.ReadString(Serialization.Models.Metadata.BiosSet.DefaultKey),
|
||||
};
|
||||
return biosset;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Chip"/> to <see cref="Models.ClrMamePro.Chip"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Chip"/> to <see cref="Chip"/>
|
||||
/// </summary>
|
||||
private static Chip ConvertFromInternalModel(Models.Metadata.Chip item)
|
||||
private static Chip ConvertFromInternalModel(Serialization.Models.Metadata.Chip item)
|
||||
{
|
||||
var chip = new Chip
|
||||
{
|
||||
Type = item.ReadString(Models.Metadata.Chip.ChipTypeKey),
|
||||
Name = item.ReadString(Models.Metadata.Chip.NameKey),
|
||||
Flags = item.ReadString(Models.Metadata.Chip.FlagsKey),
|
||||
Clock = item.ReadString(Models.Metadata.Chip.ClockKey),
|
||||
Type = item.ReadString(Serialization.Models.Metadata.Chip.ChipTypeKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Chip.NameKey),
|
||||
Flags = item.ReadString(Serialization.Models.Metadata.Chip.FlagsKey),
|
||||
Clock = item.ReadString(Serialization.Models.Metadata.Chip.ClockKey),
|
||||
};
|
||||
return chip;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.DipSwitch"/> to <see cref="Models.ClrMamePro.DipSwitch"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.DipSwitch"/> to <see cref="DipSwitch"/>
|
||||
/// </summary>
|
||||
private static DipSwitch ConvertFromInternalModel(Models.Metadata.DipSwitch item)
|
||||
private static DipSwitch ConvertFromInternalModel(Serialization.Models.Metadata.DipSwitch item)
|
||||
{
|
||||
var dipswitch = new DipSwitch
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.DipSwitch.NameKey),
|
||||
Entry = item[Models.Metadata.DipSwitch.EntryKey] as string[],
|
||||
Default = item.ReadString(Models.Metadata.DipSwitch.DefaultKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.DipSwitch.NameKey),
|
||||
Entry = item[Serialization.Models.Metadata.DipSwitch.EntryKey] as string[],
|
||||
Default = item.ReadString(Serialization.Models.Metadata.DipSwitch.DefaultKey),
|
||||
};
|
||||
return dipswitch;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Disk"/> to <see cref="Models.ClrMamePro.Disk"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Disk"/> to <see cref="Disk"/>
|
||||
/// </summary>
|
||||
private static Disk ConvertFromInternalModel(Models.Metadata.Disk item)
|
||||
private static Disk ConvertFromInternalModel(Serialization.Models.Metadata.Disk item)
|
||||
{
|
||||
var disk = new Disk
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Disk.NameKey),
|
||||
MD5 = item.ReadString(Models.Metadata.Disk.MD5Key),
|
||||
SHA1 = item.ReadString(Models.Metadata.Disk.SHA1Key),
|
||||
Merge = item.ReadString(Models.Metadata.Disk.MergeKey),
|
||||
Status = item.ReadString(Models.Metadata.Disk.StatusKey),
|
||||
Flags = item.ReadString(Models.Metadata.Disk.FlagsKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Disk.NameKey),
|
||||
MD5 = item.ReadString(Serialization.Models.Metadata.Disk.MD5Key),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Disk.SHA1Key),
|
||||
Merge = item.ReadString(Serialization.Models.Metadata.Disk.MergeKey),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.Disk.StatusKey),
|
||||
Flags = item.ReadString(Serialization.Models.Metadata.Disk.FlagsKey),
|
||||
};
|
||||
return disk;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Driver"/> to <see cref="Models.ClrMamePro.Driver"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Driver"/> to <see cref="Driver"/>
|
||||
/// </summary>
|
||||
private static Driver ConvertFromInternalModel(Models.Metadata.Driver item)
|
||||
private static Driver ConvertFromInternalModel(Serialization.Models.Metadata.Driver item)
|
||||
{
|
||||
var driver = new Driver
|
||||
{
|
||||
Status = item.ReadString(Models.Metadata.Driver.StatusKey),
|
||||
Color = item.ReadString(Models.Metadata.Driver.ColorKey),
|
||||
Sound = item.ReadString(Models.Metadata.Driver.SoundKey),
|
||||
PaletteSize = item.ReadString(Models.Metadata.Driver.PaletteSizeKey),
|
||||
Blit = item.ReadString(Models.Metadata.Driver.BlitKey),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.Driver.StatusKey),
|
||||
Color = item.ReadString(Serialization.Models.Metadata.Driver.ColorKey),
|
||||
Sound = item.ReadString(Serialization.Models.Metadata.Driver.SoundKey),
|
||||
PaletteSize = item.ReadString(Serialization.Models.Metadata.Driver.PaletteSizeKey),
|
||||
Blit = item.ReadString(Serialization.Models.Metadata.Driver.BlitKey),
|
||||
};
|
||||
return driver;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Input"/> to <see cref="Models.ClrMamePro.Input"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Input"/> to <see cref="Input"/>
|
||||
/// </summary>
|
||||
private static Input ConvertFromInternalModel(Models.Metadata.Input item)
|
||||
private static Input ConvertFromInternalModel(Serialization.Models.Metadata.Input item)
|
||||
{
|
||||
var input = new Input
|
||||
{
|
||||
Players = item.ReadString(Models.Metadata.Input.PlayersKey),
|
||||
Control = item.ReadString(Models.Metadata.Input.ControlKey),
|
||||
Buttons = item.ReadString(Models.Metadata.Input.ButtonsKey),
|
||||
Coins = item.ReadString(Models.Metadata.Input.CoinsKey),
|
||||
Tilt = item.ReadString(Models.Metadata.Input.TiltKey),
|
||||
Service = item.ReadString(Models.Metadata.Input.ServiceKey),
|
||||
Players = item.ReadString(Serialization.Models.Metadata.Input.PlayersKey),
|
||||
Control = item.ReadString(Serialization.Models.Metadata.Input.ControlKey),
|
||||
Buttons = item.ReadString(Serialization.Models.Metadata.Input.ButtonsKey),
|
||||
Coins = item.ReadString(Serialization.Models.Metadata.Input.CoinsKey),
|
||||
Tilt = item.ReadString(Serialization.Models.Metadata.Input.TiltKey),
|
||||
Service = item.ReadString(Serialization.Models.Metadata.Input.ServiceKey),
|
||||
};
|
||||
return input;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Media"/> to <see cref="Models.ClrMamePro.Media"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Media"/> to <see cref="Media"/>
|
||||
/// </summary>
|
||||
private static Media ConvertFromInternalModel(Models.Metadata.Media item)
|
||||
private static Media ConvertFromInternalModel(Serialization.Models.Metadata.Media item)
|
||||
{
|
||||
var media = new Media
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Media.NameKey),
|
||||
MD5 = item.ReadString(Models.Metadata.Media.MD5Key),
|
||||
SHA1 = item.ReadString(Models.Metadata.Media.SHA1Key),
|
||||
SHA256 = item.ReadString(Models.Metadata.Media.SHA256Key),
|
||||
SpamSum = item.ReadString(Models.Metadata.Media.SpamSumKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Media.NameKey),
|
||||
MD5 = item.ReadString(Serialization.Models.Metadata.Media.MD5Key),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Media.SHA1Key),
|
||||
SHA256 = item.ReadString(Serialization.Models.Metadata.Media.SHA256Key),
|
||||
SpamSum = item.ReadString(Serialization.Models.Metadata.Media.SpamSumKey),
|
||||
};
|
||||
return media;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Release"/> to <see cref="Models.ClrMamePro.Release"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Release"/> to <see cref="Release"/>
|
||||
/// </summary>
|
||||
private static Release ConvertFromInternalModel(Models.Metadata.Release item)
|
||||
private static Release ConvertFromInternalModel(Serialization.Models.Metadata.Release item)
|
||||
{
|
||||
var release = new Release
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Release.NameKey),
|
||||
Region = item.ReadString(Models.Metadata.Release.RegionKey),
|
||||
Language = item.ReadString(Models.Metadata.Release.LanguageKey),
|
||||
Date = item.ReadString(Models.Metadata.Release.DateKey),
|
||||
Default = item.ReadString(Models.Metadata.Release.DefaultKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Release.NameKey),
|
||||
Region = item.ReadString(Serialization.Models.Metadata.Release.RegionKey),
|
||||
Language = item.ReadString(Serialization.Models.Metadata.Release.LanguageKey),
|
||||
Date = item.ReadString(Serialization.Models.Metadata.Release.DateKey),
|
||||
Default = item.ReadString(Serialization.Models.Metadata.Release.DefaultKey),
|
||||
};
|
||||
return release;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.ClrMamePro.Rom"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="Rom"/>
|
||||
/// </summary>
|
||||
private static Rom ConvertFromInternalModel(Models.Metadata.Rom item)
|
||||
private static Rom ConvertFromInternalModel(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var rom = new Rom
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Size = item.ReadString(Models.Metadata.Rom.SizeKey),
|
||||
CRC = item.ReadString(Models.Metadata.Rom.CRCKey),
|
||||
MD2 = item.ReadString(Models.Metadata.Rom.MD2Key),
|
||||
MD4 = item.ReadString(Models.Metadata.Rom.MD4Key),
|
||||
MD5 = item.ReadString(Models.Metadata.Rom.MD5Key),
|
||||
RIPEMD128 = item.ReadString(Models.Metadata.Rom.RIPEMD128Key),
|
||||
RIPEMD160 = item.ReadString(Models.Metadata.Rom.RIPEMD160Key),
|
||||
SHA1 = item.ReadString(Models.Metadata.Rom.SHA1Key),
|
||||
SHA256 = item.ReadString(Models.Metadata.Rom.SHA256Key),
|
||||
SHA384 = item.ReadString(Models.Metadata.Rom.SHA384Key),
|
||||
SHA512 = item.ReadString(Models.Metadata.Rom.SHA512Key),
|
||||
SpamSum = item.ReadString(Models.Metadata.Rom.SpamSumKey),
|
||||
xxHash364 = item.ReadString(Models.Metadata.Rom.xxHash364Key),
|
||||
xxHash3128 = item.ReadString(Models.Metadata.Rom.xxHash3128Key),
|
||||
Merge = item.ReadString(Models.Metadata.Rom.MergeKey),
|
||||
Status = item.ReadString(Models.Metadata.Rom.StatusKey),
|
||||
Region = item.ReadString(Models.Metadata.Rom.RegionKey),
|
||||
Flags = item.ReadString(Models.Metadata.Rom.FlagsKey),
|
||||
Offs = item.ReadString(Models.Metadata.Rom.OffsetKey),
|
||||
Serial = item.ReadString(Models.Metadata.Rom.SerialKey),
|
||||
Header = item.ReadString(Models.Metadata.Rom.HeaderKey),
|
||||
Date = item.ReadString(Models.Metadata.Rom.DateKey),
|
||||
Inverted = item.ReadString(Models.Metadata.Rom.InvertedKey),
|
||||
MIA = item.ReadString(Models.Metadata.Rom.MIAKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
Size = item.ReadString(Serialization.Models.Metadata.Rom.SizeKey),
|
||||
CRC = item.ReadString(Serialization.Models.Metadata.Rom.CRCKey),
|
||||
MD2 = item.ReadString(Serialization.Models.Metadata.Rom.MD2Key),
|
||||
MD4 = item.ReadString(Serialization.Models.Metadata.Rom.MD4Key),
|
||||
MD5 = item.ReadString(Serialization.Models.Metadata.Rom.MD5Key),
|
||||
RIPEMD128 = item.ReadString(Serialization.Models.Metadata.Rom.RIPEMD128Key),
|
||||
RIPEMD160 = item.ReadString(Serialization.Models.Metadata.Rom.RIPEMD160Key),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Rom.SHA1Key),
|
||||
SHA256 = item.ReadString(Serialization.Models.Metadata.Rom.SHA256Key),
|
||||
SHA384 = item.ReadString(Serialization.Models.Metadata.Rom.SHA384Key),
|
||||
SHA512 = item.ReadString(Serialization.Models.Metadata.Rom.SHA512Key),
|
||||
SpamSum = item.ReadString(Serialization.Models.Metadata.Rom.SpamSumKey),
|
||||
xxHash364 = item.ReadString(Serialization.Models.Metadata.Rom.xxHash364Key),
|
||||
xxHash3128 = item.ReadString(Serialization.Models.Metadata.Rom.xxHash3128Key),
|
||||
Merge = item.ReadString(Serialization.Models.Metadata.Rom.MergeKey),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.Rom.StatusKey),
|
||||
Region = item.ReadString(Serialization.Models.Metadata.Rom.RegionKey),
|
||||
Flags = item.ReadString(Serialization.Models.Metadata.Rom.FlagsKey),
|
||||
Offs = item.ReadString(Serialization.Models.Metadata.Rom.OffsetKey),
|
||||
Serial = item.ReadString(Serialization.Models.Metadata.Rom.SerialKey),
|
||||
Header = item.ReadString(Serialization.Models.Metadata.Rom.HeaderKey),
|
||||
Date = item.ReadString(Serialization.Models.Metadata.Rom.DateKey),
|
||||
Inverted = item.ReadString(Serialization.Models.Metadata.Rom.InvertedKey),
|
||||
MIA = item.ReadString(Serialization.Models.Metadata.Rom.MIAKey),
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Sample"/> to <see cref="Models.ClrMamePro.Sample"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Sample"/> to <see cref="Sample"/>
|
||||
/// </summary>
|
||||
private static Sample ConvertFromInternalModel(Models.Metadata.Sample item)
|
||||
private static Sample ConvertFromInternalModel(Serialization.Models.Metadata.Sample item)
|
||||
{
|
||||
var sample = new Sample
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Sample.NameKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Sample.NameKey),
|
||||
};
|
||||
return sample;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Sound"/> to <see cref="Models.ClrMamePro.Sound"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Sound"/> to <see cref="Sound"/>
|
||||
/// </summary>
|
||||
private static Sound ConvertFromInternalModel(Models.Metadata.Sound item)
|
||||
private static Sound ConvertFromInternalModel(Serialization.Models.Metadata.Sound item)
|
||||
{
|
||||
var sound = new Sound
|
||||
{
|
||||
Channels = item.ReadString(Models.Metadata.Sound.ChannelsKey),
|
||||
Channels = item.ReadString(Serialization.Models.Metadata.Sound.ChannelsKey),
|
||||
};
|
||||
return sound;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Video"/> to <see cref="Models.ClrMamePro.Video"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Video"/> to <see cref="Video"/>
|
||||
/// </summary>
|
||||
private static Video ConvertFromInternalModel(Models.Metadata.Video item)
|
||||
private static Video ConvertFromInternalModel(Serialization.Models.Metadata.Video item)
|
||||
{
|
||||
var video = new Video
|
||||
{
|
||||
Screen = item.ReadString(Models.Metadata.Video.ScreenKey),
|
||||
Orientation = item.ReadString(Models.Metadata.Video.OrientationKey),
|
||||
X = item.ReadString(Models.Metadata.Video.WidthKey),
|
||||
Y = item.ReadString(Models.Metadata.Video.HeightKey),
|
||||
AspectX = item.ReadString(Models.Metadata.Video.AspectXKey),
|
||||
AspectY = item.ReadString(Models.Metadata.Video.AspectYKey),
|
||||
Freq = item.ReadString(Models.Metadata.Video.RefreshKey),
|
||||
Screen = item.ReadString(Serialization.Models.Metadata.Video.ScreenKey),
|
||||
Orientation = item.ReadString(Serialization.Models.Metadata.Video.OrientationKey),
|
||||
X = item.ReadString(Serialization.Models.Metadata.Video.WidthKey),
|
||||
Y = item.ReadString(Serialization.Models.Metadata.Video.HeightKey),
|
||||
AspectX = item.ReadString(Serialization.Models.Metadata.Video.AspectXKey),
|
||||
AspectY = item.ReadString(Serialization.Models.Metadata.Video.AspectYKey),
|
||||
Freq = item.ReadString(Serialization.Models.Metadata.Video.RefreshKey),
|
||||
};
|
||||
return video;
|
||||
}
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
using System;
|
||||
using SabreTools.Models.ClrMamePro;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.ClrMamePro;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class ClrMamePro : IModelSerializer<MetadataFile, Models.Metadata.MetadataFile>
|
||||
public partial class ClrMamePro : IModelSerializer<MetadataFile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Metadata.MetadataFile? Serialize(MetadataFile? obj)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile();
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile();
|
||||
|
||||
if (obj?.ClrMamePro != null)
|
||||
metadataFile[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(obj.ClrMamePro);
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(obj.ClrMamePro);
|
||||
|
||||
if (obj?.Game != null && obj.Game.Length > 0)
|
||||
{
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey]
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey]
|
||||
= Array.ConvertAll(obj.Game, ConvertMachineToInternalModel);
|
||||
}
|
||||
|
||||
@@ -27,334 +27,334 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ClrMamePro.ClrMamePro"/> to <see cref="Models.Metadata.Header"/>
|
||||
/// Convert from <see cref="Models.ClrMamePro.ClrMamePro"/> to <see cref="Serialization.Models.Metadata.Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel(Models.ClrMamePro.ClrMamePro item)
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel(SabreTools.Serialization.Models.ClrMamePro.ClrMamePro item)
|
||||
{
|
||||
var header = new Models.Metadata.Header
|
||||
var header = new Serialization.Models.Metadata.Header
|
||||
{
|
||||
[Models.Metadata.Header.NameKey] = item.Name,
|
||||
[Models.Metadata.Header.DescriptionKey] = item.Description,
|
||||
[Models.Metadata.Header.RootDirKey] = item.RootDir,
|
||||
[Models.Metadata.Header.CategoryKey] = item.Category,
|
||||
[Models.Metadata.Header.VersionKey] = item.Version,
|
||||
[Models.Metadata.Header.DateKey] = item.Date,
|
||||
[Models.Metadata.Header.AuthorKey] = item.Author,
|
||||
[Models.Metadata.Header.HomepageKey] = item.Homepage,
|
||||
[Models.Metadata.Header.UrlKey] = item.Url,
|
||||
[Models.Metadata.Header.CommentKey] = item.Comment,
|
||||
[Models.Metadata.Header.HeaderKey] = item.Header,
|
||||
[Models.Metadata.Header.TypeKey] = item.Type,
|
||||
[Models.Metadata.Header.ForceMergingKey] = item.ForceMerging,
|
||||
[Models.Metadata.Header.ForceZippingKey] = item.ForceZipping,
|
||||
[Models.Metadata.Header.ForcePackingKey] = item.ForcePacking,
|
||||
[Serialization.Models.Metadata.Header.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Header.DescriptionKey] = item.Description,
|
||||
[Serialization.Models.Metadata.Header.RootDirKey] = item.RootDir,
|
||||
[Serialization.Models.Metadata.Header.CategoryKey] = item.Category,
|
||||
[Serialization.Models.Metadata.Header.VersionKey] = item.Version,
|
||||
[Serialization.Models.Metadata.Header.DateKey] = item.Date,
|
||||
[Serialization.Models.Metadata.Header.AuthorKey] = item.Author,
|
||||
[Serialization.Models.Metadata.Header.HomepageKey] = item.Homepage,
|
||||
[Serialization.Models.Metadata.Header.UrlKey] = item.Url,
|
||||
[Serialization.Models.Metadata.Header.CommentKey] = item.Comment,
|
||||
[Serialization.Models.Metadata.Header.HeaderKey] = item.Header,
|
||||
[Serialization.Models.Metadata.Header.TypeKey] = item.Type,
|
||||
[Serialization.Models.Metadata.Header.ForceMergingKey] = item.ForceMerging,
|
||||
[Serialization.Models.Metadata.Header.ForceZippingKey] = item.ForceZipping,
|
||||
[Serialization.Models.Metadata.Header.ForcePackingKey] = item.ForcePacking,
|
||||
};
|
||||
return header;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ClrMamePro.GameBase"/> to <see cref="Models.Metadata.Machine"/>
|
||||
/// Convert from <see cref="GameBase"/> to <see cref="Serialization.Models.Metadata.Machine"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Machine? ConvertMachineToInternalModel(GameBase? item)
|
||||
private static Serialization.Models.Metadata.Machine? ConvertMachineToInternalModel(GameBase? item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var machine = new Models.Metadata.Machine
|
||||
var machine = new Serialization.Models.Metadata.Machine
|
||||
{
|
||||
[Models.Metadata.Machine.NameKey] = item.Name,
|
||||
[Models.Metadata.Machine.DescriptionKey] = item.Description,
|
||||
[Models.Metadata.Machine.YearKey] = item.Year,
|
||||
[Models.Metadata.Machine.ManufacturerKey] = item.Manufacturer,
|
||||
[Models.Metadata.Machine.CategoryKey] = item.Category,
|
||||
[Models.Metadata.Machine.CloneOfKey] = item.CloneOf,
|
||||
[Models.Metadata.Machine.RomOfKey] = item.RomOf,
|
||||
[Models.Metadata.Machine.SampleOfKey] = item.SampleOf,
|
||||
[Serialization.Models.Metadata.Machine.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Machine.DescriptionKey] = item.Description,
|
||||
[Serialization.Models.Metadata.Machine.YearKey] = item.Year,
|
||||
[Serialization.Models.Metadata.Machine.ManufacturerKey] = item.Manufacturer,
|
||||
[Serialization.Models.Metadata.Machine.CategoryKey] = item.Category,
|
||||
[Serialization.Models.Metadata.Machine.CloneOfKey] = item.CloneOf,
|
||||
[Serialization.Models.Metadata.Machine.RomOfKey] = item.RomOf,
|
||||
[Serialization.Models.Metadata.Machine.SampleOfKey] = item.SampleOf,
|
||||
};
|
||||
|
||||
if (item.Release != null && item.Release.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.ReleaseKey]
|
||||
machine[Serialization.Models.Metadata.Machine.ReleaseKey]
|
||||
= Array.ConvertAll(item.Release, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.BiosSet != null && item.BiosSet.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.BiosSetKey]
|
||||
machine[Serialization.Models.Metadata.Machine.BiosSetKey]
|
||||
= Array.ConvertAll(item.BiosSet, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Rom != null && item.Rom.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.RomKey]
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey]
|
||||
= Array.ConvertAll(item.Rom, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Disk != null && item.Disk.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.DiskKey]
|
||||
machine[Serialization.Models.Metadata.Machine.DiskKey]
|
||||
= Array.ConvertAll(item.Disk, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Media != null && item.Media.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.MediaKey]
|
||||
machine[Serialization.Models.Metadata.Machine.MediaKey]
|
||||
= Array.ConvertAll(item.Media, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Sample != null && item.Sample.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.SampleKey]
|
||||
machine[Serialization.Models.Metadata.Machine.SampleKey]
|
||||
= Array.ConvertAll(item.Sample, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Archive != null && item.Archive.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.ArchiveKey]
|
||||
machine[Serialization.Models.Metadata.Machine.ArchiveKey]
|
||||
= Array.ConvertAll(item.Archive, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Chip != null && item.Chip.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.ChipKey]
|
||||
machine[Serialization.Models.Metadata.Machine.ChipKey]
|
||||
= Array.ConvertAll(item.Chip, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Video != null)
|
||||
{
|
||||
machine[Models.Metadata.Machine.VideoKey]
|
||||
machine[Serialization.Models.Metadata.Machine.VideoKey]
|
||||
= Array.ConvertAll(item.Video, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Sound != null)
|
||||
machine[Models.Metadata.Machine.SoundKey] = ConvertToInternalModel(item.Sound);
|
||||
machine[Serialization.Models.Metadata.Machine.SoundKey] = ConvertToInternalModel(item.Sound);
|
||||
|
||||
if (item.Input != null)
|
||||
machine[Models.Metadata.Machine.InputKey] = ConvertToInternalModel(item.Input);
|
||||
machine[Serialization.Models.Metadata.Machine.InputKey] = ConvertToInternalModel(item.Input);
|
||||
|
||||
if (item.DipSwitch != null && item.DipSwitch.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.DipSwitchKey]
|
||||
machine[Serialization.Models.Metadata.Machine.DipSwitchKey]
|
||||
= Array.ConvertAll(item.DipSwitch, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Driver != null)
|
||||
machine[Models.Metadata.Machine.DriverKey] = ConvertToInternalModel(item.Driver);
|
||||
machine[Serialization.Models.Metadata.Machine.DriverKey] = ConvertToInternalModel(item.Driver);
|
||||
|
||||
return machine;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ClrMamePro.Archive"/> to <see cref="Models.Metadata.Archive"/>
|
||||
/// Convert from <see cref="Archive"/> to <see cref="Serialization.Models.Metadata.Archive"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Archive ConvertToInternalModel(Archive item)
|
||||
private static Serialization.Models.Metadata.Archive ConvertToInternalModel(Archive item)
|
||||
{
|
||||
var archive = new Models.Metadata.Archive
|
||||
var archive = new Serialization.Models.Metadata.Archive
|
||||
{
|
||||
[Models.Metadata.Archive.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Archive.NameKey] = item.Name,
|
||||
};
|
||||
return archive;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ClrMamePro.BiosSet"/> to <see cref="Models.Metadata.BiosSet"/>
|
||||
/// Convert from <see cref="BiosSet"/> to <see cref="Serialization.Models.Metadata.BiosSet"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.BiosSet ConvertToInternalModel(BiosSet item)
|
||||
private static Serialization.Models.Metadata.BiosSet ConvertToInternalModel(BiosSet item)
|
||||
{
|
||||
var biosset = new Models.Metadata.BiosSet
|
||||
var biosset = new Serialization.Models.Metadata.BiosSet
|
||||
{
|
||||
[Models.Metadata.BiosSet.NameKey] = item.Name,
|
||||
[Models.Metadata.BiosSet.DescriptionKey] = item.Description,
|
||||
[Models.Metadata.BiosSet.DefaultKey] = item.Default,
|
||||
[Serialization.Models.Metadata.BiosSet.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.BiosSet.DescriptionKey] = item.Description,
|
||||
[Serialization.Models.Metadata.BiosSet.DefaultKey] = item.Default,
|
||||
};
|
||||
return biosset;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ClrMamePro.Chip"/> to <see cref="Models.Metadata.Chip"/>
|
||||
/// Convert from <see cref="Chip"/> to <see cref="Serialization.Models.Metadata.Chip"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Chip ConvertToInternalModel(Chip item)
|
||||
private static Serialization.Models.Metadata.Chip ConvertToInternalModel(Chip item)
|
||||
{
|
||||
var chip = new Models.Metadata.Chip
|
||||
var chip = new Serialization.Models.Metadata.Chip
|
||||
{
|
||||
[Models.Metadata.Chip.ChipTypeKey] = item.Type,
|
||||
[Models.Metadata.Chip.NameKey] = item.Name,
|
||||
[Models.Metadata.Chip.FlagsKey] = item.Flags,
|
||||
[Models.Metadata.Chip.ClockKey] = item.Clock,
|
||||
[Serialization.Models.Metadata.Chip.ChipTypeKey] = item.Type,
|
||||
[Serialization.Models.Metadata.Chip.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Chip.FlagsKey] = item.Flags,
|
||||
[Serialization.Models.Metadata.Chip.ClockKey] = item.Clock,
|
||||
};
|
||||
return chip;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ClrMamePro.DipSwitch"/> to <see cref="Models.Metadata.DipSwitch"/>
|
||||
/// Convert from <see cref="DipSwitch"/> to <see cref="Serialization.Models.Metadata.DipSwitch"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.DipSwitch ConvertToInternalModel(DipSwitch item)
|
||||
private static Serialization.Models.Metadata.DipSwitch ConvertToInternalModel(DipSwitch item)
|
||||
{
|
||||
var dipswitch = new Models.Metadata.DipSwitch
|
||||
var dipswitch = new Serialization.Models.Metadata.DipSwitch
|
||||
{
|
||||
[Models.Metadata.DipSwitch.NameKey] = item.Name,
|
||||
[Models.Metadata.DipSwitch.EntryKey] = item.Entry,
|
||||
[Models.Metadata.DipSwitch.DefaultKey] = item.Default,
|
||||
[Serialization.Models.Metadata.DipSwitch.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.DipSwitch.EntryKey] = item.Entry,
|
||||
[Serialization.Models.Metadata.DipSwitch.DefaultKey] = item.Default,
|
||||
};
|
||||
return dipswitch;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ClrMamePro.Disk"/> to <see cref="Models.Metadata.Disk"/>
|
||||
/// Convert from <see cref="Disk"/> to <see cref="Serialization.Models.Metadata.Disk"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Disk ConvertToInternalModel(Disk item)
|
||||
private static Serialization.Models.Metadata.Disk ConvertToInternalModel(Disk item)
|
||||
{
|
||||
var disk = new Models.Metadata.Disk
|
||||
var disk = new Serialization.Models.Metadata.Disk
|
||||
{
|
||||
[Models.Metadata.Disk.NameKey] = item.Name,
|
||||
[Models.Metadata.Disk.MD5Key] = item.MD5,
|
||||
[Models.Metadata.Disk.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Disk.MergeKey] = item.Merge,
|
||||
[Models.Metadata.Disk.StatusKey] = item.Status,
|
||||
[Models.Metadata.Disk.FlagsKey] = item.Flags,
|
||||
[Serialization.Models.Metadata.Disk.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Disk.MD5Key] = item.MD5,
|
||||
[Serialization.Models.Metadata.Disk.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Disk.MergeKey] = item.Merge,
|
||||
[Serialization.Models.Metadata.Disk.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.Disk.FlagsKey] = item.Flags,
|
||||
};
|
||||
return disk;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ClrMamePro.Driver"/> to <see cref="Models.Metadata.Driver"/>
|
||||
/// Convert from <see cref="Driver"/> to <see cref="Serialization.Models.Metadata.Driver"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Driver ConvertToInternalModel(Driver item)
|
||||
private static Serialization.Models.Metadata.Driver ConvertToInternalModel(Driver item)
|
||||
{
|
||||
var driver = new Models.Metadata.Driver
|
||||
var driver = new Serialization.Models.Metadata.Driver
|
||||
{
|
||||
[Models.Metadata.Driver.StatusKey] = item.Status,
|
||||
[Models.Metadata.Driver.ColorKey] = item.Color,
|
||||
[Models.Metadata.Driver.SoundKey] = item.Sound,
|
||||
[Models.Metadata.Driver.PaletteSizeKey] = item.PaletteSize,
|
||||
[Models.Metadata.Driver.BlitKey] = item.Blit,
|
||||
[Serialization.Models.Metadata.Driver.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.Driver.ColorKey] = item.Color,
|
||||
[Serialization.Models.Metadata.Driver.SoundKey] = item.Sound,
|
||||
[Serialization.Models.Metadata.Driver.PaletteSizeKey] = item.PaletteSize,
|
||||
[Serialization.Models.Metadata.Driver.BlitKey] = item.Blit,
|
||||
};
|
||||
return driver;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ClrMamePro.Input"/> to <see cref="Models.Metadata.Input"/>
|
||||
/// Convert from <see cref="Input"/> to <see cref="Serialization.Models.Metadata.Input"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Input ConvertToInternalModel(Input item)
|
||||
private static Serialization.Models.Metadata.Input ConvertToInternalModel(Input item)
|
||||
{
|
||||
var input = new Models.Metadata.Input
|
||||
var input = new Serialization.Models.Metadata.Input
|
||||
{
|
||||
[Models.Metadata.Input.PlayersKey] = item.Players,
|
||||
[Models.Metadata.Input.ControlKey] = item.Control,
|
||||
[Models.Metadata.Input.ButtonsKey] = item.Buttons,
|
||||
[Models.Metadata.Input.CoinsKey] = item.Coins,
|
||||
[Models.Metadata.Input.TiltKey] = item.Tilt,
|
||||
[Models.Metadata.Input.ServiceKey] = item.Service,
|
||||
[Serialization.Models.Metadata.Input.PlayersKey] = item.Players,
|
||||
[Serialization.Models.Metadata.Input.ControlKey] = item.Control,
|
||||
[Serialization.Models.Metadata.Input.ButtonsKey] = item.Buttons,
|
||||
[Serialization.Models.Metadata.Input.CoinsKey] = item.Coins,
|
||||
[Serialization.Models.Metadata.Input.TiltKey] = item.Tilt,
|
||||
[Serialization.Models.Metadata.Input.ServiceKey] = item.Service,
|
||||
};
|
||||
return input;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ClrMamePro.Media"/> to <see cref="Models.Metadata.Media"/>
|
||||
/// Convert from <see cref="Media"/> to <see cref="Serialization.Models.Metadata.Media"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Media ConvertToInternalModel(Media item)
|
||||
private static Serialization.Models.Metadata.Media ConvertToInternalModel(Media item)
|
||||
{
|
||||
var media = new Models.Metadata.Media
|
||||
var media = new Serialization.Models.Metadata.Media
|
||||
{
|
||||
[Models.Metadata.Media.NameKey] = item.Name,
|
||||
[Models.Metadata.Media.MD5Key] = item.MD5,
|
||||
[Models.Metadata.Media.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Media.SHA256Key] = item.SHA256,
|
||||
[Models.Metadata.Media.SpamSumKey] = item.SpamSum,
|
||||
[Serialization.Models.Metadata.Media.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Media.MD5Key] = item.MD5,
|
||||
[Serialization.Models.Metadata.Media.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Media.SHA256Key] = item.SHA256,
|
||||
[Serialization.Models.Metadata.Media.SpamSumKey] = item.SpamSum,
|
||||
};
|
||||
return media;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ClrMamePro.Release"/> to <see cref="Models.Metadata.Release"/>
|
||||
/// Convert from <see cref="Release"/> to <see cref="Serialization.Models.Metadata.Release"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Release ConvertToInternalModel(Release item)
|
||||
private static Serialization.Models.Metadata.Release ConvertToInternalModel(Release item)
|
||||
{
|
||||
var release = new Models.Metadata.Release
|
||||
var release = new Serialization.Models.Metadata.Release
|
||||
{
|
||||
[Models.Metadata.Release.NameKey] = item.Name,
|
||||
[Models.Metadata.Release.RegionKey] = item.Region,
|
||||
[Models.Metadata.Release.LanguageKey] = item.Language,
|
||||
[Models.Metadata.Release.DateKey] = item.Date,
|
||||
[Models.Metadata.Release.DefaultKey] = item.Default,
|
||||
[Serialization.Models.Metadata.Release.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Release.RegionKey] = item.Region,
|
||||
[Serialization.Models.Metadata.Release.LanguageKey] = item.Language,
|
||||
[Serialization.Models.Metadata.Release.DateKey] = item.Date,
|
||||
[Serialization.Models.Metadata.Release.DefaultKey] = item.Default,
|
||||
};
|
||||
return release;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ClrMamePro.Rom"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="Rom"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(Rom item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(Rom item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Models.Metadata.Rom.CRCKey] = item.CRC,
|
||||
[Models.Metadata.Rom.MD2Key] = item.MD2,
|
||||
[Models.Metadata.Rom.MD4Key] = item.MD4,
|
||||
[Models.Metadata.Rom.MD5Key] = item.MD5,
|
||||
[Models.Metadata.Rom.RIPEMD128Key] = item.RIPEMD128,
|
||||
[Models.Metadata.Rom.RIPEMD160Key] = item.RIPEMD160,
|
||||
[Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Rom.SHA256Key] = item.SHA256,
|
||||
[Models.Metadata.Rom.SHA384Key] = item.SHA384,
|
||||
[Models.Metadata.Rom.SHA512Key] = item.SHA512,
|
||||
[Models.Metadata.Rom.SpamSumKey] = item.SpamSum,
|
||||
[Models.Metadata.Rom.xxHash364Key] = item.xxHash364,
|
||||
[Models.Metadata.Rom.xxHash3128Key] = item.xxHash3128,
|
||||
[Models.Metadata.Rom.MergeKey] = item.Merge,
|
||||
[Models.Metadata.Rom.StatusKey] = item.Status,
|
||||
[Models.Metadata.Rom.RegionKey] = item.Region,
|
||||
[Models.Metadata.Rom.FlagsKey] = item.Flags,
|
||||
[Models.Metadata.Rom.OffsetKey] = item.Offs,
|
||||
[Models.Metadata.Rom.SerialKey] = item.Serial,
|
||||
[Models.Metadata.Rom.HeaderKey] = item.Header,
|
||||
[Models.Metadata.Rom.DateKey] = item.Date,
|
||||
[Models.Metadata.Rom.InvertedKey] = item.Inverted,
|
||||
[Models.Metadata.Rom.MIAKey] = item.MIA,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Serialization.Models.Metadata.Rom.CRCKey] = item.CRC,
|
||||
[Serialization.Models.Metadata.Rom.MD2Key] = item.MD2,
|
||||
[Serialization.Models.Metadata.Rom.MD4Key] = item.MD4,
|
||||
[Serialization.Models.Metadata.Rom.MD5Key] = item.MD5,
|
||||
[Serialization.Models.Metadata.Rom.RIPEMD128Key] = item.RIPEMD128,
|
||||
[Serialization.Models.Metadata.Rom.RIPEMD160Key] = item.RIPEMD160,
|
||||
[Serialization.Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Rom.SHA256Key] = item.SHA256,
|
||||
[Serialization.Models.Metadata.Rom.SHA384Key] = item.SHA384,
|
||||
[Serialization.Models.Metadata.Rom.SHA512Key] = item.SHA512,
|
||||
[Serialization.Models.Metadata.Rom.SpamSumKey] = item.SpamSum,
|
||||
[Serialization.Models.Metadata.Rom.xxHash364Key] = item.xxHash364,
|
||||
[Serialization.Models.Metadata.Rom.xxHash3128Key] = item.xxHash3128,
|
||||
[Serialization.Models.Metadata.Rom.MergeKey] = item.Merge,
|
||||
[Serialization.Models.Metadata.Rom.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.Rom.RegionKey] = item.Region,
|
||||
[Serialization.Models.Metadata.Rom.FlagsKey] = item.Flags,
|
||||
[Serialization.Models.Metadata.Rom.OffsetKey] = item.Offs,
|
||||
[Serialization.Models.Metadata.Rom.SerialKey] = item.Serial,
|
||||
[Serialization.Models.Metadata.Rom.HeaderKey] = item.Header,
|
||||
[Serialization.Models.Metadata.Rom.DateKey] = item.Date,
|
||||
[Serialization.Models.Metadata.Rom.InvertedKey] = item.Inverted,
|
||||
[Serialization.Models.Metadata.Rom.MIAKey] = item.MIA,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ClrMamePro.Sample"/> to <see cref="Models.Metadata.Sample"/>
|
||||
/// Convert from <see cref="Sample"/> to <see cref="Serialization.Models.Metadata.Sample"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Sample ConvertToInternalModel(Sample item)
|
||||
private static Serialization.Models.Metadata.Sample ConvertToInternalModel(Sample item)
|
||||
{
|
||||
var sample = new Models.Metadata.Sample
|
||||
var sample = new Serialization.Models.Metadata.Sample
|
||||
{
|
||||
[Models.Metadata.Sample.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Sample.NameKey] = item.Name,
|
||||
};
|
||||
return sample;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ClrMamePro.Sound"/> to <see cref="Models.Metadata.Sound"/>
|
||||
/// Convert from <see cref="Sound"/> to <see cref="Serialization.Models.Metadata.Sound"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Sound ConvertToInternalModel(Sound item)
|
||||
private static Serialization.Models.Metadata.Sound ConvertToInternalModel(Sound item)
|
||||
{
|
||||
var sound = new Models.Metadata.Sound
|
||||
var sound = new Serialization.Models.Metadata.Sound
|
||||
{
|
||||
[Models.Metadata.Sound.ChannelsKey] = item.Channels,
|
||||
[Serialization.Models.Metadata.Sound.ChannelsKey] = item.Channels,
|
||||
};
|
||||
return sound;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.ClrMamePro.Video"/> to <see cref="Models.Metadata.Video"/>
|
||||
/// Convert from <see cref="Video"/> to <see cref="Serialization.Models.Metadata.Video"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Video ConvertToInternalModel(Video item)
|
||||
private static Serialization.Models.Metadata.Video ConvertToInternalModel(Video item)
|
||||
{
|
||||
var video = new Models.Metadata.Video
|
||||
var video = new Serialization.Models.Metadata.Video
|
||||
{
|
||||
[Models.Metadata.Video.ScreenKey] = item.Screen,
|
||||
[Models.Metadata.Video.OrientationKey] = item.Orientation,
|
||||
[Models.Metadata.Video.WidthKey] = item.X,
|
||||
[Models.Metadata.Video.HeightKey] = item.Y,
|
||||
[Models.Metadata.Video.AspectXKey] = item.AspectX,
|
||||
[Models.Metadata.Video.AspectYKey] = item.AspectY,
|
||||
[Models.Metadata.Video.RefreshKey] = item.Freq,
|
||||
[Serialization.Models.Metadata.Video.ScreenKey] = item.Screen,
|
||||
[Serialization.Models.Metadata.Video.OrientationKey] = item.Orientation,
|
||||
[Serialization.Models.Metadata.Video.WidthKey] = item.X,
|
||||
[Serialization.Models.Metadata.Video.HeightKey] = item.Y,
|
||||
[Serialization.Models.Metadata.Video.AspectXKey] = item.AspectX,
|
||||
[Serialization.Models.Metadata.Video.AspectYKey] = item.AspectY,
|
||||
[Serialization.Models.Metadata.Video.RefreshKey] = item.Freq,
|
||||
};
|
||||
return video;
|
||||
}
|
||||
|
||||
@@ -1,24 +1,24 @@
|
||||
using System;
|
||||
using SabreTools.Models.DosCenter;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.DosCenter;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class DosCenter : IModelSerializer<MetadataFile, Models.Metadata.MetadataFile>
|
||||
public partial class DosCenter : IModelSerializer<MetadataFile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public MetadataFile? Deserialize(Models.Metadata.MetadataFile? obj)
|
||||
public MetadataFile? Deserialize(Serialization.Models.Metadata.MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new MetadataFile();
|
||||
|
||||
var header = obj.Read<Models.Metadata.Header>(Models.Metadata.MetadataFile.HeaderKey);
|
||||
var header = obj.Read<Serialization.Models.Metadata.Header>(Serialization.Models.Metadata.MetadataFile.HeaderKey);
|
||||
if (header != null)
|
||||
metadataFile.DosCenter = ConvertHeaderFromInternalModel(header);
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
if (machines != null && machines.Length > 0)
|
||||
metadataFile.Game = Array.ConvertAll(machines, ConvertMachineFromInternalModel);
|
||||
|
||||
@@ -26,34 +26,34 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Header"/> to <see cref="Models.DosCenter.DosCenter"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Header"/> to <see cref="Models.DosCenter.DosCenter"/>
|
||||
/// </summary>
|
||||
private static Models.DosCenter.DosCenter ConvertHeaderFromInternalModel(Models.Metadata.Header item)
|
||||
private static SabreTools.Serialization.Models.DosCenter.DosCenter ConvertHeaderFromInternalModel(Serialization.Models.Metadata.Header item)
|
||||
{
|
||||
var dosCenter = new Models.DosCenter.DosCenter
|
||||
var dosCenter = new SabreTools.Serialization.Models.DosCenter.DosCenter
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Header.NameKey),
|
||||
Description = item.ReadString(Models.Metadata.Header.DescriptionKey),
|
||||
Version = item.ReadString(Models.Metadata.Header.VersionKey),
|
||||
Date = item.ReadString(Models.Metadata.Header.DateKey),
|
||||
Author = item.ReadString(Models.Metadata.Header.AuthorKey),
|
||||
Homepage = item.ReadString(Models.Metadata.Header.HomepageKey),
|
||||
Comment = item.ReadString(Models.Metadata.Header.CommentKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Header.NameKey),
|
||||
Description = item.ReadString(Serialization.Models.Metadata.Header.DescriptionKey),
|
||||
Version = item.ReadString(Serialization.Models.Metadata.Header.VersionKey),
|
||||
Date = item.ReadString(Serialization.Models.Metadata.Header.DateKey),
|
||||
Author = item.ReadString(Serialization.Models.Metadata.Header.AuthorKey),
|
||||
Homepage = item.ReadString(Serialization.Models.Metadata.Header.HomepageKey),
|
||||
Comment = item.ReadString(Serialization.Models.Metadata.Header.CommentKey),
|
||||
};
|
||||
return dosCenter;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Machine"/> to <see cref="Models.DosCenter.Game"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Machine"/> to <see cref="Game"/>
|
||||
/// </summary>
|
||||
private static Game ConvertMachineFromInternalModel(Models.Metadata.Machine item)
|
||||
private static Game ConvertMachineFromInternalModel(Serialization.Models.Metadata.Machine item)
|
||||
{
|
||||
var game = new Game
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Machine.NameKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Machine.NameKey),
|
||||
};
|
||||
|
||||
var roms = item.Read<Models.Metadata.Rom[]>(Models.Metadata.Machine.RomKey);
|
||||
var roms = item.Read<Serialization.Models.Metadata.Rom[]>(Serialization.Models.Metadata.Machine.RomKey);
|
||||
if (roms != null && roms.Length > 0)
|
||||
game.File = Array.ConvertAll(roms, ConvertFromInternalModel);
|
||||
|
||||
@@ -61,17 +61,17 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.DosCenter.File"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="File"/>
|
||||
/// </summary>
|
||||
private static File ConvertFromInternalModel(Models.Metadata.Rom item)
|
||||
private static File ConvertFromInternalModel(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var file = new File
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Size = item.ReadString(Models.Metadata.Rom.SizeKey),
|
||||
CRC = item.ReadString(Models.Metadata.Rom.CRCKey),
|
||||
SHA1 = item.ReadString(Models.Metadata.Rom.SHA1Key),
|
||||
Date = item.ReadString(Models.Metadata.Rom.DateKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
Size = item.ReadString(Serialization.Models.Metadata.Rom.SizeKey),
|
||||
CRC = item.ReadString(Serialization.Models.Metadata.Rom.CRCKey),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Rom.SHA1Key),
|
||||
Date = item.ReadString(Serialization.Models.Metadata.Rom.DateKey),
|
||||
};
|
||||
return file;
|
||||
}
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
using System;
|
||||
using SabreTools.Models.DosCenter;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.DosCenter;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class DosCenter : IModelSerializer<MetadataFile, Models.Metadata.MetadataFile>
|
||||
public partial class DosCenter : IModelSerializer<MetadataFile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Metadata.MetadataFile? Serialize(MetadataFile? obj)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile();
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile();
|
||||
|
||||
if (obj?.DosCenter != null)
|
||||
metadataFile[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(obj.DosCenter);
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(obj.DosCenter);
|
||||
|
||||
if (obj?.Game != null && obj.Game.Length > 0)
|
||||
{
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey]
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey]
|
||||
= Array.ConvertAll(obj.Game, ConvertMachineToInternalModel);
|
||||
}
|
||||
|
||||
@@ -27,36 +27,36 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.DosCenter.DosCenter"/> to <see cref="Models.Metadata.Header"/>
|
||||
/// Convert from <see cref="Models.DosCenter.DosCenter"/> to <see cref="Serialization.Models.Metadata.Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel(Models.DosCenter.DosCenter item)
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel(SabreTools.Serialization.Models.DosCenter.DosCenter item)
|
||||
{
|
||||
var header = new Models.Metadata.Header
|
||||
var header = new Serialization.Models.Metadata.Header
|
||||
{
|
||||
[Models.Metadata.Header.NameKey] = item.Name,
|
||||
[Models.Metadata.Header.DescriptionKey] = item.Description,
|
||||
[Models.Metadata.Header.VersionKey] = item.Version,
|
||||
[Models.Metadata.Header.DateKey] = item.Date,
|
||||
[Models.Metadata.Header.AuthorKey] = item.Author,
|
||||
[Models.Metadata.Header.HomepageKey] = item.Homepage,
|
||||
[Models.Metadata.Header.CommentKey] = item.Comment,
|
||||
[Serialization.Models.Metadata.Header.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Header.DescriptionKey] = item.Description,
|
||||
[Serialization.Models.Metadata.Header.VersionKey] = item.Version,
|
||||
[Serialization.Models.Metadata.Header.DateKey] = item.Date,
|
||||
[Serialization.Models.Metadata.Header.AuthorKey] = item.Author,
|
||||
[Serialization.Models.Metadata.Header.HomepageKey] = item.Homepage,
|
||||
[Serialization.Models.Metadata.Header.CommentKey] = item.Comment,
|
||||
};
|
||||
return header;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.DosCenter.Game"/> to <see cref="Models.Metadata.Machine"/>
|
||||
/// Convert from <see cref="Game"/> to <see cref="Serialization.Models.Metadata.Machine"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Machine ConvertMachineToInternalModel(Game item)
|
||||
private static Serialization.Models.Metadata.Machine ConvertMachineToInternalModel(Game item)
|
||||
{
|
||||
var machine = new Models.Metadata.Machine
|
||||
var machine = new Serialization.Models.Metadata.Machine
|
||||
{
|
||||
[Models.Metadata.Machine.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Machine.NameKey] = item.Name,
|
||||
};
|
||||
|
||||
if (item.File != null && item.File.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.RomKey]
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey]
|
||||
= Array.ConvertAll(item.File, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
@@ -64,17 +64,17 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.DosCenter.File"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="File"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(File item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(File item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Models.Metadata.Rom.CRCKey] = item.CRC,
|
||||
[Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Rom.DateKey] = item.Date,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Serialization.Models.Metadata.Rom.CRCKey] = item.CRC,
|
||||
[Serialization.Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Rom.DateKey] = item.Date,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
@@ -1,38 +1,38 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using SabreTools.Models.EverdriveSMDB;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.EverdriveSMDB;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class EverdriveSMDB : IModelSerializer<MetadataFile, Models.Metadata.MetadataFile>
|
||||
public partial class EverdriveSMDB : IModelSerializer<MetadataFile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public MetadataFile? Deserialize(Models.Metadata.MetadataFile? obj)
|
||||
public MetadataFile? Deserialize(Serialization.Models.Metadata.MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new MetadataFile();
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
var items = new List<Row>();
|
||||
foreach (var machine in machines ?? [])
|
||||
{
|
||||
items.AddRange(ConvertMachineFromInternalModel(machine));
|
||||
}
|
||||
foreach (var machine in machines ?? [])
|
||||
{
|
||||
items.AddRange(ConvertMachineFromInternalModel(machine));
|
||||
}
|
||||
|
||||
metadataFile.Row = [.. items];
|
||||
metadataFile.Row = [.. items];
|
||||
|
||||
return metadataFile;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Machine"/> to an array of <see cref="Models.EverdriveSMDB.Row"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Machine"/> to an array of <see cref="Row"/>
|
||||
/// </summary>
|
||||
private static Row[] ConvertMachineFromInternalModel(Models.Metadata.Machine item)
|
||||
private static Row[] ConvertMachineFromInternalModel(Serialization.Models.Metadata.Machine item)
|
||||
{
|
||||
var roms = item.Read<Models.Metadata.Rom[]>(Models.Metadata.Machine.RomKey);
|
||||
var roms = item.Read<Serialization.Models.Metadata.Rom[]>(Serialization.Models.Metadata.Machine.RomKey);
|
||||
if (roms == null || roms.Length == 0)
|
||||
return [];
|
||||
|
||||
@@ -40,18 +40,18 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.EverdriveSMDB.Row"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="Row"/>
|
||||
/// </summary>
|
||||
private static Row ConvertFromInternalModel(Models.Metadata.Rom item)
|
||||
private static Row ConvertFromInternalModel(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var row = new Row
|
||||
{
|
||||
SHA256 = item.ReadString(Models.Metadata.Rom.SHA256Key),
|
||||
Name = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
SHA1 = item.ReadString(Models.Metadata.Rom.SHA1Key),
|
||||
MD5 = item.ReadString(Models.Metadata.Rom.MD5Key),
|
||||
CRC32 = item.ReadString(Models.Metadata.Rom.CRCKey),
|
||||
Size = item.ReadString(Models.Metadata.Rom.SizeKey),
|
||||
SHA256 = item.ReadString(Serialization.Models.Metadata.Rom.SHA256Key),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Rom.SHA1Key),
|
||||
MD5 = item.ReadString(Serialization.Models.Metadata.Rom.MD5Key),
|
||||
CRC32 = item.ReadString(Serialization.Models.Metadata.Rom.CRCKey),
|
||||
Size = item.ReadString(Serialization.Models.Metadata.Rom.SizeKey),
|
||||
};
|
||||
return row;
|
||||
}
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
using System;
|
||||
using SabreTools.Models.EverdriveSMDB;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.EverdriveSMDB;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class EverdriveSMDB : IModelSerializer<MetadataFile, Models.Metadata.MetadataFile>
|
||||
public partial class EverdriveSMDB : IModelSerializer<MetadataFile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Metadata.MetadataFile? Serialize(MetadataFile? obj)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile
|
||||
{
|
||||
[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(),
|
||||
[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(),
|
||||
};
|
||||
|
||||
if (obj?.Row != null && obj.Row.Length > 0)
|
||||
{
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey]
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey]
|
||||
= Array.ConvertAll(obj.Row, ConvertMachineToInternalModel);
|
||||
}
|
||||
|
||||
@@ -27,42 +27,42 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.EverdriveSMDB.MetadataFile"/> to <see cref=Models.Metadata."Header"/>
|
||||
/// Convert from <see cref="MetadataFile"/> to <see cref=Serialization.Models.Metadata."Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel()
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel()
|
||||
{
|
||||
var header = new Models.Metadata.Header
|
||||
var header = new Serialization.Models.Metadata.Header
|
||||
{
|
||||
[Models.Metadata.Header.NameKey] = "Everdrive SMDB",
|
||||
[Serialization.Models.Metadata.Header.NameKey] = "Everdrive SMDB",
|
||||
};
|
||||
return header;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.EverdriveSMDB.Row"/> to <see cref="Models.Metadata.Machine"/>
|
||||
/// Convert from <see cref="Row"/> to <see cref="Serialization.Models.Metadata.Machine"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Machine ConvertMachineToInternalModel(Row item)
|
||||
private static Serialization.Models.Metadata.Machine ConvertMachineToInternalModel(Row item)
|
||||
{
|
||||
var machine = new Models.Metadata.Machine
|
||||
var machine = new Serialization.Models.Metadata.Machine
|
||||
{
|
||||
[Models.Metadata.Machine.RomKey] = new Models.Metadata.Rom[] { ConvertToInternalModel(item) },
|
||||
[Serialization.Models.Metadata.Machine.RomKey] = new Serialization.Models.Metadata.Rom[] { ConvertToInternalModel(item) },
|
||||
};
|
||||
return machine;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.EverdriveSMDB.Row"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="Row"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(Row item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(Row item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.SHA256Key] = item.SHA256,
|
||||
[Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Rom.MD5Key] = item.MD5,
|
||||
[Models.Metadata.Rom.CRCKey] = item.CRC32,
|
||||
[Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Serialization.Models.Metadata.Rom.SHA256Key] = item.SHA256,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Rom.MD5Key] = item.MD5,
|
||||
[Serialization.Models.Metadata.Rom.CRCKey] = item.CRC32,
|
||||
[Serialization.Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using SabreTools.Hashing;
|
||||
using SabreTools.Models.Hashfile;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.Hashfile;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class Hashfile : IModelSerializer<Models.Hashfile.Hashfile, Models.Metadata.MetadataFile>
|
||||
public partial class Hashfile : IModelSerializer<SabreTools.Serialization.Models.Hashfile.Hashfile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Hashfile.Hashfile? Deserialize(Models.Metadata.MetadataFile? obj) => Deserialize(obj, HashType.CRC32);
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? Deserialize(Serialization.Models.Metadata.MetadataFile? obj) => Deserialize(obj, HashType.CRC32);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public Models.Hashfile.Hashfile? Deserialize(Models.Metadata.MetadataFile? obj, HashType hash)
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? Deserialize(Serialization.Models.Metadata.MetadataFile? obj, HashType hash)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
if (machines == null || machines.Length == 0)
|
||||
return null;
|
||||
|
||||
@@ -62,7 +62,7 @@ namespace SabreTools.Serialization.CrossModel
|
||||
spamsums.AddRange(hashfile.SpamSum);
|
||||
}
|
||||
|
||||
var hashfileItem = new Models.Hashfile.Hashfile();
|
||||
var hashfileItem = new SabreTools.Serialization.Models.Hashfile.Hashfile();
|
||||
|
||||
if (sfvs.Count > 0)
|
||||
hashfileItem.SFV = [.. sfvs];
|
||||
@@ -91,15 +91,15 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Machine"/> to <see cref="Models.Hashfile.Hashfile"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Machine"/> to <see cref="SabreTools.Serialization.Models.Hashfile.Hashfile"/>
|
||||
/// </summary>
|
||||
private static Models.Hashfile.Hashfile ConvertMachineFromInternalModel(Models.Metadata.Machine item, HashType hash)
|
||||
private static SabreTools.Serialization.Models.Hashfile.Hashfile ConvertMachineFromInternalModel(Serialization.Models.Metadata.Machine item, HashType hash)
|
||||
{
|
||||
var roms = item.Read<Models.Metadata.Rom[]>(Models.Metadata.Machine.RomKey);
|
||||
var roms = item.Read<Serialization.Models.Metadata.Rom[]>(Serialization.Models.Metadata.Machine.RomKey);
|
||||
if (roms == null)
|
||||
return new Models.Hashfile.Hashfile();
|
||||
return new SabreTools.Serialization.Models.Hashfile.Hashfile();
|
||||
|
||||
return new Models.Hashfile.Hashfile
|
||||
return new SabreTools.Serialization.Models.Hashfile.Hashfile
|
||||
{
|
||||
SFV = hash == HashType.CRC32
|
||||
? Array.ConvertAll(roms, ConvertToSFV)
|
||||
@@ -138,144 +138,144 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.Hashfile.MD2"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="MD2"/>
|
||||
/// </summary>
|
||||
private static MD2 ConvertToMD2(Models.Metadata.Rom item)
|
||||
private static MD2 ConvertToMD2(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var md2 = new MD2
|
||||
{
|
||||
Hash = item.ReadString(Models.Metadata.Rom.MD2Key),
|
||||
File = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Hash = item.ReadString(Serialization.Models.Metadata.Rom.MD2Key),
|
||||
File = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
};
|
||||
return md2;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.Hashfile.MD4"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="MD4"/>
|
||||
/// </summary>
|
||||
private static MD4 ConvertToMD4(Models.Metadata.Rom item)
|
||||
private static MD4 ConvertToMD4(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var md4 = new MD4
|
||||
{
|
||||
Hash = item.ReadString(Models.Metadata.Rom.MD4Key),
|
||||
File = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Hash = item.ReadString(Serialization.Models.Metadata.Rom.MD4Key),
|
||||
File = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
};
|
||||
return md4;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.Hashfile.MD5"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="MD5"/>
|
||||
/// </summary>
|
||||
private static MD5 ConvertToMD5(Models.Metadata.Rom item)
|
||||
private static MD5 ConvertToMD5(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var md5 = new MD5
|
||||
{
|
||||
Hash = item.ReadString(Models.Metadata.Rom.MD5Key),
|
||||
File = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Hash = item.ReadString(Serialization.Models.Metadata.Rom.MD5Key),
|
||||
File = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
};
|
||||
return md5;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.Hashfile.RIPEMD128"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="RIPEMD128"/>
|
||||
/// </summary>
|
||||
private static RIPEMD128 ConvertToRIPEMD128(Models.Metadata.Rom item)
|
||||
private static RIPEMD128 ConvertToRIPEMD128(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var ripemd128 = new RIPEMD128
|
||||
{
|
||||
Hash = item.ReadString(Models.Metadata.Rom.RIPEMD128Key),
|
||||
File = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Hash = item.ReadString(Serialization.Models.Metadata.Rom.RIPEMD128Key),
|
||||
File = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
};
|
||||
return ripemd128;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.Hashfile.RIPEMD160"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="RIPEMD160"/>
|
||||
/// </summary>
|
||||
private static RIPEMD160 ConvertToRIPEMD160(Models.Metadata.Rom item)
|
||||
private static RIPEMD160 ConvertToRIPEMD160(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var ripemd160 = new RIPEMD160
|
||||
{
|
||||
Hash = item.ReadString(Models.Metadata.Rom.RIPEMD160Key),
|
||||
File = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Hash = item.ReadString(Serialization.Models.Metadata.Rom.RIPEMD160Key),
|
||||
File = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
};
|
||||
return ripemd160;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.Hashfile.SFV"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="SFV"/>
|
||||
/// </summary>
|
||||
private static SFV ConvertToSFV(Models.Metadata.Rom item)
|
||||
private static SFV ConvertToSFV(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var sfv = new SFV
|
||||
{
|
||||
File = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Hash = item.ReadString(Models.Metadata.Rom.CRCKey),
|
||||
File = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
Hash = item.ReadString(Serialization.Models.Metadata.Rom.CRCKey),
|
||||
};
|
||||
return sfv;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.Hashfile.SHA1"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="SHA1"/>
|
||||
/// </summary>
|
||||
private static SHA1 ConvertToSHA1(Models.Metadata.Rom item)
|
||||
private static SHA1 ConvertToSHA1(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var sha1 = new SHA1
|
||||
{
|
||||
Hash = item.ReadString(Models.Metadata.Rom.SHA1Key),
|
||||
File = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Hash = item.ReadString(Serialization.Models.Metadata.Rom.SHA1Key),
|
||||
File = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
};
|
||||
return sha1;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.Hashfile.SHA256"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="SHA256"/>
|
||||
/// </summary>
|
||||
private static SHA256 ConvertToSHA256(Models.Metadata.Rom item)
|
||||
private static SHA256 ConvertToSHA256(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var sha256 = new SHA256
|
||||
{
|
||||
Hash = item.ReadString(Models.Metadata.Rom.SHA256Key),
|
||||
File = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Hash = item.ReadString(Serialization.Models.Metadata.Rom.SHA256Key),
|
||||
File = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
};
|
||||
return sha256;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.Hashfile.SHA384"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="SHA384"/>
|
||||
/// </summary>
|
||||
private static SHA384 ConvertToSHA384(Models.Metadata.Rom item)
|
||||
private static SHA384 ConvertToSHA384(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var sha384 = new SHA384
|
||||
{
|
||||
Hash = item.ReadString(Models.Metadata.Rom.SHA384Key),
|
||||
File = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Hash = item.ReadString(Serialization.Models.Metadata.Rom.SHA384Key),
|
||||
File = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
};
|
||||
return sha384;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.Hashfile.SHA512"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="SHA512"/>
|
||||
/// </summary>
|
||||
private static SHA512 ConvertToSHA512(Models.Metadata.Rom item)
|
||||
private static SHA512 ConvertToSHA512(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var sha512 = new SHA512
|
||||
{
|
||||
Hash = item.ReadString(Models.Metadata.Rom.SHA512Key),
|
||||
File = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Hash = item.ReadString(Serialization.Models.Metadata.Rom.SHA512Key),
|
||||
File = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
};
|
||||
return sha512;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.Hashfile.SpamSum"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="SpamSum"/>
|
||||
/// </summary>
|
||||
private static SpamSum ConvertToSpamSum(Models.Metadata.Rom item)
|
||||
private static SpamSum ConvertToSpamSum(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var spamsum = new SpamSum
|
||||
{
|
||||
Hash = item.ReadString(Models.Metadata.Rom.SpamSumKey),
|
||||
File = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Hash = item.ReadString(Serialization.Models.Metadata.Rom.SpamSumKey),
|
||||
File = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
};
|
||||
return spamsum;
|
||||
}
|
||||
|
||||
@@ -1,212 +1,212 @@
|
||||
using System;
|
||||
using SabreTools.Models.Hashfile;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.Hashfile;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class Hashfile : IModelSerializer<Models.Hashfile.Hashfile, Models.Metadata.MetadataFile>
|
||||
public partial class Hashfile : IModelSerializer<SabreTools.Serialization.Models.Hashfile.Hashfile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Metadata.MetadataFile? Serialize(Models.Hashfile.Hashfile? obj)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(SabreTools.Serialization.Models.Hashfile.Hashfile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile
|
||||
{
|
||||
[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(),
|
||||
[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(),
|
||||
};
|
||||
|
||||
var machine = ConvertMachineToInternalModel(obj);
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey] = new Models.Metadata.Machine[] { machine };
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey] = new Serialization.Models.Metadata.Machine[] { machine };
|
||||
|
||||
return metadataFile;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Hashfile.Hashfile"/> to <see cref="Models.Metadata.Header"/>
|
||||
/// Convert from <see cref="SabreTools.Serialization.Models.Hashfile.Hashfile"/> to <see cref="Serialization.Models.Metadata.Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel()
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel()
|
||||
{
|
||||
var header = new Models.Metadata.Header
|
||||
var header = new Serialization.Models.Metadata.Header
|
||||
{
|
||||
[Models.Metadata.Header.NameKey] = "Hashfile",
|
||||
[Serialization.Models.Metadata.Header.NameKey] = "Hashfile",
|
||||
};
|
||||
return header;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Hashfile.Hashfile"/> to <see cref="Models.Metadata.Machine"/>
|
||||
/// Convert from <see cref="SabreTools.Serialization.Models.Hashfile.Hashfile"/> to <see cref="Serialization.Models.Metadata.Machine"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Machine ConvertMachineToInternalModel(Models.Hashfile.Hashfile item)
|
||||
private static Serialization.Models.Metadata.Machine ConvertMachineToInternalModel(SabreTools.Serialization.Models.Hashfile.Hashfile item)
|
||||
{
|
||||
var machine = new Models.Metadata.Machine();
|
||||
var machine = new Serialization.Models.Metadata.Machine();
|
||||
|
||||
if (item.SFV != null && item.SFV.Length > 0)
|
||||
machine[Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.SFV, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.SFV, ConvertToInternalModel);
|
||||
else if (item.MD2 != null && item.MD2.Length > 0)
|
||||
machine[Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.MD2, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.MD2, ConvertToInternalModel);
|
||||
else if (item.MD4 != null && item.MD4.Length > 0)
|
||||
machine[Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.MD4, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.MD4, ConvertToInternalModel);
|
||||
else if (item.MD5 != null && item.MD5.Length > 0)
|
||||
machine[Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.MD5, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.MD5, ConvertToInternalModel);
|
||||
else if (item.RIPEMD128 != null && item.RIPEMD128.Length > 0)
|
||||
machine[Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.RIPEMD128, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.RIPEMD128, ConvertToInternalModel);
|
||||
else if (item.RIPEMD160 != null && item.RIPEMD160.Length > 0)
|
||||
machine[Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.RIPEMD160, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.RIPEMD160, ConvertToInternalModel);
|
||||
else if (item.SHA1 != null && item.SHA1.Length > 0)
|
||||
machine[Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.SHA1, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.SHA1, ConvertToInternalModel);
|
||||
else if (item.SHA256 != null && item.SHA256.Length > 0)
|
||||
machine[Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.SHA256, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.SHA256, ConvertToInternalModel);
|
||||
else if (item.SHA384 != null && item.SHA384.Length > 0)
|
||||
machine[Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.SHA384, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.SHA384, ConvertToInternalModel);
|
||||
else if (item.SHA512 != null && item.SHA512.Length > 0)
|
||||
machine[Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.SHA512, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.SHA512, ConvertToInternalModel);
|
||||
else if (item.SpamSum != null && item.SpamSum.Length > 0)
|
||||
machine[Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.SpamSum, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.SpamSum, ConvertToInternalModel);
|
||||
|
||||
return machine;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Hashfile.MD2"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="MD2"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(MD2 item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(MD2 item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.MD2Key] = item.Hash,
|
||||
[Models.Metadata.Rom.NameKey] = item.File,
|
||||
[Serialization.Models.Metadata.Rom.MD2Key] = item.Hash,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.File,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Hashfile.MD4"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="MD4"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(MD4 item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(MD4 item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.MD4Key] = item.Hash,
|
||||
[Models.Metadata.Rom.NameKey] = item.File,
|
||||
[Serialization.Models.Metadata.Rom.MD4Key] = item.Hash,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.File,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Hashfile.MD5"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="MD5"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(MD5 item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(MD5 item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.MD5Key] = item.Hash,
|
||||
[Models.Metadata.Rom.NameKey] = item.File,
|
||||
[Serialization.Models.Metadata.Rom.MD5Key] = item.Hash,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.File,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Hashfile.RIPEMD128"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="RIPEMD128"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(RIPEMD128 item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(RIPEMD128 item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.RIPEMD128Key] = item.Hash,
|
||||
[Models.Metadata.Rom.NameKey] = item.File,
|
||||
[Serialization.Models.Metadata.Rom.RIPEMD128Key] = item.Hash,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.File,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Hashfile.RIPEMD160"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="RIPEMD160"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(RIPEMD160 item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(RIPEMD160 item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.RIPEMD160Key] = item.Hash,
|
||||
[Models.Metadata.Rom.NameKey] = item.File,
|
||||
[Serialization.Models.Metadata.Rom.RIPEMD160Key] = item.Hash,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.File,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Hashfile.SFV"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="SFV"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(SFV item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(SFV item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.NameKey] = item.File,
|
||||
[Models.Metadata.Rom.CRCKey] = item.Hash,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.File,
|
||||
[Serialization.Models.Metadata.Rom.CRCKey] = item.Hash,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Hashfile.SHA1"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="SHA1"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(SHA1 item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(SHA1 item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.SHA1Key] = item.Hash,
|
||||
[Models.Metadata.Rom.NameKey] = item.File,
|
||||
[Serialization.Models.Metadata.Rom.SHA1Key] = item.Hash,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.File,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Hashfile.SHA256"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="SHA256"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(SHA256 item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(SHA256 item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.SHA256Key] = item.Hash,
|
||||
[Models.Metadata.Rom.NameKey] = item.File,
|
||||
[Serialization.Models.Metadata.Rom.SHA256Key] = item.Hash,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.File,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Hashfile.SHA384"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="SHA384"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(SHA384 item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(SHA384 item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.SHA384Key] = item.Hash,
|
||||
[Models.Metadata.Rom.NameKey] = item.File,
|
||||
[Serialization.Models.Metadata.Rom.SHA384Key] = item.Hash,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.File,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Hashfile.SHA512"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="SHA512"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(SHA512 item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(SHA512 item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.SHA512Key] = item.Hash,
|
||||
[Models.Metadata.Rom.NameKey] = item.File,
|
||||
[Serialization.Models.Metadata.Rom.SHA512Key] = item.Hash,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.File,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Hashfile.SpamSum"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="SpamSum"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(SpamSum item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(SpamSum item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.SpamSumKey] = item.Hash,
|
||||
[Models.Metadata.Rom.NameKey] = item.File,
|
||||
[Serialization.Models.Metadata.Rom.SpamSumKey] = item.Hash,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.File,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using SabreTools.Models.Listrom;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.Listrom;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class Listrom : IModelSerializer<MetadataFile, Models.Metadata.MetadataFile>
|
||||
public partial class Listrom : IModelSerializer<MetadataFile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public MetadataFile? Deserialize(Models.Metadata.MetadataFile? obj)
|
||||
public MetadataFile? Deserialize(Serialization.Models.Metadata.MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new MetadataFile();
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
if (machines != null && machines.Length > 0)
|
||||
metadataFile.Set = Array.ConvertAll(machines, ConvertMachineFromInternalModel);
|
||||
|
||||
@@ -23,25 +23,25 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Machine"/> to <see cref="Models.Listrom.Set"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Machine"/> to <see cref="Set"/>
|
||||
/// </summary>
|
||||
private static Set ConvertMachineFromInternalModel(Models.Metadata.Machine item)
|
||||
private static Set ConvertMachineFromInternalModel(Serialization.Models.Metadata.Machine item)
|
||||
{
|
||||
var set = new Set();
|
||||
if (item.ReadString(Models.Metadata.Machine.IsDeviceKey) == "yes")
|
||||
set.Device = item.ReadString(Models.Metadata.Machine.NameKey);
|
||||
if (item.ReadString(Serialization.Models.Metadata.Machine.IsDeviceKey) == "yes")
|
||||
set.Device = item.ReadString(Serialization.Models.Metadata.Machine.NameKey);
|
||||
else
|
||||
set.Driver = item.ReadString(Models.Metadata.Machine.NameKey);
|
||||
set.Driver = item.ReadString(Serialization.Models.Metadata.Machine.NameKey);
|
||||
|
||||
var rowItems = new List<Row>();
|
||||
|
||||
var roms = item.Read<Models.Metadata.Rom[]>(Models.Metadata.Machine.RomKey);
|
||||
var roms = item.Read<Serialization.Models.Metadata.Rom[]>(Serialization.Models.Metadata.Machine.RomKey);
|
||||
if (roms != null)
|
||||
{
|
||||
rowItems.AddRange(Array.ConvertAll(roms, ConvertFromInternalModel));
|
||||
}
|
||||
|
||||
var disks = item.Read<Models.Metadata.Disk[]>(Models.Metadata.Machine.DiskKey);
|
||||
var disks = item.Read<Serialization.Models.Metadata.Disk[]>(Serialization.Models.Metadata.Machine.DiskKey);
|
||||
if (disks != null)
|
||||
rowItems.AddRange(Array.ConvertAll(disks, ConvertFromInternalModel));
|
||||
|
||||
@@ -50,41 +50,41 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Disk"/> to <see cref="Models.Listrom.Row"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Disk"/> to <see cref="Row"/>
|
||||
/// </summary>
|
||||
private static Row ConvertFromInternalModel(Models.Metadata.Disk item)
|
||||
private static Row ConvertFromInternalModel(Serialization.Models.Metadata.Disk item)
|
||||
{
|
||||
var row = new Row
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Disk.NameKey),
|
||||
MD5 = item.ReadString(Models.Metadata.Disk.MD5Key),
|
||||
SHA1 = item.ReadString(Models.Metadata.Disk.SHA1Key),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Disk.NameKey),
|
||||
MD5 = item.ReadString(Serialization.Models.Metadata.Disk.MD5Key),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Disk.SHA1Key),
|
||||
};
|
||||
|
||||
if (item[Models.Metadata.Disk.StatusKey] as string == "nodump")
|
||||
if (item[Serialization.Models.Metadata.Disk.StatusKey] as string == "nodump")
|
||||
row.NoGoodDumpKnown = true;
|
||||
else if (item[Models.Metadata.Disk.StatusKey] as string == "baddump")
|
||||
else if (item[Serialization.Models.Metadata.Disk.StatusKey] as string == "baddump")
|
||||
row.Bad = true;
|
||||
|
||||
return row;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.Listrom.Row"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="Row"/>
|
||||
/// </summary>
|
||||
private static Row ConvertFromInternalModel(Models.Metadata.Rom item)
|
||||
private static Row ConvertFromInternalModel(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var row = new Row
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Size = item.ReadString(Models.Metadata.Rom.SizeKey),
|
||||
CRC = item.ReadString(Models.Metadata.Rom.CRCKey),
|
||||
SHA1 = item.ReadString(Models.Metadata.Rom.SHA1Key),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
Size = item.ReadString(Serialization.Models.Metadata.Rom.SizeKey),
|
||||
CRC = item.ReadString(Serialization.Models.Metadata.Rom.CRCKey),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Rom.SHA1Key),
|
||||
};
|
||||
|
||||
if (item[Models.Metadata.Rom.StatusKey] as string == "nodump")
|
||||
if (item[Serialization.Models.Metadata.Rom.StatusKey] as string == "nodump")
|
||||
row.NoGoodDumpKnown = true;
|
||||
else if (item[Models.Metadata.Rom.StatusKey] as string == "baddump")
|
||||
else if (item[Serialization.Models.Metadata.Rom.StatusKey] as string == "baddump")
|
||||
row.Bad = true;
|
||||
|
||||
return row;
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using SabreTools.Models.Listrom;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.Listrom;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class Listrom : IModelSerializer<MetadataFile, Models.Metadata.MetadataFile>
|
||||
public partial class Listrom : IModelSerializer<MetadataFile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Metadata.MetadataFile? Serialize(MetadataFile? obj)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile
|
||||
{
|
||||
[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(),
|
||||
[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(),
|
||||
};
|
||||
|
||||
if (obj?.Set != null && obj.Set.Length > 0)
|
||||
{
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey]
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey]
|
||||
= Array.ConvertAll(obj.Set, ConvertMachineToInternalModel);
|
||||
}
|
||||
|
||||
@@ -28,90 +28,90 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listrom.MetadataFile"/> to <see cref="Header"/>
|
||||
/// Convert from <see cref="MetadataFile"/> to <see cref="Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel()
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel()
|
||||
{
|
||||
var header = new Models.Metadata.Header
|
||||
var header = new Serialization.Models.Metadata.Header
|
||||
{
|
||||
[Models.Metadata.Header.NameKey] = "MAME Listrom",
|
||||
[Serialization.Models.Metadata.Header.NameKey] = "MAME Listrom",
|
||||
};
|
||||
return header;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listrom.Set"/> to <see cref="Models.Metadata.Machine"/>
|
||||
/// Convert from <see cref="Set"/> to <see cref="Serialization.Models.Metadata.Machine"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Machine ConvertMachineToInternalModel(Set item)
|
||||
private static Serialization.Models.Metadata.Machine ConvertMachineToInternalModel(Set item)
|
||||
{
|
||||
var machine = new Models.Metadata.Machine();
|
||||
var machine = new Serialization.Models.Metadata.Machine();
|
||||
if (!string.IsNullOrEmpty(item.Device))
|
||||
{
|
||||
machine[Models.Metadata.Machine.NameKey] = item.Device;
|
||||
machine[Models.Metadata.Machine.IsDeviceKey] = "yes";
|
||||
machine[Serialization.Models.Metadata.Machine.NameKey] = item.Device;
|
||||
machine[Serialization.Models.Metadata.Machine.IsDeviceKey] = "yes";
|
||||
}
|
||||
else
|
||||
{
|
||||
machine[Models.Metadata.Machine.NameKey] = item.Driver;
|
||||
machine[Serialization.Models.Metadata.Machine.NameKey] = item.Driver;
|
||||
}
|
||||
|
||||
if (item.Row != null && item.Row.Length > 0)
|
||||
{
|
||||
var disks = new List<Models.Metadata.Disk>();
|
||||
var roms = new List<Models.Metadata.Rom>();
|
||||
var disks = new List<Serialization.Models.Metadata.Disk>();
|
||||
var roms = new List<Serialization.Models.Metadata.Rom>();
|
||||
foreach (var file in item.Row)
|
||||
{
|
||||
var datItem = ConvertToInternalModel(file);
|
||||
if (datItem is Models.Metadata.Disk disk)
|
||||
if (datItem is Serialization.Models.Metadata.Disk disk)
|
||||
disks.Add(disk);
|
||||
else if (datItem is Models.Metadata.Rom rom)
|
||||
else if (datItem is Serialization.Models.Metadata.Rom rom)
|
||||
roms.Add(rom);
|
||||
}
|
||||
|
||||
machine[Models.Metadata.Machine.DiskKey] = disks.ToArray();
|
||||
machine[Models.Metadata.Machine.RomKey] = roms.ToArray();
|
||||
machine[Serialization.Models.Metadata.Machine.DiskKey] = disks.ToArray();
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey] = roms.ToArray();
|
||||
}
|
||||
|
||||
return machine;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listrom.Row"/> to <see cref="Models.Metadata.DatItem"/>
|
||||
/// Convert from <see cref="Row"/> to <see cref="Serialization.Models.Metadata.DatItem"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.DatItem ConvertToInternalModel(Row item)
|
||||
private static Serialization.Models.Metadata.DatItem ConvertToInternalModel(Row item)
|
||||
{
|
||||
if (item.Size == null)
|
||||
{
|
||||
var disk = new Models.Metadata.Disk
|
||||
var disk = new Serialization.Models.Metadata.Disk
|
||||
{
|
||||
[Models.Metadata.DatItem.TypeKey] = "disk",
|
||||
[Models.Metadata.Disk.NameKey] = item.Name,
|
||||
[Models.Metadata.Disk.MD5Key] = item.MD5,
|
||||
[Models.Metadata.Disk.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.DatItem.TypeKey] = "disk",
|
||||
[Serialization.Models.Metadata.Disk.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Disk.MD5Key] = item.MD5,
|
||||
[Serialization.Models.Metadata.Disk.SHA1Key] = item.SHA1,
|
||||
};
|
||||
|
||||
if (item.NoGoodDumpKnown)
|
||||
disk[Models.Metadata.Disk.StatusKey] = "nodump";
|
||||
disk[Serialization.Models.Metadata.Disk.StatusKey] = "nodump";
|
||||
else if (item.Bad)
|
||||
disk[Models.Metadata.Disk.StatusKey] = "baddump";
|
||||
disk[Serialization.Models.Metadata.Disk.StatusKey] = "baddump";
|
||||
|
||||
return disk;
|
||||
}
|
||||
else
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.DatItem.TypeKey] = "rom",
|
||||
[Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Models.Metadata.Rom.CRCKey] = item.CRC,
|
||||
[Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.DatItem.TypeKey] = "rom",
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Serialization.Models.Metadata.Rom.CRCKey] = item.CRC,
|
||||
[Serialization.Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
};
|
||||
|
||||
if (item.NoGoodDumpKnown)
|
||||
rom[Models.Metadata.Rom.StatusKey] = "nodump";
|
||||
rom[Serialization.Models.Metadata.Rom.StatusKey] = "nodump";
|
||||
else if (item.Bad)
|
||||
rom[Models.Metadata.Rom.StatusKey] = "baddump";
|
||||
rom[Serialization.Models.Metadata.Rom.StatusKey] = "baddump";
|
||||
|
||||
return rom;
|
||||
}
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
using System;
|
||||
using SabreTools.Models.Listxml;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.Listxml;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class Listxml : IModelSerializer<Mame, Models.Metadata.MetadataFile>
|
||||
public partial class Listxml : IModelSerializer<Mame, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Mame? Deserialize(Models.Metadata.MetadataFile? obj)
|
||||
public Mame? Deserialize(Serialization.Models.Metadata.MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var header = obj.Read<Models.Metadata.Header>(Models.Metadata.MetadataFile.HeaderKey);
|
||||
var header = obj.Read<Serialization.Models.Metadata.Header>(Serialization.Models.Metadata.MetadataFile.HeaderKey);
|
||||
var mame = header != null ? ConvertMameFromInternalModel(header) : new Mame();
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
if (machines != null && machines.Length > 0)
|
||||
mame.Game = Array.ConvertAll(machines, ConvertMachineFromInternalModel);
|
||||
|
||||
@@ -23,119 +23,119 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Models.Metadata.Header"/> to <see cref="Models.Listxml.Mame"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Header"/> to <see cref="Mame"/>
|
||||
/// </summary>
|
||||
private static Mame ConvertMameFromInternalModel(Models.Metadata.Header item)
|
||||
private static Mame ConvertMameFromInternalModel(Serialization.Models.Metadata.Header item)
|
||||
{
|
||||
var mame = new Mame
|
||||
{
|
||||
Build = item.ReadString(Models.Metadata.Header.BuildKey),
|
||||
Debug = item.ReadString(Models.Metadata.Header.DebugKey),
|
||||
MameConfig = item.ReadString(Models.Metadata.Header.MameConfigKey),
|
||||
Build = item.ReadString(Serialization.Models.Metadata.Header.BuildKey),
|
||||
Debug = item.ReadString(Serialization.Models.Metadata.Header.DebugKey),
|
||||
MameConfig = item.ReadString(Serialization.Models.Metadata.Header.MameConfigKey),
|
||||
};
|
||||
|
||||
return mame;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Models.Metadata.Machine"/> to <see cref="Models.Listxml.GameBase"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Machine"/> to <see cref="GameBase"/>
|
||||
/// </summary>
|
||||
internal static GameBase ConvertMachineFromInternalModel(Models.Metadata.Machine item)
|
||||
internal static GameBase ConvertMachineFromInternalModel(Serialization.Models.Metadata.Machine item)
|
||||
{
|
||||
var machine = new Machine
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Machine.NameKey),
|
||||
SourceFile = item.ReadString(Models.Metadata.Machine.SourceFileKey),
|
||||
IsBios = item.ReadString(Models.Metadata.Machine.IsBiosKey),
|
||||
IsDevice = item.ReadString(Models.Metadata.Machine.IsDeviceKey),
|
||||
IsMechanical = item.ReadString(Models.Metadata.Machine.IsMechanicalKey),
|
||||
Runnable = item.ReadString(Models.Metadata.Machine.RunnableKey),
|
||||
CloneOf = item.ReadString(Models.Metadata.Machine.CloneOfKey),
|
||||
RomOf = item.ReadString(Models.Metadata.Machine.RomOfKey),
|
||||
SampleOf = item.ReadString(Models.Metadata.Machine.SampleOfKey),
|
||||
Description = item.ReadString(Models.Metadata.Machine.DescriptionKey),
|
||||
Year = item.ReadString(Models.Metadata.Machine.YearKey),
|
||||
Manufacturer = item.ReadString(Models.Metadata.Machine.ManufacturerKey),
|
||||
History = item.ReadString(Models.Metadata.Machine.HistoryKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Machine.NameKey),
|
||||
SourceFile = item.ReadString(Serialization.Models.Metadata.Machine.SourceFileKey),
|
||||
IsBios = item.ReadString(Serialization.Models.Metadata.Machine.IsBiosKey),
|
||||
IsDevice = item.ReadString(Serialization.Models.Metadata.Machine.IsDeviceKey),
|
||||
IsMechanical = item.ReadString(Serialization.Models.Metadata.Machine.IsMechanicalKey),
|
||||
Runnable = item.ReadString(Serialization.Models.Metadata.Machine.RunnableKey),
|
||||
CloneOf = item.ReadString(Serialization.Models.Metadata.Machine.CloneOfKey),
|
||||
RomOf = item.ReadString(Serialization.Models.Metadata.Machine.RomOfKey),
|
||||
SampleOf = item.ReadString(Serialization.Models.Metadata.Machine.SampleOfKey),
|
||||
Description = item.ReadString(Serialization.Models.Metadata.Machine.DescriptionKey),
|
||||
Year = item.ReadString(Serialization.Models.Metadata.Machine.YearKey),
|
||||
Manufacturer = item.ReadString(Serialization.Models.Metadata.Machine.ManufacturerKey),
|
||||
History = item.ReadString(Serialization.Models.Metadata.Machine.HistoryKey),
|
||||
};
|
||||
|
||||
var biosSets = item.Read<Models.Metadata.BiosSet[]>(Models.Metadata.Machine.BiosSetKey);
|
||||
var biosSets = item.Read<Serialization.Models.Metadata.BiosSet[]>(Serialization.Models.Metadata.Machine.BiosSetKey);
|
||||
if (biosSets != null && biosSets.Length > 0)
|
||||
machine.BiosSet = Array.ConvertAll(biosSets, ConvertFromInternalModel);
|
||||
|
||||
var roms = item.Read<Models.Metadata.Rom[]>(Models.Metadata.Machine.RomKey);
|
||||
var roms = item.Read<Serialization.Models.Metadata.Rom[]>(Serialization.Models.Metadata.Machine.RomKey);
|
||||
if (roms != null && roms.Length > 0)
|
||||
machine.Rom = Array.ConvertAll(roms, ConvertFromInternalModel);
|
||||
|
||||
var disks = item.Read<Models.Metadata.Disk[]>(Models.Metadata.Machine.DiskKey);
|
||||
var disks = item.Read<Serialization.Models.Metadata.Disk[]>(Serialization.Models.Metadata.Machine.DiskKey);
|
||||
if (disks != null && disks.Length > 0)
|
||||
machine.Disk = Array.ConvertAll(disks, ConvertFromInternalModel);
|
||||
|
||||
var deviceRefs = item.Read<Models.Metadata.DeviceRef[]>(Models.Metadata.Machine.DeviceRefKey);
|
||||
var deviceRefs = item.Read<Serialization.Models.Metadata.DeviceRef[]>(Serialization.Models.Metadata.Machine.DeviceRefKey);
|
||||
if (deviceRefs != null && deviceRefs.Length > 0)
|
||||
machine.DeviceRef = Array.ConvertAll(deviceRefs, ConvertFromInternalModel);
|
||||
|
||||
var samples = item.Read<Models.Metadata.Sample[]>(Models.Metadata.Machine.SampleKey);
|
||||
var samples = item.Read<Serialization.Models.Metadata.Sample[]>(Serialization.Models.Metadata.Machine.SampleKey);
|
||||
if (samples != null && samples.Length > 0)
|
||||
machine.Sample = Array.ConvertAll(samples, ConvertFromInternalModel);
|
||||
|
||||
var chips = item.Read<Models.Metadata.Chip[]>(Models.Metadata.Machine.ChipKey);
|
||||
var chips = item.Read<Serialization.Models.Metadata.Chip[]>(Serialization.Models.Metadata.Machine.ChipKey);
|
||||
if (chips != null && chips.Length > 0)
|
||||
machine.Chip = Array.ConvertAll(chips, ConvertFromInternalModel);
|
||||
|
||||
var displays = item.Read<Models.Metadata.Display[]>(Models.Metadata.Machine.DisplayKey);
|
||||
var displays = item.Read<Serialization.Models.Metadata.Display[]>(Serialization.Models.Metadata.Machine.DisplayKey);
|
||||
if (displays != null && displays.Length > 0)
|
||||
machine.Display = Array.ConvertAll(displays, ConvertFromInternalModel);
|
||||
|
||||
var videos = item.Read<Models.Metadata.Video[]>(Models.Metadata.Machine.VideoKey);
|
||||
var videos = item.Read<Serialization.Models.Metadata.Video[]>(Serialization.Models.Metadata.Machine.VideoKey);
|
||||
if (videos != null && videos.Length > 0)
|
||||
machine.Video = Array.ConvertAll(videos, ConvertFromInternalModel);
|
||||
|
||||
var sound = item.Read<Models.Metadata.Sound>(Models.Metadata.Machine.SoundKey);
|
||||
var sound = item.Read<Serialization.Models.Metadata.Sound>(Serialization.Models.Metadata.Machine.SoundKey);
|
||||
if (sound != null)
|
||||
machine.Sound = ConvertFromInternalModel(sound);
|
||||
|
||||
var input = item.Read<Models.Metadata.Input>(Models.Metadata.Machine.InputKey);
|
||||
var input = item.Read<Serialization.Models.Metadata.Input>(Serialization.Models.Metadata.Machine.InputKey);
|
||||
if (input != null)
|
||||
machine.Input = ConvertFromInternalModel(input);
|
||||
|
||||
var dipSwitches = item.Read<Models.Metadata.DipSwitch[]>(Models.Metadata.Machine.DipSwitchKey);
|
||||
var dipSwitches = item.Read<Serialization.Models.Metadata.DipSwitch[]>(Serialization.Models.Metadata.Machine.DipSwitchKey);
|
||||
if (dipSwitches != null && dipSwitches.Length > 0)
|
||||
machine.DipSwitch = Array.ConvertAll(dipSwitches, ConvertFromInternalModel);
|
||||
|
||||
var configurations = item.Read<Models.Metadata.Configuration[]>(Models.Metadata.Machine.ConfigurationKey);
|
||||
var configurations = item.Read<Serialization.Models.Metadata.Configuration[]>(Serialization.Models.Metadata.Machine.ConfigurationKey);
|
||||
if (configurations != null && configurations.Length > 0)
|
||||
machine.Configuration = Array.ConvertAll(configurations, ConvertFromInternalModel);
|
||||
|
||||
var ports = item.Read<Models.Metadata.Port[]>(Models.Metadata.Machine.PortKey);
|
||||
var ports = item.Read<Serialization.Models.Metadata.Port[]>(Serialization.Models.Metadata.Machine.PortKey);
|
||||
if (ports != null && ports.Length > 0)
|
||||
machine.Port = Array.ConvertAll(ports, ConvertFromInternalModel);
|
||||
|
||||
var adjusters = item.Read<Models.Metadata.Adjuster[]>(Models.Metadata.Machine.AdjusterKey);
|
||||
var adjusters = item.Read<Serialization.Models.Metadata.Adjuster[]>(Serialization.Models.Metadata.Machine.AdjusterKey);
|
||||
if (adjusters != null && adjusters.Length > 0)
|
||||
machine.Adjuster = Array.ConvertAll(adjusters, ConvertFromInternalModel);
|
||||
|
||||
var driver = item.Read<Models.Metadata.Driver>(Models.Metadata.Machine.DriverKey);
|
||||
var driver = item.Read<Serialization.Models.Metadata.Driver>(Serialization.Models.Metadata.Machine.DriverKey);
|
||||
if (driver != null)
|
||||
machine.Driver = ConvertFromInternalModel(driver);
|
||||
|
||||
var features = item.Read<Models.Metadata.Feature[]>(Models.Metadata.Machine.FeatureKey);
|
||||
var features = item.Read<Serialization.Models.Metadata.Feature[]>(Serialization.Models.Metadata.Machine.FeatureKey);
|
||||
if (features != null && features.Length > 0)
|
||||
machine.Feature = Array.ConvertAll(features, ConvertFromInternalModel);
|
||||
|
||||
var devices = item.Read<Models.Metadata.Device[]>(Models.Metadata.Machine.DeviceKey);
|
||||
var devices = item.Read<Serialization.Models.Metadata.Device[]>(Serialization.Models.Metadata.Machine.DeviceKey);
|
||||
if (devices != null && devices.Length > 0)
|
||||
machine.Device = Array.ConvertAll(devices, ConvertFromInternalModel);
|
||||
|
||||
var slots = item.Read<Models.Metadata.Slot[]>(Models.Metadata.Machine.SlotKey);
|
||||
var slots = item.Read<Serialization.Models.Metadata.Slot[]>(Serialization.Models.Metadata.Machine.SlotKey);
|
||||
if (slots != null && slots.Length > 0)
|
||||
machine.Slot = Array.ConvertAll(slots, ConvertFromInternalModel);
|
||||
|
||||
var softwareLists = item.Read<Models.Metadata.SoftwareList[]>(Models.Metadata.Machine.SoftwareListKey);
|
||||
var softwareLists = item.Read<Serialization.Models.Metadata.SoftwareList[]>(Serialization.Models.Metadata.Machine.SoftwareListKey);
|
||||
if (softwareLists != null && softwareLists.Length > 0)
|
||||
machine.SoftwareList = Array.ConvertAll(softwareLists, ConvertFromInternalModel);
|
||||
|
||||
var ramOptions = item.Read<Models.Metadata.RamOption[]>(Models.Metadata.Machine.RamOptionKey);
|
||||
var ramOptions = item.Read<Serialization.Models.Metadata.RamOption[]>(Serialization.Models.Metadata.Machine.RamOptionKey);
|
||||
if (ramOptions != null && ramOptions.Length > 0)
|
||||
machine.RamOption = Array.ConvertAll(ramOptions, ConvertFromInternalModel);
|
||||
|
||||
@@ -143,17 +143,17 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Models.Metadata.Adjuster"/> to <see cref="Models.Listxml.Adjuster"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Adjuster"/> to <see cref="Adjuster"/>
|
||||
/// </summary>
|
||||
private static Adjuster ConvertFromInternalModel(Models.Metadata.Adjuster item)
|
||||
private static Adjuster ConvertFromInternalModel(Serialization.Models.Metadata.Adjuster item)
|
||||
{
|
||||
var adjuster = new Adjuster
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Adjuster.NameKey),
|
||||
Default = item.ReadString(Models.Metadata.Adjuster.DefaultKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Adjuster.NameKey),
|
||||
Default = item.ReadString(Serialization.Models.Metadata.Adjuster.DefaultKey),
|
||||
};
|
||||
|
||||
var condition = item.Read<Models.Metadata.Condition>(Models.Metadata.Adjuster.ConditionKey);
|
||||
var condition = item.Read<Serialization.Models.Metadata.Condition>(Serialization.Models.Metadata.Adjuster.ConditionKey);
|
||||
if (condition != null)
|
||||
adjuster.Condition = ConvertFromInternalModel(condition);
|
||||
|
||||
@@ -161,83 +161,83 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Models.Metadata.Analog"/> to <see cref="Models.Listxml.Analog"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Analog"/> to <see cref="Analog"/>
|
||||
/// </summary>
|
||||
private static Analog ConvertFromInternalModel(Models.Metadata.Analog item)
|
||||
private static Analog ConvertFromInternalModel(Serialization.Models.Metadata.Analog item)
|
||||
{
|
||||
var analog = new Analog
|
||||
{
|
||||
Mask = item.ReadString(Models.Metadata.Analog.MaskKey),
|
||||
Mask = item.ReadString(Serialization.Models.Metadata.Analog.MaskKey),
|
||||
};
|
||||
return analog;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Models.Metadata.BiosSet"/> to <see cref="Models.Listxml.BiosSet"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.BiosSet"/> to <see cref="BiosSet"/>
|
||||
/// </summary>
|
||||
private static BiosSet ConvertFromInternalModel(Models.Metadata.BiosSet item)
|
||||
private static BiosSet ConvertFromInternalModel(Serialization.Models.Metadata.BiosSet item)
|
||||
{
|
||||
var biosset = new BiosSet
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.BiosSet.NameKey),
|
||||
Description = item.ReadString(Models.Metadata.BiosSet.DescriptionKey),
|
||||
Default = item.ReadString(Models.Metadata.BiosSet.DefaultKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.BiosSet.NameKey),
|
||||
Description = item.ReadString(Serialization.Models.Metadata.BiosSet.DescriptionKey),
|
||||
Default = item.ReadString(Serialization.Models.Metadata.BiosSet.DefaultKey),
|
||||
};
|
||||
return biosset;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Models.Metadata.Chip"/> to <see cref="Models.Listxml.Chip"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Chip"/> to <see cref="Chip"/>
|
||||
/// </summary>
|
||||
private static Chip ConvertFromInternalModel(Models.Metadata.Chip item)
|
||||
private static Chip ConvertFromInternalModel(Serialization.Models.Metadata.Chip item)
|
||||
{
|
||||
var chip = new Chip
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Chip.NameKey),
|
||||
Tag = item.ReadString(Models.Metadata.Chip.TagKey),
|
||||
Type = item.ReadString(Models.Metadata.Chip.ChipTypeKey),
|
||||
SoundOnly = item.ReadString(Models.Metadata.Chip.SoundOnlyKey),
|
||||
Clock = item.ReadString(Models.Metadata.Chip.ClockKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Chip.NameKey),
|
||||
Tag = item.ReadString(Serialization.Models.Metadata.Chip.TagKey),
|
||||
Type = item.ReadString(Serialization.Models.Metadata.Chip.ChipTypeKey),
|
||||
SoundOnly = item.ReadString(Serialization.Models.Metadata.Chip.SoundOnlyKey),
|
||||
Clock = item.ReadString(Serialization.Models.Metadata.Chip.ClockKey),
|
||||
};
|
||||
return chip;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Models.Metadata.Condition"/> to <see cref="Models.Listxml.Condition"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Condition"/> to <see cref="Condition"/>
|
||||
/// </summary>
|
||||
private static Condition ConvertFromInternalModel(Models.Metadata.Condition item)
|
||||
private static Condition ConvertFromInternalModel(Serialization.Models.Metadata.Condition item)
|
||||
{
|
||||
var condition = new Condition
|
||||
{
|
||||
Tag = item.ReadString(Models.Metadata.Condition.TagKey),
|
||||
Mask = item.ReadString(Models.Metadata.Condition.MaskKey),
|
||||
Relation = item.ReadString(Models.Metadata.Condition.RelationKey),
|
||||
Value = item.ReadString(Models.Metadata.Condition.ValueKey),
|
||||
Tag = item.ReadString(Serialization.Models.Metadata.Condition.TagKey),
|
||||
Mask = item.ReadString(Serialization.Models.Metadata.Condition.MaskKey),
|
||||
Relation = item.ReadString(Serialization.Models.Metadata.Condition.RelationKey),
|
||||
Value = item.ReadString(Serialization.Models.Metadata.Condition.ValueKey),
|
||||
};
|
||||
return condition;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Models.Metadata.Configuration"/> to <see cref="Models.Listxml.Configuration"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Configuration"/> to <see cref="Configuration"/>
|
||||
/// </summary>
|
||||
private static Configuration ConvertFromInternalModel(Models.Metadata.Configuration item)
|
||||
private static Configuration ConvertFromInternalModel(Serialization.Models.Metadata.Configuration item)
|
||||
{
|
||||
var configuration = new Configuration
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Configuration.NameKey),
|
||||
Tag = item.ReadString(Models.Metadata.Configuration.TagKey),
|
||||
Mask = item.ReadString(Models.Metadata.Configuration.MaskKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Configuration.NameKey),
|
||||
Tag = item.ReadString(Serialization.Models.Metadata.Configuration.TagKey),
|
||||
Mask = item.ReadString(Serialization.Models.Metadata.Configuration.MaskKey),
|
||||
};
|
||||
|
||||
var condition = item.Read<Models.Metadata.Condition>(Models.Metadata.Configuration.ConditionKey);
|
||||
var condition = item.Read<Serialization.Models.Metadata.Condition>(Serialization.Models.Metadata.Configuration.ConditionKey);
|
||||
if (condition != null)
|
||||
configuration.Condition = ConvertFromInternalModel(condition);
|
||||
|
||||
var confLocations = item.Read<Models.Metadata.ConfLocation[]>(Models.Metadata.Configuration.ConfLocationKey);
|
||||
var confLocations = item.Read<Serialization.Models.Metadata.ConfLocation[]>(Serialization.Models.Metadata.Configuration.ConfLocationKey);
|
||||
if (confLocations != null && confLocations.Length > 0)
|
||||
configuration.ConfLocation = Array.ConvertAll(confLocations, ConvertFromInternalModel);
|
||||
|
||||
var confSettings = item.Read<Models.Metadata.ConfSetting[]>(Models.Metadata.Configuration.ConfSettingKey);
|
||||
var confSettings = item.Read<Serialization.Models.Metadata.ConfSetting[]>(Serialization.Models.Metadata.Configuration.ConfSettingKey);
|
||||
if (confSettings != null && confSettings.Length > 0)
|
||||
configuration.ConfSetting = Array.ConvertAll(confSettings, ConvertFromInternalModel);
|
||||
|
||||
@@ -245,32 +245,32 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Models.Metadata.ConfLocation"/> to <see cref="Models.Listxml.ConfLocation"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.ConfLocation"/> to <see cref="ConfLocation"/>
|
||||
/// </summary>
|
||||
private static ConfLocation ConvertFromInternalModel(Models.Metadata.ConfLocation item)
|
||||
private static ConfLocation ConvertFromInternalModel(Serialization.Models.Metadata.ConfLocation item)
|
||||
{
|
||||
var confLocation = new ConfLocation
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.ConfLocation.NameKey),
|
||||
Number = item.ReadString(Models.Metadata.ConfLocation.NumberKey),
|
||||
Inverted = item.ReadString(Models.Metadata.ConfLocation.InvertedKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.ConfLocation.NameKey),
|
||||
Number = item.ReadString(Serialization.Models.Metadata.ConfLocation.NumberKey),
|
||||
Inverted = item.ReadString(Serialization.Models.Metadata.ConfLocation.InvertedKey),
|
||||
};
|
||||
return confLocation;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Models.Metadata.ConfSetting"/> to <see cref="Models.Listxml.ConfSetting"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.ConfSetting"/> to <see cref="ConfSetting"/>
|
||||
/// </summary>
|
||||
private static ConfSetting ConvertFromInternalModel(Models.Metadata.ConfSetting item)
|
||||
private static ConfSetting ConvertFromInternalModel(Serialization.Models.Metadata.ConfSetting item)
|
||||
{
|
||||
var confSetting = new ConfSetting
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.ConfSetting.NameKey),
|
||||
Value = item.ReadString(Models.Metadata.ConfSetting.ValueKey),
|
||||
Default = item.ReadString(Models.Metadata.ConfSetting.DefaultKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.ConfSetting.NameKey),
|
||||
Value = item.ReadString(Serialization.Models.Metadata.ConfSetting.ValueKey),
|
||||
Default = item.ReadString(Serialization.Models.Metadata.ConfSetting.DefaultKey),
|
||||
};
|
||||
|
||||
var condition = item.Read<Models.Metadata.Condition>(Models.Metadata.ConfSetting.ConditionKey);
|
||||
var condition = item.Read<Serialization.Models.Metadata.Condition>(Serialization.Models.Metadata.ConfSetting.ConditionKey);
|
||||
if (condition != null)
|
||||
confSetting.Condition = ConvertFromInternalModel(condition);
|
||||
|
||||
@@ -278,47 +278,47 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Models.Metadata.Control"/> to <see cref="Models.Listxml.Control"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Control"/> to <see cref="Control"/>
|
||||
/// </summary>
|
||||
private static Control ConvertFromInternalModel(Models.Metadata.Control item)
|
||||
private static Control ConvertFromInternalModel(Serialization.Models.Metadata.Control item)
|
||||
{
|
||||
var control = new Control
|
||||
{
|
||||
Type = item.ReadString(Models.Metadata.Control.ControlTypeKey),
|
||||
Player = item.ReadString(Models.Metadata.Control.PlayerKey),
|
||||
Buttons = item.ReadString(Models.Metadata.Control.ButtonsKey),
|
||||
ReqButtons = item.ReadString(Models.Metadata.Control.ReqButtonsKey),
|
||||
Minimum = item.ReadString(Models.Metadata.Control.MinimumKey),
|
||||
Maximum = item.ReadString(Models.Metadata.Control.MaximumKey),
|
||||
Sensitivity = item.ReadString(Models.Metadata.Control.SensitivityKey),
|
||||
KeyDelta = item.ReadString(Models.Metadata.Control.KeyDeltaKey),
|
||||
Reverse = item.ReadString(Models.Metadata.Control.ReverseKey),
|
||||
Ways = item.ReadString(Models.Metadata.Control.WaysKey),
|
||||
Ways2 = item.ReadString(Models.Metadata.Control.Ways2Key),
|
||||
Ways3 = item.ReadString(Models.Metadata.Control.Ways3Key),
|
||||
Type = item.ReadString(Serialization.Models.Metadata.Control.ControlTypeKey),
|
||||
Player = item.ReadString(Serialization.Models.Metadata.Control.PlayerKey),
|
||||
Buttons = item.ReadString(Serialization.Models.Metadata.Control.ButtonsKey),
|
||||
ReqButtons = item.ReadString(Serialization.Models.Metadata.Control.ReqButtonsKey),
|
||||
Minimum = item.ReadString(Serialization.Models.Metadata.Control.MinimumKey),
|
||||
Maximum = item.ReadString(Serialization.Models.Metadata.Control.MaximumKey),
|
||||
Sensitivity = item.ReadString(Serialization.Models.Metadata.Control.SensitivityKey),
|
||||
KeyDelta = item.ReadString(Serialization.Models.Metadata.Control.KeyDeltaKey),
|
||||
Reverse = item.ReadString(Serialization.Models.Metadata.Control.ReverseKey),
|
||||
Ways = item.ReadString(Serialization.Models.Metadata.Control.WaysKey),
|
||||
Ways2 = item.ReadString(Serialization.Models.Metadata.Control.Ways2Key),
|
||||
Ways3 = item.ReadString(Serialization.Models.Metadata.Control.Ways3Key),
|
||||
};
|
||||
return control;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Models.Metadata.Device"/> to <see cref="Models.Listxml.Device"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Device"/> to <see cref="Device"/>
|
||||
/// </summary>
|
||||
private static Device ConvertFromInternalModel(Models.Metadata.Device item)
|
||||
private static Device ConvertFromInternalModel(Serialization.Models.Metadata.Device item)
|
||||
{
|
||||
var device = new Device
|
||||
{
|
||||
Type = item.ReadString(Models.Metadata.Device.DeviceTypeKey),
|
||||
Tag = item.ReadString(Models.Metadata.Device.TagKey),
|
||||
FixedImage = item.ReadString(Models.Metadata.Device.FixedImageKey),
|
||||
Mandatory = item.ReadString(Models.Metadata.Device.MandatoryKey),
|
||||
Interface = item.ReadString(Models.Metadata.Device.InterfaceKey),
|
||||
Type = item.ReadString(Serialization.Models.Metadata.Device.DeviceTypeKey),
|
||||
Tag = item.ReadString(Serialization.Models.Metadata.Device.TagKey),
|
||||
FixedImage = item.ReadString(Serialization.Models.Metadata.Device.FixedImageKey),
|
||||
Mandatory = item.ReadString(Serialization.Models.Metadata.Device.MandatoryKey),
|
||||
Interface = item.ReadString(Serialization.Models.Metadata.Device.InterfaceKey),
|
||||
};
|
||||
|
||||
var instance = item.Read<Models.Metadata.Instance>(Models.Metadata.Device.InstanceKey);
|
||||
var instance = item.Read<Serialization.Models.Metadata.Instance>(Serialization.Models.Metadata.Device.InstanceKey);
|
||||
if (instance != null)
|
||||
device.Instance = ConvertFromInternalModel(instance);
|
||||
|
||||
var extensions = item.Read<Models.Metadata.Extension[]>(Models.Metadata.Device.ExtensionKey);
|
||||
var extensions = item.Read<Serialization.Models.Metadata.Extension[]>(Serialization.Models.Metadata.Device.ExtensionKey);
|
||||
if (extensions != null && extensions.Length > 0)
|
||||
device.Extension = Array.ConvertAll(extensions, ConvertFromInternalModel);
|
||||
|
||||
@@ -326,52 +326,52 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.DeviceRef"/> to <see cref="Models.Listxml.DeviceRef"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.DeviceRef"/> to <see cref="DeviceRef"/>
|
||||
/// </summary>
|
||||
private static DeviceRef ConvertFromInternalModel(Models.Metadata.DeviceRef item)
|
||||
private static DeviceRef ConvertFromInternalModel(Serialization.Models.Metadata.DeviceRef item)
|
||||
{
|
||||
var deviceRef = new DeviceRef
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.DeviceRef.NameKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.DeviceRef.NameKey),
|
||||
};
|
||||
return deviceRef;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.DipLocation"/> to <see cref="Models.Listxml.DipLocation"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.DipLocation"/> to <see cref="DipLocation"/>
|
||||
/// </summary>
|
||||
private static DipLocation ConvertFromInternalModel(Models.Metadata.DipLocation item)
|
||||
private static DipLocation ConvertFromInternalModel(Serialization.Models.Metadata.DipLocation item)
|
||||
{
|
||||
var dipLocation = new DipLocation
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.DipLocation.NameKey),
|
||||
Number = item.ReadString(Models.Metadata.DipLocation.NumberKey),
|
||||
Inverted = item.ReadString(Models.Metadata.DipLocation.InvertedKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.DipLocation.NameKey),
|
||||
Number = item.ReadString(Serialization.Models.Metadata.DipLocation.NumberKey),
|
||||
Inverted = item.ReadString(Serialization.Models.Metadata.DipLocation.InvertedKey),
|
||||
};
|
||||
return dipLocation;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.DipSwitch"/> to <see cref="Models.Listxml.DipSwitch"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.DipSwitch"/> to <see cref="DipSwitch"/>
|
||||
/// </summary>
|
||||
private static DipSwitch ConvertFromInternalModel(Models.Metadata.DipSwitch item)
|
||||
private static DipSwitch ConvertFromInternalModel(Serialization.Models.Metadata.DipSwitch item)
|
||||
{
|
||||
var dipSwitch = new DipSwitch
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.DipSwitch.NameKey),
|
||||
Tag = item.ReadString(Models.Metadata.DipSwitch.TagKey),
|
||||
Mask = item.ReadString(Models.Metadata.DipSwitch.MaskKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.DipSwitch.NameKey),
|
||||
Tag = item.ReadString(Serialization.Models.Metadata.DipSwitch.TagKey),
|
||||
Mask = item.ReadString(Serialization.Models.Metadata.DipSwitch.MaskKey),
|
||||
};
|
||||
|
||||
var condition = item.Read<Models.Metadata.Condition>(Models.Metadata.DipSwitch.ConditionKey);
|
||||
var condition = item.Read<Serialization.Models.Metadata.Condition>(Serialization.Models.Metadata.DipSwitch.ConditionKey);
|
||||
if (condition != null)
|
||||
dipSwitch.Condition = ConvertFromInternalModel(condition);
|
||||
|
||||
var dipLocations = item.Read<Models.Metadata.DipLocation[]>(Models.Metadata.DipSwitch.DipLocationKey);
|
||||
var dipLocations = item.Read<Serialization.Models.Metadata.DipLocation[]>(Serialization.Models.Metadata.DipSwitch.DipLocationKey);
|
||||
if (dipLocations != null && dipLocations.Length > 0)
|
||||
dipSwitch.DipLocation = Array.ConvertAll(dipLocations, ConvertFromInternalModel);
|
||||
|
||||
var dipValues = item.Read<Models.Metadata.DipValue[]>(Models.Metadata.DipSwitch.DipValueKey);
|
||||
var dipValues = item.Read<Serialization.Models.Metadata.DipValue[]>(Serialization.Models.Metadata.DipSwitch.DipValueKey);
|
||||
if (dipValues != null && dipValues.Length > 0)
|
||||
dipSwitch.DipValue = Array.ConvertAll(dipValues, ConvertFromInternalModel);
|
||||
|
||||
@@ -379,18 +379,18 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.DipValue"/> to <see cref="Models.Listxml.DipValue"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.DipValue"/> to <see cref="DipValue"/>
|
||||
/// </summary>
|
||||
private static DipValue ConvertFromInternalModel(Models.Metadata.DipValue item)
|
||||
private static DipValue ConvertFromInternalModel(Serialization.Models.Metadata.DipValue item)
|
||||
{
|
||||
var dipValue = new DipValue
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.DipValue.NameKey),
|
||||
Value = item.ReadString(Models.Metadata.DipValue.ValueKey),
|
||||
Default = item.ReadString(Models.Metadata.DipValue.DefaultKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.DipValue.NameKey),
|
||||
Value = item.ReadString(Serialization.Models.Metadata.DipValue.ValueKey),
|
||||
Default = item.ReadString(Serialization.Models.Metadata.DipValue.DefaultKey),
|
||||
};
|
||||
|
||||
var condition = item.Read<Models.Metadata.Condition>(Models.Metadata.DipValue.ConditionKey);
|
||||
var condition = item.Read<Serialization.Models.Metadata.Condition>(Serialization.Models.Metadata.DipValue.ConditionKey);
|
||||
if (condition != null)
|
||||
dipValue.Condition = ConvertFromInternalModel(condition);
|
||||
|
||||
@@ -398,117 +398,117 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Disk"/> to <see cref="Models.Listxml.Disk"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Disk"/> to <see cref="Disk"/>
|
||||
/// </summary>
|
||||
private static Disk ConvertFromInternalModel(Models.Metadata.Disk item)
|
||||
private static Disk ConvertFromInternalModel(Serialization.Models.Metadata.Disk item)
|
||||
{
|
||||
var disk = new Disk
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Disk.NameKey),
|
||||
MD5 = item.ReadString(Models.Metadata.Disk.MD5Key),
|
||||
SHA1 = item.ReadString(Models.Metadata.Disk.SHA1Key),
|
||||
Merge = item.ReadString(Models.Metadata.Disk.MergeKey),
|
||||
Region = item.ReadString(Models.Metadata.Disk.RegionKey),
|
||||
Index = item.ReadString(Models.Metadata.Disk.IndexKey),
|
||||
Writable = item.ReadString(Models.Metadata.Disk.WritableKey),
|
||||
Status = item.ReadString(Models.Metadata.Disk.StatusKey),
|
||||
Optional = item.ReadString(Models.Metadata.Disk.OptionalKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Disk.NameKey),
|
||||
MD5 = item.ReadString(Serialization.Models.Metadata.Disk.MD5Key),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Disk.SHA1Key),
|
||||
Merge = item.ReadString(Serialization.Models.Metadata.Disk.MergeKey),
|
||||
Region = item.ReadString(Serialization.Models.Metadata.Disk.RegionKey),
|
||||
Index = item.ReadString(Serialization.Models.Metadata.Disk.IndexKey),
|
||||
Writable = item.ReadString(Serialization.Models.Metadata.Disk.WritableKey),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.Disk.StatusKey),
|
||||
Optional = item.ReadString(Serialization.Models.Metadata.Disk.OptionalKey),
|
||||
};
|
||||
return disk;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Display"/> to <see cref="Models.Listxml.Display"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Display"/> to <see cref="Display"/>
|
||||
/// </summary>
|
||||
private static Display ConvertFromInternalModel(Models.Metadata.Display item)
|
||||
private static Display ConvertFromInternalModel(Serialization.Models.Metadata.Display item)
|
||||
{
|
||||
var display = new Display
|
||||
{
|
||||
Tag = item.ReadString(Models.Metadata.Display.TagKey),
|
||||
Type = item.ReadString(Models.Metadata.Display.DisplayTypeKey),
|
||||
Rotate = item.ReadString(Models.Metadata.Display.RotateKey),
|
||||
FlipX = item.ReadString(Models.Metadata.Display.FlipXKey),
|
||||
Width = item.ReadString(Models.Metadata.Display.WidthKey),
|
||||
Height = item.ReadString(Models.Metadata.Display.HeightKey),
|
||||
Refresh = item.ReadString(Models.Metadata.Display.RefreshKey),
|
||||
PixClock = item.ReadString(Models.Metadata.Display.PixClockKey),
|
||||
HTotal = item.ReadString(Models.Metadata.Display.HTotalKey),
|
||||
HBEnd = item.ReadString(Models.Metadata.Display.HBEndKey),
|
||||
HBStart = item.ReadString(Models.Metadata.Display.HBStartKey),
|
||||
VTotal = item.ReadString(Models.Metadata.Display.VTotalKey),
|
||||
VBEnd = item.ReadString(Models.Metadata.Display.VBEndKey),
|
||||
VBStart = item.ReadString(Models.Metadata.Display.VBStartKey),
|
||||
Tag = item.ReadString(Serialization.Models.Metadata.Display.TagKey),
|
||||
Type = item.ReadString(Serialization.Models.Metadata.Display.DisplayTypeKey),
|
||||
Rotate = item.ReadString(Serialization.Models.Metadata.Display.RotateKey),
|
||||
FlipX = item.ReadString(Serialization.Models.Metadata.Display.FlipXKey),
|
||||
Width = item.ReadString(Serialization.Models.Metadata.Display.WidthKey),
|
||||
Height = item.ReadString(Serialization.Models.Metadata.Display.HeightKey),
|
||||
Refresh = item.ReadString(Serialization.Models.Metadata.Display.RefreshKey),
|
||||
PixClock = item.ReadString(Serialization.Models.Metadata.Display.PixClockKey),
|
||||
HTotal = item.ReadString(Serialization.Models.Metadata.Display.HTotalKey),
|
||||
HBEnd = item.ReadString(Serialization.Models.Metadata.Display.HBEndKey),
|
||||
HBStart = item.ReadString(Serialization.Models.Metadata.Display.HBStartKey),
|
||||
VTotal = item.ReadString(Serialization.Models.Metadata.Display.VTotalKey),
|
||||
VBEnd = item.ReadString(Serialization.Models.Metadata.Display.VBEndKey),
|
||||
VBStart = item.ReadString(Serialization.Models.Metadata.Display.VBStartKey),
|
||||
};
|
||||
return display;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Driver"/> to <see cref="Models.Listxml.Driver"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Driver"/> to <see cref="Driver"/>
|
||||
/// </summary>
|
||||
private static Driver ConvertFromInternalModel(Models.Metadata.Driver item)
|
||||
private static Driver ConvertFromInternalModel(Serialization.Models.Metadata.Driver item)
|
||||
{
|
||||
var driver = new Driver
|
||||
{
|
||||
Status = item.ReadString(Models.Metadata.Driver.StatusKey),
|
||||
Color = item.ReadString(Models.Metadata.Driver.ColorKey),
|
||||
Sound = item.ReadString(Models.Metadata.Driver.SoundKey),
|
||||
PaletteSize = item.ReadString(Models.Metadata.Driver.PaletteSizeKey),
|
||||
Emulation = item.ReadString(Models.Metadata.Driver.EmulationKey),
|
||||
Cocktail = item.ReadString(Models.Metadata.Driver.CocktailKey),
|
||||
SaveState = item.ReadString(Models.Metadata.Driver.SaveStateKey),
|
||||
RequiresArtwork = item.ReadString(Models.Metadata.Driver.RequiresArtworkKey),
|
||||
Unofficial = item.ReadString(Models.Metadata.Driver.UnofficialKey),
|
||||
NoSoundHardware = item.ReadString(Models.Metadata.Driver.NoSoundHardwareKey),
|
||||
Incomplete = item.ReadString(Models.Metadata.Driver.IncompleteKey),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.Driver.StatusKey),
|
||||
Color = item.ReadString(Serialization.Models.Metadata.Driver.ColorKey),
|
||||
Sound = item.ReadString(Serialization.Models.Metadata.Driver.SoundKey),
|
||||
PaletteSize = item.ReadString(Serialization.Models.Metadata.Driver.PaletteSizeKey),
|
||||
Emulation = item.ReadString(Serialization.Models.Metadata.Driver.EmulationKey),
|
||||
Cocktail = item.ReadString(Serialization.Models.Metadata.Driver.CocktailKey),
|
||||
SaveState = item.ReadString(Serialization.Models.Metadata.Driver.SaveStateKey),
|
||||
RequiresArtwork = item.ReadString(Serialization.Models.Metadata.Driver.RequiresArtworkKey),
|
||||
Unofficial = item.ReadString(Serialization.Models.Metadata.Driver.UnofficialKey),
|
||||
NoSoundHardware = item.ReadString(Serialization.Models.Metadata.Driver.NoSoundHardwareKey),
|
||||
Incomplete = item.ReadString(Serialization.Models.Metadata.Driver.IncompleteKey),
|
||||
};
|
||||
return driver;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Extension"/> to <see cref="Models.Listxml.Extension"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Extension"/> to <see cref="Extension"/>
|
||||
/// </summary>
|
||||
private static Extension ConvertFromInternalModel(Models.Metadata.Extension item)
|
||||
private static Extension ConvertFromInternalModel(Serialization.Models.Metadata.Extension item)
|
||||
{
|
||||
var extension = new Extension
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Extension.NameKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Extension.NameKey),
|
||||
};
|
||||
return extension;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Feature"/> to <see cref="Models.Listxml.Feature"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Feature"/> to <see cref="Feature"/>
|
||||
/// </summary>
|
||||
private static Feature ConvertFromInternalModel(Models.Metadata.Feature item)
|
||||
private static Feature ConvertFromInternalModel(Serialization.Models.Metadata.Feature item)
|
||||
{
|
||||
var feature = new Feature
|
||||
{
|
||||
Type = item.ReadString(Models.Metadata.Feature.FeatureTypeKey),
|
||||
Status = item.ReadString(Models.Metadata.Feature.StatusKey),
|
||||
Overall = item.ReadString(Models.Metadata.Feature.OverallKey),
|
||||
Type = item.ReadString(Serialization.Models.Metadata.Feature.FeatureTypeKey),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.Feature.StatusKey),
|
||||
Overall = item.ReadString(Serialization.Models.Metadata.Feature.OverallKey),
|
||||
};
|
||||
return feature;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Input"/> to <see cref="Models.Listxml.Input"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Input"/> to <see cref="Input"/>
|
||||
/// </summary>
|
||||
private static Input ConvertFromInternalModel(Models.Metadata.Input item)
|
||||
private static Input ConvertFromInternalModel(Serialization.Models.Metadata.Input item)
|
||||
{
|
||||
var input = new Input
|
||||
{
|
||||
Service = item.ReadString(Models.Metadata.Input.ServiceKey),
|
||||
Tilt = item.ReadString(Models.Metadata.Input.TiltKey),
|
||||
Players = item.ReadString(Models.Metadata.Input.PlayersKey),
|
||||
Buttons = item.ReadString(Models.Metadata.Input.ButtonsKey),
|
||||
Coins = item.ReadString(Models.Metadata.Input.CoinsKey),
|
||||
Service = item.ReadString(Serialization.Models.Metadata.Input.ServiceKey),
|
||||
Tilt = item.ReadString(Serialization.Models.Metadata.Input.TiltKey),
|
||||
Players = item.ReadString(Serialization.Models.Metadata.Input.PlayersKey),
|
||||
Buttons = item.ReadString(Serialization.Models.Metadata.Input.ButtonsKey),
|
||||
Coins = item.ReadString(Serialization.Models.Metadata.Input.CoinsKey),
|
||||
};
|
||||
|
||||
var controlAttr = item.ReadString(Models.Metadata.Input.ControlKey);
|
||||
var controlAttr = item.ReadString(Serialization.Models.Metadata.Input.ControlKey);
|
||||
if (controlAttr != null)
|
||||
input.ControlAttr = controlAttr;
|
||||
|
||||
var controls = item.Read<Models.Metadata.Control[]>(Models.Metadata.Input.ControlKey);
|
||||
var controls = item.Read<Serialization.Models.Metadata.Control[]>(Serialization.Models.Metadata.Input.ControlKey);
|
||||
if (controls != null && controls.Length > 0)
|
||||
input.Control = Array.ConvertAll(controls, ConvertFromInternalModel);
|
||||
|
||||
@@ -516,29 +516,29 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Instance"/> to <see cref="Models.Listxml.Instance"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Instance"/> to <see cref="Instance"/>
|
||||
/// </summary>
|
||||
private static Instance ConvertFromInternalModel(Models.Metadata.Instance item)
|
||||
private static Instance ConvertFromInternalModel(Serialization.Models.Metadata.Instance item)
|
||||
{
|
||||
var instance = new Instance
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Instance.NameKey),
|
||||
BriefName = item.ReadString(Models.Metadata.Instance.BriefNameKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Instance.NameKey),
|
||||
BriefName = item.ReadString(Serialization.Models.Metadata.Instance.BriefNameKey),
|
||||
};
|
||||
return instance;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Port"/> to <see cref="Models.Listxml.Port"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Port"/> to <see cref="Port"/>
|
||||
/// </summary>
|
||||
private static Port ConvertFromInternalModel(Models.Metadata.Port item)
|
||||
private static Port ConvertFromInternalModel(Serialization.Models.Metadata.Port item)
|
||||
{
|
||||
var port = new Port
|
||||
{
|
||||
Tag = item.ReadString(Models.Metadata.Port.TagKey),
|
||||
Tag = item.ReadString(Serialization.Models.Metadata.Port.TagKey),
|
||||
};
|
||||
|
||||
var analogs = item.Read<Models.Metadata.Analog[]>(Models.Metadata.Port.AnalogKey);
|
||||
var analogs = item.Read<Serialization.Models.Metadata.Analog[]>(Serialization.Models.Metadata.Port.AnalogKey);
|
||||
if (analogs != null && analogs.Length > 0)
|
||||
port.Analog = Array.ConvertAll(analogs, ConvertFromInternalModel);
|
||||
|
||||
@@ -546,65 +546,65 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.RamOption"/> to <see cref="Models.Listxml.RamOption"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.RamOption"/> to <see cref="RamOption"/>
|
||||
/// </summary>
|
||||
private static RamOption ConvertFromInternalModel(Models.Metadata.RamOption item)
|
||||
private static RamOption ConvertFromInternalModel(Serialization.Models.Metadata.RamOption item)
|
||||
{
|
||||
var ramOption = new RamOption
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.RamOption.NameKey),
|
||||
Default = item.ReadString(Models.Metadata.RamOption.DefaultKey),
|
||||
Content = item.ReadString(Models.Metadata.RamOption.ContentKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.RamOption.NameKey),
|
||||
Default = item.ReadString(Serialization.Models.Metadata.RamOption.DefaultKey),
|
||||
Content = item.ReadString(Serialization.Models.Metadata.RamOption.ContentKey),
|
||||
};
|
||||
return ramOption;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.Listxml.Rom"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="Rom"/>
|
||||
/// </summary>
|
||||
private static Rom ConvertFromInternalModel(Models.Metadata.Rom item)
|
||||
private static Rom ConvertFromInternalModel(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var rom = new Rom
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Bios = item.ReadString(Models.Metadata.Rom.BiosKey),
|
||||
Size = item.ReadString(Models.Metadata.Rom.SizeKey),
|
||||
CRC = item.ReadString(Models.Metadata.Rom.CRCKey),
|
||||
SHA1 = item.ReadString(Models.Metadata.Rom.SHA1Key),
|
||||
Merge = item.ReadString(Models.Metadata.Rom.MergeKey),
|
||||
Region = item.ReadString(Models.Metadata.Rom.RegionKey),
|
||||
Offset = item.ReadString(Models.Metadata.Rom.OffsetKey),
|
||||
Status = item.ReadString(Models.Metadata.Rom.StatusKey),
|
||||
Optional = item.ReadString(Models.Metadata.Rom.OptionalKey),
|
||||
Dispose = item.ReadString(Models.Metadata.Rom.DisposeKey),
|
||||
SoundOnly = item.ReadString(Models.Metadata.Rom.SoundOnlyKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
Bios = item.ReadString(Serialization.Models.Metadata.Rom.BiosKey),
|
||||
Size = item.ReadString(Serialization.Models.Metadata.Rom.SizeKey),
|
||||
CRC = item.ReadString(Serialization.Models.Metadata.Rom.CRCKey),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Rom.SHA1Key),
|
||||
Merge = item.ReadString(Serialization.Models.Metadata.Rom.MergeKey),
|
||||
Region = item.ReadString(Serialization.Models.Metadata.Rom.RegionKey),
|
||||
Offset = item.ReadString(Serialization.Models.Metadata.Rom.OffsetKey),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.Rom.StatusKey),
|
||||
Optional = item.ReadString(Serialization.Models.Metadata.Rom.OptionalKey),
|
||||
Dispose = item.ReadString(Serialization.Models.Metadata.Rom.DisposeKey),
|
||||
SoundOnly = item.ReadString(Serialization.Models.Metadata.Rom.SoundOnlyKey),
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Sample"/> to <see cref="Models.Listxml.Sample"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Sample"/> to <see cref="Sample"/>
|
||||
/// </summary>
|
||||
private static Sample ConvertFromInternalModel(Models.Metadata.Sample item)
|
||||
private static Sample ConvertFromInternalModel(Serialization.Models.Metadata.Sample item)
|
||||
{
|
||||
var sample = new Sample
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Sample.NameKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Sample.NameKey),
|
||||
};
|
||||
return sample;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Slot"/> to <see cref="Models.Listxml.Slot"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Slot"/> to <see cref="Slot"/>
|
||||
/// </summary>
|
||||
private static Slot ConvertFromInternalModel(Models.Metadata.Slot item)
|
||||
private static Slot ConvertFromInternalModel(Serialization.Models.Metadata.Slot item)
|
||||
{
|
||||
var slot = new Slot
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Slot.NameKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Slot.NameKey),
|
||||
};
|
||||
|
||||
var slotOptions = item.Read<Models.Metadata.SlotOption[]>(Models.Metadata.Slot.SlotOptionKey);
|
||||
var slotOptions = item.Read<Serialization.Models.Metadata.SlotOption[]>(Serialization.Models.Metadata.Slot.SlotOptionKey);
|
||||
if (slotOptions != null && slotOptions.Length > 0)
|
||||
slot.SlotOption = Array.ConvertAll(slotOptions, ConvertFromInternalModel);
|
||||
|
||||
@@ -612,60 +612,60 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.SlotOption"/> to <see cref="Models.Listxml.SlotOption"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.SlotOption"/> to <see cref="SlotOption"/>
|
||||
/// </summary>
|
||||
private static SlotOption ConvertFromInternalModel(Models.Metadata.SlotOption item)
|
||||
private static SlotOption ConvertFromInternalModel(Serialization.Models.Metadata.SlotOption item)
|
||||
{
|
||||
var slotOption = new SlotOption
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.SlotOption.NameKey),
|
||||
DevName = item.ReadString(Models.Metadata.SlotOption.DevNameKey),
|
||||
Default = item.ReadString(Models.Metadata.SlotOption.DefaultKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.SlotOption.NameKey),
|
||||
DevName = item.ReadString(Serialization.Models.Metadata.SlotOption.DevNameKey),
|
||||
Default = item.ReadString(Serialization.Models.Metadata.SlotOption.DefaultKey),
|
||||
};
|
||||
return slotOption;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.SoftwareList"/> to <see cref="Models.Listxml.SoftwareList"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.SoftwareList"/> to <see cref="SabreTools.Serialization.Models.Listxml.SoftwareList"/>
|
||||
/// </summary>
|
||||
private static Models.Listxml.SoftwareList ConvertFromInternalModel(Models.Metadata.SoftwareList item)
|
||||
private static SabreTools.Serialization.Models.Listxml.SoftwareList ConvertFromInternalModel(Serialization.Models.Metadata.SoftwareList item)
|
||||
{
|
||||
var softwareList = new Models.Listxml.SoftwareList
|
||||
var softwareList = new SabreTools.Serialization.Models.Listxml.SoftwareList
|
||||
{
|
||||
Tag = item.ReadString(Models.Metadata.SoftwareList.TagKey),
|
||||
Name = item.ReadString(Models.Metadata.SoftwareList.NameKey),
|
||||
Status = item.ReadString(Models.Metadata.SoftwareList.StatusKey),
|
||||
Filter = item.ReadString(Models.Metadata.SoftwareList.FilterKey),
|
||||
Tag = item.ReadString(Serialization.Models.Metadata.SoftwareList.TagKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.SoftwareList.NameKey),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.SoftwareList.StatusKey),
|
||||
Filter = item.ReadString(Serialization.Models.Metadata.SoftwareList.FilterKey),
|
||||
};
|
||||
return softwareList;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Sound"/> to <see cref="Models.Listxml.Sound"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Sound"/> to <see cref="Sound"/>
|
||||
/// </summary>
|
||||
private static Sound ConvertFromInternalModel(Models.Metadata.Sound item)
|
||||
private static Sound ConvertFromInternalModel(Serialization.Models.Metadata.Sound item)
|
||||
{
|
||||
var sound = new Sound
|
||||
{
|
||||
Channels = item.ReadString(Models.Metadata.Sound.ChannelsKey),
|
||||
Channels = item.ReadString(Serialization.Models.Metadata.Sound.ChannelsKey),
|
||||
};
|
||||
return sound;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Video"/> to <see cref="Models.Listxml.Video"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Video"/> to <see cref="Video"/>
|
||||
/// </summary>
|
||||
private static Video ConvertFromInternalModel(Models.Metadata.Video item)
|
||||
private static Video ConvertFromInternalModel(Serialization.Models.Metadata.Video item)
|
||||
{
|
||||
var video = new Video
|
||||
{
|
||||
Screen = item.ReadString(Models.Metadata.Video.ScreenKey),
|
||||
Orientation = item.ReadString(Models.Metadata.Video.OrientationKey),
|
||||
Width = item.ReadString(Models.Metadata.Video.WidthKey),
|
||||
Height = item.ReadString(Models.Metadata.Video.HeightKey),
|
||||
AspectX = item.ReadString(Models.Metadata.Video.AspectXKey),
|
||||
AspectY = item.ReadString(Models.Metadata.Video.AspectYKey),
|
||||
Refresh = item.ReadString(Models.Metadata.Video.RefreshKey),
|
||||
Screen = item.ReadString(Serialization.Models.Metadata.Video.ScreenKey),
|
||||
Orientation = item.ReadString(Serialization.Models.Metadata.Video.OrientationKey),
|
||||
Width = item.ReadString(Serialization.Models.Metadata.Video.WidthKey),
|
||||
Height = item.ReadString(Serialization.Models.Metadata.Video.HeightKey),
|
||||
AspectX = item.ReadString(Serialization.Models.Metadata.Video.AspectXKey),
|
||||
AspectY = item.ReadString(Serialization.Models.Metadata.Video.AspectYKey),
|
||||
Refresh = item.ReadString(Serialization.Models.Metadata.Video.RefreshKey),
|
||||
};
|
||||
return video;
|
||||
}
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
using System;
|
||||
using SabreTools.Models.Listxml;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.Listxml;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class Listxml : IModelSerializer<Mame, Models.Metadata.MetadataFile>
|
||||
public partial class Listxml : IModelSerializer<Mame, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Metadata.MetadataFile? Serialize(Mame? item)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(Mame? item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile
|
||||
{
|
||||
[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
};
|
||||
|
||||
if (item?.Game != null && item.Game.Length > 0)
|
||||
{
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey]
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey]
|
||||
= Array.ConvertAll(item.Game, ConvertMachineToInternalModel);
|
||||
}
|
||||
|
||||
@@ -27,149 +27,149 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Mame"/> to <see cref="Models.Metadata.Header"/>
|
||||
/// Convert from <see cref="Mame"/> to <see cref="Serialization.Models.Metadata.Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel(Mame item)
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel(Mame item)
|
||||
{
|
||||
var header = new Models.Metadata.Header
|
||||
var header = new Serialization.Models.Metadata.Header
|
||||
{
|
||||
[Models.Metadata.Header.BuildKey] = item.Build,
|
||||
[Models.Metadata.Header.DebugKey] = item.Debug,
|
||||
[Models.Metadata.Header.MameConfigKey] = item.MameConfig,
|
||||
[Serialization.Models.Metadata.Header.BuildKey] = item.Build,
|
||||
[Serialization.Models.Metadata.Header.DebugKey] = item.Debug,
|
||||
[Serialization.Models.Metadata.Header.MameConfigKey] = item.MameConfig,
|
||||
};
|
||||
return header;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.GameBase"/> to <see cref="Models.Metadata.Machine"/>
|
||||
/// Convert from <see cref="GameBase"/> to <see cref="Serialization.Models.Metadata.Machine"/>
|
||||
/// </summary>
|
||||
internal static Models.Metadata.Machine ConvertMachineToInternalModel(GameBase item)
|
||||
internal static Serialization.Models.Metadata.Machine ConvertMachineToInternalModel(GameBase item)
|
||||
{
|
||||
var machine = new Models.Metadata.Machine
|
||||
var machine = new Serialization.Models.Metadata.Machine
|
||||
{
|
||||
[Models.Metadata.Machine.NameKey] = item.Name,
|
||||
[Models.Metadata.Machine.SourceFileKey] = item.SourceFile,
|
||||
[Models.Metadata.Machine.IsBiosKey] = item.IsBios,
|
||||
[Models.Metadata.Machine.IsDeviceKey] = item.IsDevice,
|
||||
[Models.Metadata.Machine.IsMechanicalKey] = item.IsMechanical,
|
||||
[Models.Metadata.Machine.RunnableKey] = item.Runnable,
|
||||
[Models.Metadata.Machine.CloneOfKey] = item.CloneOf,
|
||||
[Models.Metadata.Machine.RomOfKey] = item.RomOf,
|
||||
[Models.Metadata.Machine.SampleOfKey] = item.SampleOf,
|
||||
[Models.Metadata.Machine.DescriptionKey] = item.Description,
|
||||
[Models.Metadata.Machine.YearKey] = item.Year,
|
||||
[Models.Metadata.Machine.ManufacturerKey] = item.Manufacturer,
|
||||
[Models.Metadata.Machine.HistoryKey] = item.History,
|
||||
[Serialization.Models.Metadata.Machine.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Machine.SourceFileKey] = item.SourceFile,
|
||||
[Serialization.Models.Metadata.Machine.IsBiosKey] = item.IsBios,
|
||||
[Serialization.Models.Metadata.Machine.IsDeviceKey] = item.IsDevice,
|
||||
[Serialization.Models.Metadata.Machine.IsMechanicalKey] = item.IsMechanical,
|
||||
[Serialization.Models.Metadata.Machine.RunnableKey] = item.Runnable,
|
||||
[Serialization.Models.Metadata.Machine.CloneOfKey] = item.CloneOf,
|
||||
[Serialization.Models.Metadata.Machine.RomOfKey] = item.RomOf,
|
||||
[Serialization.Models.Metadata.Machine.SampleOfKey] = item.SampleOf,
|
||||
[Serialization.Models.Metadata.Machine.DescriptionKey] = item.Description,
|
||||
[Serialization.Models.Metadata.Machine.YearKey] = item.Year,
|
||||
[Serialization.Models.Metadata.Machine.ManufacturerKey] = item.Manufacturer,
|
||||
[Serialization.Models.Metadata.Machine.HistoryKey] = item.History,
|
||||
};
|
||||
|
||||
if (item.BiosSet != null && item.BiosSet.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.BiosSetKey]
|
||||
machine[Serialization.Models.Metadata.Machine.BiosSetKey]
|
||||
= Array.ConvertAll(item.BiosSet, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Rom != null && item.Rom.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.RomKey]
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey]
|
||||
= Array.ConvertAll(item.Rom, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Disk != null && item.Disk.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.DiskKey]
|
||||
machine[Serialization.Models.Metadata.Machine.DiskKey]
|
||||
= Array.ConvertAll(item.Disk, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.DeviceRef != null && item.DeviceRef.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.DeviceRefKey]
|
||||
machine[Serialization.Models.Metadata.Machine.DeviceRefKey]
|
||||
= Array.ConvertAll(item.DeviceRef, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Sample != null && item.Sample.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.SampleKey]
|
||||
machine[Serialization.Models.Metadata.Machine.SampleKey]
|
||||
= Array.ConvertAll(item.Sample, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Chip != null && item.Chip.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.ChipKey]
|
||||
machine[Serialization.Models.Metadata.Machine.ChipKey]
|
||||
= Array.ConvertAll(item.Chip, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Display != null && item.Display.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.DisplayKey]
|
||||
machine[Serialization.Models.Metadata.Machine.DisplayKey]
|
||||
= Array.ConvertAll(item.Display, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Video != null && item.Video.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.VideoKey]
|
||||
machine[Serialization.Models.Metadata.Machine.VideoKey]
|
||||
= Array.ConvertAll(item.Video, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Sound != null)
|
||||
machine[Models.Metadata.Machine.SoundKey] = ConvertToInternalModel(item.Sound);
|
||||
machine[Serialization.Models.Metadata.Machine.SoundKey] = ConvertToInternalModel(item.Sound);
|
||||
|
||||
if (item.Input != null)
|
||||
machine[Models.Metadata.Machine.InputKey] = ConvertToInternalModel(item.Input);
|
||||
machine[Serialization.Models.Metadata.Machine.InputKey] = ConvertToInternalModel(item.Input);
|
||||
|
||||
if (item.DipSwitch != null && item.DipSwitch.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.DipSwitchKey]
|
||||
machine[Serialization.Models.Metadata.Machine.DipSwitchKey]
|
||||
= Array.ConvertAll(item.DipSwitch, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Configuration != null && item.Configuration.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.ConfigurationKey]
|
||||
machine[Serialization.Models.Metadata.Machine.ConfigurationKey]
|
||||
= Array.ConvertAll(item.Configuration, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Port != null && item.Port.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.PortKey]
|
||||
machine[Serialization.Models.Metadata.Machine.PortKey]
|
||||
= Array.ConvertAll(item.Port, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Adjuster != null && item.Adjuster.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.AdjusterKey]
|
||||
machine[Serialization.Models.Metadata.Machine.AdjusterKey]
|
||||
= Array.ConvertAll(item.Adjuster, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Driver != null)
|
||||
machine[Models.Metadata.Machine.DriverKey] = ConvertToInternalModel(item.Driver);
|
||||
machine[Serialization.Models.Metadata.Machine.DriverKey] = ConvertToInternalModel(item.Driver);
|
||||
|
||||
if (item.Feature != null && item.Feature.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.FeatureKey]
|
||||
machine[Serialization.Models.Metadata.Machine.FeatureKey]
|
||||
= Array.ConvertAll(item.Feature, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Device != null && item.Device.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.DeviceKey]
|
||||
machine[Serialization.Models.Metadata.Machine.DeviceKey]
|
||||
= Array.ConvertAll(item.Device, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.Slot != null && item.Slot.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.SlotKey]
|
||||
machine[Serialization.Models.Metadata.Machine.SlotKey]
|
||||
= Array.ConvertAll(item.Slot, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.SoftwareList != null && item.SoftwareList.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.SoftwareListKey]
|
||||
machine[Serialization.Models.Metadata.Machine.SoftwareListKey]
|
||||
= Array.ConvertAll(item.SoftwareList, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.RamOption != null && item.RamOption.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.RamOptionKey]
|
||||
machine[Serialization.Models.Metadata.Machine.RamOptionKey]
|
||||
= Array.ConvertAll(item.RamOption, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
@@ -177,103 +177,103 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Adjuster"/> to <see cref="Models.Metadata.Adjuster"/>
|
||||
/// Convert from <see cref="Adjuster"/> to <see cref="Serialization.Models.Metadata.Adjuster"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Adjuster ConvertToInternalModel(Adjuster item)
|
||||
private static Serialization.Models.Metadata.Adjuster ConvertToInternalModel(Adjuster item)
|
||||
{
|
||||
var adjuster = new Models.Metadata.Adjuster
|
||||
var adjuster = new Serialization.Models.Metadata.Adjuster
|
||||
{
|
||||
[Models.Metadata.Adjuster.NameKey] = item.Name,
|
||||
[Models.Metadata.Adjuster.DefaultKey] = item.Default,
|
||||
[Serialization.Models.Metadata.Adjuster.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Adjuster.DefaultKey] = item.Default,
|
||||
};
|
||||
|
||||
if (item.Condition != null)
|
||||
adjuster[Models.Metadata.Adjuster.ConditionKey] = ConvertToInternalModel(item.Condition);
|
||||
adjuster[Serialization.Models.Metadata.Adjuster.ConditionKey] = ConvertToInternalModel(item.Condition);
|
||||
|
||||
return adjuster;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Analog"/> to <see cref="Models.Metadata.Analog"/>
|
||||
/// Convert from <see cref="Analog"/> to <see cref="Serialization.Models.Metadata.Analog"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Analog ConvertToInternalModel(Analog item)
|
||||
private static Serialization.Models.Metadata.Analog ConvertToInternalModel(Analog item)
|
||||
{
|
||||
var analog = new Models.Metadata.Analog
|
||||
var analog = new Serialization.Models.Metadata.Analog
|
||||
{
|
||||
[Models.Metadata.Analog.MaskKey] = item.Mask,
|
||||
[Serialization.Models.Metadata.Analog.MaskKey] = item.Mask,
|
||||
};
|
||||
return analog;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.BiosSet"/> to <see cref="Models.Metadata.BiosSet"/>
|
||||
/// Convert from <see cref="BiosSet"/> to <see cref="Serialization.Models.Metadata.BiosSet"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.BiosSet ConvertToInternalModel(BiosSet item)
|
||||
private static Serialization.Models.Metadata.BiosSet ConvertToInternalModel(BiosSet item)
|
||||
{
|
||||
var biosset = new Models.Metadata.BiosSet
|
||||
var biosset = new Serialization.Models.Metadata.BiosSet
|
||||
{
|
||||
[Models.Metadata.BiosSet.NameKey] = item.Name,
|
||||
[Models.Metadata.BiosSet.DescriptionKey] = item.Description,
|
||||
[Models.Metadata.BiosSet.DefaultKey] = item.Default,
|
||||
[Serialization.Models.Metadata.BiosSet.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.BiosSet.DescriptionKey] = item.Description,
|
||||
[Serialization.Models.Metadata.BiosSet.DefaultKey] = item.Default,
|
||||
};
|
||||
return biosset;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Chip"/> to <see cref="Models.Metadata.Chip"/>
|
||||
/// Convert from <see cref="Chip"/> to <see cref="Serialization.Models.Metadata.Chip"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Chip ConvertToInternalModel(Chip item)
|
||||
private static Serialization.Models.Metadata.Chip ConvertToInternalModel(Chip item)
|
||||
{
|
||||
var chip = new Models.Metadata.Chip
|
||||
var chip = new Serialization.Models.Metadata.Chip
|
||||
{
|
||||
[Models.Metadata.Chip.NameKey] = item.Name,
|
||||
[Models.Metadata.Chip.TagKey] = item.Tag,
|
||||
[Models.Metadata.Chip.ChipTypeKey] = item.Type,
|
||||
[Models.Metadata.Chip.SoundOnlyKey] = item.SoundOnly,
|
||||
[Models.Metadata.Chip.ClockKey] = item.Clock,
|
||||
[Serialization.Models.Metadata.Chip.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Chip.TagKey] = item.Tag,
|
||||
[Serialization.Models.Metadata.Chip.ChipTypeKey] = item.Type,
|
||||
[Serialization.Models.Metadata.Chip.SoundOnlyKey] = item.SoundOnly,
|
||||
[Serialization.Models.Metadata.Chip.ClockKey] = item.Clock,
|
||||
};
|
||||
return chip;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Condition"/> to <see cref="Models.Metadata.Condition"/>
|
||||
/// Convert from <see cref="Condition"/> to <see cref="Serialization.Models.Metadata.Condition"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Condition ConvertToInternalModel(Condition item)
|
||||
private static Serialization.Models.Metadata.Condition ConvertToInternalModel(Condition item)
|
||||
{
|
||||
var condition = new Models.Metadata.Condition
|
||||
var condition = new Serialization.Models.Metadata.Condition
|
||||
{
|
||||
[Models.Metadata.Condition.TagKey] = item.Tag,
|
||||
[Models.Metadata.Condition.MaskKey] = item.Mask,
|
||||
[Models.Metadata.Condition.RelationKey] = item.Relation,
|
||||
[Models.Metadata.Condition.ValueKey] = item.Value,
|
||||
[Serialization.Models.Metadata.Condition.TagKey] = item.Tag,
|
||||
[Serialization.Models.Metadata.Condition.MaskKey] = item.Mask,
|
||||
[Serialization.Models.Metadata.Condition.RelationKey] = item.Relation,
|
||||
[Serialization.Models.Metadata.Condition.ValueKey] = item.Value,
|
||||
};
|
||||
return condition;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Configuration"/> to <see cref="Models.Metadata.Configuration"/>
|
||||
/// Convert from <see cref="Configuration"/> to <see cref="Serialization.Models.Metadata.Configuration"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Configuration ConvertToInternalModel(Configuration item)
|
||||
private static Serialization.Models.Metadata.Configuration ConvertToInternalModel(Configuration item)
|
||||
{
|
||||
var configuration = new Models.Metadata.Configuration
|
||||
var configuration = new Serialization.Models.Metadata.Configuration
|
||||
{
|
||||
[Models.Metadata.Configuration.NameKey] = item.Name,
|
||||
[Models.Metadata.Configuration.TagKey] = item.Tag,
|
||||
[Models.Metadata.Configuration.MaskKey] = item.Mask,
|
||||
[Serialization.Models.Metadata.Configuration.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Configuration.TagKey] = item.Tag,
|
||||
[Serialization.Models.Metadata.Configuration.MaskKey] = item.Mask,
|
||||
};
|
||||
|
||||
if (item.Condition != null)
|
||||
configuration[Models.Metadata.Configuration.ConditionKey] = ConvertToInternalModel(item.Condition);
|
||||
configuration[Serialization.Models.Metadata.Configuration.ConditionKey] = ConvertToInternalModel(item.Condition);
|
||||
|
||||
if (item.ConfLocation != null && item.ConfLocation.Length > 0)
|
||||
{
|
||||
configuration[Models.Metadata.Configuration.ConfLocationKey]
|
||||
configuration[Serialization.Models.Metadata.Configuration.ConfLocationKey]
|
||||
= Array.ConvertAll(item.ConfLocation, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.ConfSetting != null && item.ConfSetting.Length > 0)
|
||||
{
|
||||
configuration[Models.Metadata.Configuration.ConfSettingKey]
|
||||
configuration[Serialization.Models.Metadata.Configuration.ConfSettingKey]
|
||||
= Array.ConvertAll(item.ConfSetting, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
@@ -281,80 +281,80 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.ConfLocation"/> to <see cref="Models.Metadata.ConfLocation"/>
|
||||
/// Convert from <see cref="ConfLocation"/> to <see cref="Serialization.Models.Metadata.ConfLocation"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.ConfLocation ConvertToInternalModel(ConfLocation item)
|
||||
private static Serialization.Models.Metadata.ConfLocation ConvertToInternalModel(ConfLocation item)
|
||||
{
|
||||
var confLocation = new Models.Metadata.ConfLocation
|
||||
var confLocation = new Serialization.Models.Metadata.ConfLocation
|
||||
{
|
||||
[Models.Metadata.ConfLocation.NameKey] = item.Name,
|
||||
[Models.Metadata.ConfLocation.NumberKey] = item.Number,
|
||||
[Models.Metadata.ConfLocation.InvertedKey] = item.Inverted,
|
||||
[Serialization.Models.Metadata.ConfLocation.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.ConfLocation.NumberKey] = item.Number,
|
||||
[Serialization.Models.Metadata.ConfLocation.InvertedKey] = item.Inverted,
|
||||
};
|
||||
return confLocation;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.ConfSetting"/> to <see cref="Models.Metadata.ConfSetting"/>
|
||||
/// Convert from <see cref="ConfSetting"/> to <see cref="Serialization.Models.Metadata.ConfSetting"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.ConfSetting ConvertToInternalModel(ConfSetting item)
|
||||
private static Serialization.Models.Metadata.ConfSetting ConvertToInternalModel(ConfSetting item)
|
||||
{
|
||||
var confSetting = new Models.Metadata.ConfSetting
|
||||
var confSetting = new Serialization.Models.Metadata.ConfSetting
|
||||
{
|
||||
[Models.Metadata.ConfSetting.NameKey] = item.Name,
|
||||
[Models.Metadata.ConfSetting.ValueKey] = item.Value,
|
||||
[Models.Metadata.ConfSetting.DefaultKey] = item.Default,
|
||||
[Serialization.Models.Metadata.ConfSetting.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.ConfSetting.ValueKey] = item.Value,
|
||||
[Serialization.Models.Metadata.ConfSetting.DefaultKey] = item.Default,
|
||||
};
|
||||
|
||||
if (item.Condition != null)
|
||||
confSetting[Models.Metadata.ConfSetting.ConditionKey] = ConvertToInternalModel(item.Condition);
|
||||
confSetting[Serialization.Models.Metadata.ConfSetting.ConditionKey] = ConvertToInternalModel(item.Condition);
|
||||
|
||||
return confSetting;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Control"/> to <see cref="Models.Metadata.Control"/>
|
||||
/// Convert from <see cref="Control"/> to <see cref="Serialization.Models.Metadata.Control"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Control ConvertToInternalModel(Control item)
|
||||
private static Serialization.Models.Metadata.Control ConvertToInternalModel(Control item)
|
||||
{
|
||||
var control = new Models.Metadata.Control
|
||||
var control = new Serialization.Models.Metadata.Control
|
||||
{
|
||||
[Models.Metadata.Control.ControlTypeKey] = item.Type,
|
||||
[Models.Metadata.Control.PlayerKey] = item.Player,
|
||||
[Models.Metadata.Control.ButtonsKey] = item.Buttons,
|
||||
[Models.Metadata.Control.ReqButtonsKey] = item.ReqButtons,
|
||||
[Models.Metadata.Control.MinimumKey] = item.Minimum,
|
||||
[Models.Metadata.Control.MaximumKey] = item.Maximum,
|
||||
[Models.Metadata.Control.SensitivityKey] = item.Sensitivity,
|
||||
[Models.Metadata.Control.KeyDeltaKey] = item.KeyDelta,
|
||||
[Models.Metadata.Control.ReverseKey] = item.Reverse,
|
||||
[Models.Metadata.Control.WaysKey] = item.Ways,
|
||||
[Models.Metadata.Control.Ways2Key] = item.Ways2,
|
||||
[Models.Metadata.Control.Ways3Key] = item.Ways3,
|
||||
[Serialization.Models.Metadata.Control.ControlTypeKey] = item.Type,
|
||||
[Serialization.Models.Metadata.Control.PlayerKey] = item.Player,
|
||||
[Serialization.Models.Metadata.Control.ButtonsKey] = item.Buttons,
|
||||
[Serialization.Models.Metadata.Control.ReqButtonsKey] = item.ReqButtons,
|
||||
[Serialization.Models.Metadata.Control.MinimumKey] = item.Minimum,
|
||||
[Serialization.Models.Metadata.Control.MaximumKey] = item.Maximum,
|
||||
[Serialization.Models.Metadata.Control.SensitivityKey] = item.Sensitivity,
|
||||
[Serialization.Models.Metadata.Control.KeyDeltaKey] = item.KeyDelta,
|
||||
[Serialization.Models.Metadata.Control.ReverseKey] = item.Reverse,
|
||||
[Serialization.Models.Metadata.Control.WaysKey] = item.Ways,
|
||||
[Serialization.Models.Metadata.Control.Ways2Key] = item.Ways2,
|
||||
[Serialization.Models.Metadata.Control.Ways3Key] = item.Ways3,
|
||||
};
|
||||
return control;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Device"/> to <see cref="Models.Metadata.Device"/>
|
||||
/// Convert from <see cref="Device"/> to <see cref="Serialization.Models.Metadata.Device"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Device ConvertToInternalModel(Device item)
|
||||
private static Serialization.Models.Metadata.Device ConvertToInternalModel(Device item)
|
||||
{
|
||||
var device = new Models.Metadata.Device
|
||||
var device = new Serialization.Models.Metadata.Device
|
||||
{
|
||||
[Models.Metadata.Device.DeviceTypeKey] = item.Type,
|
||||
[Models.Metadata.Device.TagKey] = item.Tag,
|
||||
[Models.Metadata.Device.FixedImageKey] = item.FixedImage,
|
||||
[Models.Metadata.Device.MandatoryKey] = item.Mandatory,
|
||||
[Models.Metadata.Device.InterfaceKey] = item.Interface,
|
||||
[Serialization.Models.Metadata.Device.DeviceTypeKey] = item.Type,
|
||||
[Serialization.Models.Metadata.Device.TagKey] = item.Tag,
|
||||
[Serialization.Models.Metadata.Device.FixedImageKey] = item.FixedImage,
|
||||
[Serialization.Models.Metadata.Device.MandatoryKey] = item.Mandatory,
|
||||
[Serialization.Models.Metadata.Device.InterfaceKey] = item.Interface,
|
||||
};
|
||||
|
||||
if (item.Instance != null)
|
||||
device[Models.Metadata.Device.InstanceKey] = ConvertToInternalModel(item.Instance);
|
||||
device[Serialization.Models.Metadata.Device.InstanceKey] = ConvertToInternalModel(item.Instance);
|
||||
|
||||
if (item.Extension != null && item.Extension.Length > 0)
|
||||
{
|
||||
device[Models.Metadata.Device.ExtensionKey]
|
||||
device[Serialization.Models.Metadata.Device.ExtensionKey]
|
||||
= Array.ConvertAll(item.Extension, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
@@ -362,55 +362,55 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.DeviceRef"/> to <see cref="Models.Metadata.DeviceRef"/>
|
||||
/// Convert from <see cref="DeviceRef"/> to <see cref="Serialization.Models.Metadata.DeviceRef"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.DeviceRef ConvertToInternalModel(DeviceRef item)
|
||||
private static Serialization.Models.Metadata.DeviceRef ConvertToInternalModel(DeviceRef item)
|
||||
{
|
||||
var deviceRef = new Models.Metadata.DeviceRef
|
||||
var deviceRef = new Serialization.Models.Metadata.DeviceRef
|
||||
{
|
||||
[Models.Metadata.DeviceRef.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.DeviceRef.NameKey] = item.Name,
|
||||
};
|
||||
return deviceRef;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.DipLocation"/> to <see cref="Models.Metadata.DipLocation"/>
|
||||
/// Convert from <see cref="DipLocation"/> to <see cref="Serialization.Models.Metadata.DipLocation"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.DipLocation ConvertToInternalModel(DipLocation item)
|
||||
private static Serialization.Models.Metadata.DipLocation ConvertToInternalModel(DipLocation item)
|
||||
{
|
||||
var dipLocation = new Models.Metadata.DipLocation
|
||||
var dipLocation = new Serialization.Models.Metadata.DipLocation
|
||||
{
|
||||
[Models.Metadata.DipLocation.NameKey] = item.Name,
|
||||
[Models.Metadata.DipLocation.NumberKey] = item.Number,
|
||||
[Models.Metadata.DipLocation.InvertedKey] = item.Inverted,
|
||||
[Serialization.Models.Metadata.DipLocation.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.DipLocation.NumberKey] = item.Number,
|
||||
[Serialization.Models.Metadata.DipLocation.InvertedKey] = item.Inverted,
|
||||
};
|
||||
return dipLocation;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.DipSwitch"/> to <see cref="Models.Metadata.DipSwitch"/>
|
||||
/// Convert from <see cref="DipSwitch"/> to <see cref="Serialization.Models.Metadata.DipSwitch"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.DipSwitch ConvertToInternalModel(DipSwitch item)
|
||||
private static Serialization.Models.Metadata.DipSwitch ConvertToInternalModel(DipSwitch item)
|
||||
{
|
||||
var dipSwitch = new Models.Metadata.DipSwitch
|
||||
var dipSwitch = new Serialization.Models.Metadata.DipSwitch
|
||||
{
|
||||
[Models.Metadata.DipSwitch.NameKey] = item.Name,
|
||||
[Models.Metadata.DipSwitch.TagKey] = item.Tag,
|
||||
[Models.Metadata.DipSwitch.MaskKey] = item.Mask,
|
||||
[Serialization.Models.Metadata.DipSwitch.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.DipSwitch.TagKey] = item.Tag,
|
||||
[Serialization.Models.Metadata.DipSwitch.MaskKey] = item.Mask,
|
||||
};
|
||||
|
||||
if (item.Condition != null)
|
||||
dipSwitch[Models.Metadata.DipSwitch.ConditionKey] = ConvertToInternalModel(item.Condition);
|
||||
dipSwitch[Serialization.Models.Metadata.DipSwitch.ConditionKey] = ConvertToInternalModel(item.Condition);
|
||||
|
||||
if (item.DipLocation != null && item.DipLocation.Length > 0)
|
||||
{
|
||||
dipSwitch[Models.Metadata.DipSwitch.DipLocationKey]
|
||||
dipSwitch[Serialization.Models.Metadata.DipSwitch.DipLocationKey]
|
||||
= Array.ConvertAll(item.DipLocation, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
if (item.DipValue != null && item.DipValue.Length > 0)
|
||||
{
|
||||
dipSwitch[Models.Metadata.DipSwitch.DipValueKey]
|
||||
dipSwitch[Serialization.Models.Metadata.DipSwitch.DipValueKey]
|
||||
= Array.ConvertAll(item.DipValue, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
@@ -418,134 +418,134 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.DipValue"/> to <see cref="Models.Metadata.DipValue"/>
|
||||
/// Convert from <see cref="DipValue"/> to <see cref="Serialization.Models.Metadata.DipValue"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.DipValue ConvertToInternalModel(DipValue item)
|
||||
private static Serialization.Models.Metadata.DipValue ConvertToInternalModel(DipValue item)
|
||||
{
|
||||
var dipValue = new Models.Metadata.DipValue
|
||||
var dipValue = new Serialization.Models.Metadata.DipValue
|
||||
{
|
||||
[Models.Metadata.DipValue.NameKey] = item.Name,
|
||||
[Models.Metadata.DipValue.ValueKey] = item.Value,
|
||||
[Models.Metadata.DipValue.DefaultKey] = item.Default,
|
||||
[Serialization.Models.Metadata.DipValue.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.DipValue.ValueKey] = item.Value,
|
||||
[Serialization.Models.Metadata.DipValue.DefaultKey] = item.Default,
|
||||
};
|
||||
|
||||
if (item.Condition != null)
|
||||
dipValue[Models.Metadata.DipValue.ConditionKey] = ConvertToInternalModel(item.Condition);
|
||||
dipValue[Serialization.Models.Metadata.DipValue.ConditionKey] = ConvertToInternalModel(item.Condition);
|
||||
|
||||
return dipValue;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Disk"/> to <see cref="Models.Metadata.Disk"/>
|
||||
/// Convert from <see cref="Disk"/> to <see cref="Serialization.Models.Metadata.Disk"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Disk ConvertToInternalModel(Disk item)
|
||||
private static Serialization.Models.Metadata.Disk ConvertToInternalModel(Disk item)
|
||||
{
|
||||
var disk = new Models.Metadata.Disk
|
||||
var disk = new Serialization.Models.Metadata.Disk
|
||||
{
|
||||
[Models.Metadata.Disk.NameKey] = item.Name,
|
||||
[Models.Metadata.Disk.MD5Key] = item.MD5,
|
||||
[Models.Metadata.Disk.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Disk.MergeKey] = item.Merge,
|
||||
[Models.Metadata.Disk.RegionKey] = item.Region,
|
||||
[Models.Metadata.Disk.IndexKey] = item.Index,
|
||||
[Models.Metadata.Disk.WritableKey] = item.Writable,
|
||||
[Models.Metadata.Disk.StatusKey] = item.Status,
|
||||
[Models.Metadata.Disk.OptionalKey] = item.Optional,
|
||||
[Serialization.Models.Metadata.Disk.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Disk.MD5Key] = item.MD5,
|
||||
[Serialization.Models.Metadata.Disk.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Disk.MergeKey] = item.Merge,
|
||||
[Serialization.Models.Metadata.Disk.RegionKey] = item.Region,
|
||||
[Serialization.Models.Metadata.Disk.IndexKey] = item.Index,
|
||||
[Serialization.Models.Metadata.Disk.WritableKey] = item.Writable,
|
||||
[Serialization.Models.Metadata.Disk.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.Disk.OptionalKey] = item.Optional,
|
||||
};
|
||||
return disk;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Display"/> to <see cref="Models.Metadata.Display"/>
|
||||
/// Convert from <see cref="Display"/> to <see cref="Serialization.Models.Metadata.Display"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Display ConvertToInternalModel(Display item)
|
||||
private static Serialization.Models.Metadata.Display ConvertToInternalModel(Display item)
|
||||
{
|
||||
var display = new Models.Metadata.Display
|
||||
var display = new Serialization.Models.Metadata.Display
|
||||
{
|
||||
[Models.Metadata.Display.TagKey] = item.Tag,
|
||||
[Models.Metadata.Display.DisplayTypeKey] = item.Type,
|
||||
[Models.Metadata.Display.RotateKey] = item.Rotate,
|
||||
[Models.Metadata.Display.FlipXKey] = item.FlipX,
|
||||
[Models.Metadata.Display.WidthKey] = item.Width,
|
||||
[Models.Metadata.Display.HeightKey] = item.Height,
|
||||
[Models.Metadata.Display.RefreshKey] = item.Refresh,
|
||||
[Models.Metadata.Display.PixClockKey] = item.PixClock,
|
||||
[Models.Metadata.Display.HTotalKey] = item.HTotal,
|
||||
[Models.Metadata.Display.HBEndKey] = item.HBEnd,
|
||||
[Models.Metadata.Display.HBStartKey] = item.HBStart,
|
||||
[Models.Metadata.Display.VTotalKey] = item.VTotal,
|
||||
[Models.Metadata.Display.VBEndKey] = item.VBEnd,
|
||||
[Models.Metadata.Display.VBStartKey] = item.VBStart,
|
||||
[Serialization.Models.Metadata.Display.TagKey] = item.Tag,
|
||||
[Serialization.Models.Metadata.Display.DisplayTypeKey] = item.Type,
|
||||
[Serialization.Models.Metadata.Display.RotateKey] = item.Rotate,
|
||||
[Serialization.Models.Metadata.Display.FlipXKey] = item.FlipX,
|
||||
[Serialization.Models.Metadata.Display.WidthKey] = item.Width,
|
||||
[Serialization.Models.Metadata.Display.HeightKey] = item.Height,
|
||||
[Serialization.Models.Metadata.Display.RefreshKey] = item.Refresh,
|
||||
[Serialization.Models.Metadata.Display.PixClockKey] = item.PixClock,
|
||||
[Serialization.Models.Metadata.Display.HTotalKey] = item.HTotal,
|
||||
[Serialization.Models.Metadata.Display.HBEndKey] = item.HBEnd,
|
||||
[Serialization.Models.Metadata.Display.HBStartKey] = item.HBStart,
|
||||
[Serialization.Models.Metadata.Display.VTotalKey] = item.VTotal,
|
||||
[Serialization.Models.Metadata.Display.VBEndKey] = item.VBEnd,
|
||||
[Serialization.Models.Metadata.Display.VBStartKey] = item.VBStart,
|
||||
};
|
||||
return display;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Driver"/> to <see cref="Models.Metadata.Driver"/>
|
||||
/// Convert from <see cref="Driver"/> to <see cref="Serialization.Models.Metadata.Driver"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Driver ConvertToInternalModel(Driver item)
|
||||
private static Serialization.Models.Metadata.Driver ConvertToInternalModel(Driver item)
|
||||
{
|
||||
var driver = new Models.Metadata.Driver
|
||||
var driver = new Serialization.Models.Metadata.Driver
|
||||
{
|
||||
[Models.Metadata.Driver.StatusKey] = item.Status,
|
||||
[Models.Metadata.Driver.ColorKey] = item.Color,
|
||||
[Models.Metadata.Driver.SoundKey] = item.Sound,
|
||||
[Models.Metadata.Driver.PaletteSizeKey] = item.PaletteSize,
|
||||
[Models.Metadata.Driver.EmulationKey] = item.Emulation,
|
||||
[Models.Metadata.Driver.CocktailKey] = item.Cocktail,
|
||||
[Models.Metadata.Driver.SaveStateKey] = item.SaveState,
|
||||
[Models.Metadata.Driver.RequiresArtworkKey] = item.RequiresArtwork,
|
||||
[Models.Metadata.Driver.UnofficialKey] = item.Unofficial,
|
||||
[Models.Metadata.Driver.NoSoundHardwareKey] = item.NoSoundHardware,
|
||||
[Models.Metadata.Driver.IncompleteKey] = item.Incomplete,
|
||||
[Serialization.Models.Metadata.Driver.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.Driver.ColorKey] = item.Color,
|
||||
[Serialization.Models.Metadata.Driver.SoundKey] = item.Sound,
|
||||
[Serialization.Models.Metadata.Driver.PaletteSizeKey] = item.PaletteSize,
|
||||
[Serialization.Models.Metadata.Driver.EmulationKey] = item.Emulation,
|
||||
[Serialization.Models.Metadata.Driver.CocktailKey] = item.Cocktail,
|
||||
[Serialization.Models.Metadata.Driver.SaveStateKey] = item.SaveState,
|
||||
[Serialization.Models.Metadata.Driver.RequiresArtworkKey] = item.RequiresArtwork,
|
||||
[Serialization.Models.Metadata.Driver.UnofficialKey] = item.Unofficial,
|
||||
[Serialization.Models.Metadata.Driver.NoSoundHardwareKey] = item.NoSoundHardware,
|
||||
[Serialization.Models.Metadata.Driver.IncompleteKey] = item.Incomplete,
|
||||
};
|
||||
return driver;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Extension"/> to <see cref="Models.Metadata.Extension"/>
|
||||
/// Convert from <see cref="Extension"/> to <see cref="Serialization.Models.Metadata.Extension"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Extension ConvertToInternalModel(Extension item)
|
||||
private static Serialization.Models.Metadata.Extension ConvertToInternalModel(Extension item)
|
||||
{
|
||||
var extension = new Models.Metadata.Extension
|
||||
var extension = new Serialization.Models.Metadata.Extension
|
||||
{
|
||||
[Models.Metadata.Extension.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Extension.NameKey] = item.Name,
|
||||
};
|
||||
return extension;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Feature"/> to <see cref="Models.Metadata.Feature"/>
|
||||
/// Convert from <see cref="Feature"/> to <see cref="Serialization.Models.Metadata.Feature"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Feature ConvertToInternalModel(Feature item)
|
||||
private static Serialization.Models.Metadata.Feature ConvertToInternalModel(Feature item)
|
||||
{
|
||||
var feature = new Models.Metadata.Feature
|
||||
var feature = new Serialization.Models.Metadata.Feature
|
||||
{
|
||||
[Models.Metadata.Feature.FeatureTypeKey] = item.Type,
|
||||
[Models.Metadata.Feature.StatusKey] = item.Status,
|
||||
[Models.Metadata.Feature.OverallKey] = item.Overall,
|
||||
[Serialization.Models.Metadata.Feature.FeatureTypeKey] = item.Type,
|
||||
[Serialization.Models.Metadata.Feature.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.Feature.OverallKey] = item.Overall,
|
||||
};
|
||||
return feature;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Input"/> to <see cref="Models.Metadata.Input"/>
|
||||
/// Convert from <see cref="Input"/> to <see cref="Serialization.Models.Metadata.Input"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Input ConvertToInternalModel(Input item)
|
||||
private static Serialization.Models.Metadata.Input ConvertToInternalModel(Input item)
|
||||
{
|
||||
var input = new Models.Metadata.Input
|
||||
var input = new Serialization.Models.Metadata.Input
|
||||
{
|
||||
[Models.Metadata.Input.ServiceKey] = item.Service,
|
||||
[Models.Metadata.Input.TiltKey] = item.Tilt,
|
||||
[Models.Metadata.Input.PlayersKey] = item.Players,
|
||||
[Models.Metadata.Input.ControlKey] = item.ControlAttr,
|
||||
[Models.Metadata.Input.ButtonsKey] = item.Buttons,
|
||||
[Models.Metadata.Input.CoinsKey] = item.Coins,
|
||||
[Serialization.Models.Metadata.Input.ServiceKey] = item.Service,
|
||||
[Serialization.Models.Metadata.Input.TiltKey] = item.Tilt,
|
||||
[Serialization.Models.Metadata.Input.PlayersKey] = item.Players,
|
||||
[Serialization.Models.Metadata.Input.ControlKey] = item.ControlAttr,
|
||||
[Serialization.Models.Metadata.Input.ButtonsKey] = item.Buttons,
|
||||
[Serialization.Models.Metadata.Input.CoinsKey] = item.Coins,
|
||||
};
|
||||
|
||||
if (item.Control != null && item.Control.Length > 0)
|
||||
{
|
||||
input[Models.Metadata.Input.ControlKey]
|
||||
input[Serialization.Models.Metadata.Input.ControlKey]
|
||||
= Array.ConvertAll(item.Control, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
@@ -553,31 +553,31 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Instance"/> to <see cref="Models.Metadata.Instance"/>
|
||||
/// Convert from <see cref="Instance"/> to <see cref="Serialization.Models.Metadata.Instance"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Instance ConvertToInternalModel(Instance item)
|
||||
private static Serialization.Models.Metadata.Instance ConvertToInternalModel(Instance item)
|
||||
{
|
||||
var instance = new Models.Metadata.Instance
|
||||
var instance = new Serialization.Models.Metadata.Instance
|
||||
{
|
||||
[Models.Metadata.Instance.NameKey] = item.Name,
|
||||
[Models.Metadata.Instance.BriefNameKey] = item.BriefName,
|
||||
[Serialization.Models.Metadata.Instance.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Instance.BriefNameKey] = item.BriefName,
|
||||
};
|
||||
return instance;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Port"/> to <see cref="Models.Metadata.Port"/>
|
||||
/// Convert from <see cref="Port"/> to <see cref="Serialization.Models.Metadata.Port"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Port ConvertToInternalModel(Port item)
|
||||
private static Serialization.Models.Metadata.Port ConvertToInternalModel(Port item)
|
||||
{
|
||||
var port = new Models.Metadata.Port
|
||||
var port = new Serialization.Models.Metadata.Port
|
||||
{
|
||||
[Models.Metadata.Port.TagKey] = item.Tag,
|
||||
[Serialization.Models.Metadata.Port.TagKey] = item.Tag,
|
||||
};
|
||||
|
||||
if (item.Analog != null && item.Analog.Length > 0)
|
||||
{
|
||||
port[Models.Metadata.Port.AnalogKey]
|
||||
port[Serialization.Models.Metadata.Port.AnalogKey]
|
||||
= Array.ConvertAll(item.Analog, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
@@ -585,67 +585,67 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.RamOption"/> to <see cref="Models.Metadata.RamOption"/>
|
||||
/// Convert from <see cref="RamOption"/> to <see cref="Serialization.Models.Metadata.RamOption"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.RamOption ConvertToInternalModel(RamOption item)
|
||||
private static Serialization.Models.Metadata.RamOption ConvertToInternalModel(RamOption item)
|
||||
{
|
||||
var ramOption = new Models.Metadata.RamOption
|
||||
var ramOption = new Serialization.Models.Metadata.RamOption
|
||||
{
|
||||
[Models.Metadata.RamOption.NameKey] = item.Name,
|
||||
[Models.Metadata.RamOption.DefaultKey] = item.Default,
|
||||
[Models.Metadata.RamOption.ContentKey] = item.Content,
|
||||
[Serialization.Models.Metadata.RamOption.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.RamOption.DefaultKey] = item.Default,
|
||||
[Serialization.Models.Metadata.RamOption.ContentKey] = item.Content,
|
||||
};
|
||||
return ramOption;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Rom"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="Rom"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(Rom item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(Rom item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Models.Metadata.Rom.BiosKey] = item.Bios,
|
||||
[Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Models.Metadata.Rom.CRCKey] = item.CRC,
|
||||
[Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Rom.MergeKey] = item.Merge,
|
||||
[Models.Metadata.Rom.RegionKey] = item.Region,
|
||||
[Models.Metadata.Rom.OffsetKey] = item.Offset,
|
||||
[Models.Metadata.Rom.StatusKey] = item.Status,
|
||||
[Models.Metadata.Rom.OptionalKey] = item.Optional,
|
||||
[Models.Metadata.Rom.DisposeKey] = item.Dispose,
|
||||
[Models.Metadata.Rom.SoundOnlyKey] = item.SoundOnly,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Rom.BiosKey] = item.Bios,
|
||||
[Serialization.Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Serialization.Models.Metadata.Rom.CRCKey] = item.CRC,
|
||||
[Serialization.Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Rom.MergeKey] = item.Merge,
|
||||
[Serialization.Models.Metadata.Rom.RegionKey] = item.Region,
|
||||
[Serialization.Models.Metadata.Rom.OffsetKey] = item.Offset,
|
||||
[Serialization.Models.Metadata.Rom.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.Rom.OptionalKey] = item.Optional,
|
||||
[Serialization.Models.Metadata.Rom.DisposeKey] = item.Dispose,
|
||||
[Serialization.Models.Metadata.Rom.SoundOnlyKey] = item.SoundOnly,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Sample"/> to <see cref="Models.Metadata.Sample"/>
|
||||
/// Convert from <see cref="Sample"/> to <see cref="Serialization.Models.Metadata.Sample"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Sample ConvertToInternalModel(Sample item)
|
||||
private static Serialization.Models.Metadata.Sample ConvertToInternalModel(Sample item)
|
||||
{
|
||||
var sample = new Models.Metadata.Sample
|
||||
var sample = new Serialization.Models.Metadata.Sample
|
||||
{
|
||||
[Models.Metadata.Sample.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Sample.NameKey] = item.Name,
|
||||
};
|
||||
return sample;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Slot"/> to <see cref="Models.Metadata.Slot"/>
|
||||
/// Convert from <see cref="Slot"/> to <see cref="Serialization.Models.Metadata.Slot"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Slot ConvertToInternalModel(Slot item)
|
||||
private static Serialization.Models.Metadata.Slot ConvertToInternalModel(Slot item)
|
||||
{
|
||||
var slot = new Models.Metadata.Slot
|
||||
var slot = new Serialization.Models.Metadata.Slot
|
||||
{
|
||||
[Models.Metadata.Slot.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Slot.NameKey] = item.Name,
|
||||
};
|
||||
|
||||
if (item.SlotOption != null && item.SlotOption.Length > 0)
|
||||
{
|
||||
slot[Models.Metadata.Slot.SlotOptionKey]
|
||||
slot[Serialization.Models.Metadata.Slot.SlotOptionKey]
|
||||
= Array.ConvertAll(item.SlotOption, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
@@ -653,60 +653,60 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.SlotOption"/> to <see cref="Models.Metadata.SlotOption"/>
|
||||
/// Convert from <see cref="SlotOption"/> to <see cref="Serialization.Models.Metadata.SlotOption"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.SlotOption ConvertToInternalModel(SlotOption item)
|
||||
private static Serialization.Models.Metadata.SlotOption ConvertToInternalModel(SlotOption item)
|
||||
{
|
||||
var slotOption = new Models.Metadata.SlotOption
|
||||
var slotOption = new Serialization.Models.Metadata.SlotOption
|
||||
{
|
||||
[Models.Metadata.SlotOption.NameKey] = item.Name,
|
||||
[Models.Metadata.SlotOption.DevNameKey] = item.DevName,
|
||||
[Models.Metadata.SlotOption.DefaultKey] = item.Default,
|
||||
[Serialization.Models.Metadata.SlotOption.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.SlotOption.DevNameKey] = item.DevName,
|
||||
[Serialization.Models.Metadata.SlotOption.DefaultKey] = item.Default,
|
||||
};
|
||||
return slotOption;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.SoftwareList"/> to <see cref="Models.Metadata.SoftwareList"/>
|
||||
/// Convert from <see cref="SabreTools.Serialization.Models.Listxml.SoftwareList"/> to <see cref="Serialization.Models.Metadata.SoftwareList"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.SoftwareList ConvertToInternalModel(Models.Listxml.SoftwareList item)
|
||||
private static Serialization.Models.Metadata.SoftwareList ConvertToInternalModel(SabreTools.Serialization.Models.Listxml.SoftwareList item)
|
||||
{
|
||||
var softwareList = new Models.Metadata.SoftwareList
|
||||
var softwareList = new Serialization.Models.Metadata.SoftwareList
|
||||
{
|
||||
[Models.Metadata.SoftwareList.TagKey] = item.Tag,
|
||||
[Models.Metadata.SoftwareList.NameKey] = item.Name,
|
||||
[Models.Metadata.SoftwareList.StatusKey] = item.Status,
|
||||
[Models.Metadata.SoftwareList.FilterKey] = item.Filter,
|
||||
[Serialization.Models.Metadata.SoftwareList.TagKey] = item.Tag,
|
||||
[Serialization.Models.Metadata.SoftwareList.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.SoftwareList.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.SoftwareList.FilterKey] = item.Filter,
|
||||
};
|
||||
return softwareList;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Sound"/> to <see cref="Models.Metadata.Sound"/>
|
||||
/// Convert from <see cref="Sound"/> to <see cref="Serialization.Models.Metadata.Sound"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Sound ConvertToInternalModel(Sound item)
|
||||
private static Serialization.Models.Metadata.Sound ConvertToInternalModel(Sound item)
|
||||
{
|
||||
var sound = new Models.Metadata.Sound
|
||||
var sound = new Serialization.Models.Metadata.Sound
|
||||
{
|
||||
[Models.Metadata.Sound.ChannelsKey] = item.Channels,
|
||||
[Serialization.Models.Metadata.Sound.ChannelsKey] = item.Channels,
|
||||
};
|
||||
return sound;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Video"/> to <see cref="Models.Metadata.Video"/>
|
||||
/// Convert from <see cref="Video"/> to <see cref="Serialization.Models.Metadata.Video"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Video ConvertToInternalModel(Video item)
|
||||
private static Serialization.Models.Metadata.Video ConvertToInternalModel(Video item)
|
||||
{
|
||||
var video = new Models.Metadata.Video
|
||||
var video = new Serialization.Models.Metadata.Video
|
||||
{
|
||||
[Models.Metadata.Video.ScreenKey] = item.Screen,
|
||||
[Models.Metadata.Video.OrientationKey] = item.Orientation,
|
||||
[Models.Metadata.Video.WidthKey] = item.Width,
|
||||
[Models.Metadata.Video.HeightKey] = item.Height,
|
||||
[Models.Metadata.Video.AspectXKey] = item.AspectX,
|
||||
[Models.Metadata.Video.AspectYKey] = item.AspectY,
|
||||
[Models.Metadata.Video.RefreshKey] = item.Refresh,
|
||||
[Serialization.Models.Metadata.Video.ScreenKey] = item.Screen,
|
||||
[Serialization.Models.Metadata.Video.OrientationKey] = item.Orientation,
|
||||
[Serialization.Models.Metadata.Video.WidthKey] = item.Width,
|
||||
[Serialization.Models.Metadata.Video.HeightKey] = item.Height,
|
||||
[Serialization.Models.Metadata.Video.AspectXKey] = item.AspectX,
|
||||
[Serialization.Models.Metadata.Video.AspectYKey] = item.AspectY,
|
||||
[Serialization.Models.Metadata.Video.RefreshKey] = item.Refresh,
|
||||
};
|
||||
return video;
|
||||
}
|
||||
|
||||
@@ -1,32 +1,32 @@
|
||||
using System;
|
||||
using SabreTools.Models.Logiqx;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.Logiqx;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class Logiqx : IModelSerializer<Datafile, Models.Metadata.MetadataFile>
|
||||
public partial class Logiqx : IModelSerializer<Datafile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Datafile? Deserialize(Models.Metadata.MetadataFile? obj) => Deserialize(obj, false);
|
||||
public Datafile? Deserialize(Serialization.Models.Metadata.MetadataFile? obj) => Deserialize(obj, false);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public Datafile? Deserialize(Models.Metadata.MetadataFile? obj, bool game)
|
||||
public Datafile? Deserialize(Serialization.Models.Metadata.MetadataFile? obj, bool game)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var datafile = new Datafile();
|
||||
|
||||
var header = obj.Read<Models.Metadata.Header>(Models.Metadata.MetadataFile.HeaderKey);
|
||||
var header = obj.Read<Serialization.Models.Metadata.Header>(Serialization.Models.Metadata.MetadataFile.HeaderKey);
|
||||
if (header != null)
|
||||
{
|
||||
datafile.Build = header.ReadString(Models.Metadata.Header.BuildKey);
|
||||
datafile.Debug = header.ReadString(Models.Metadata.Header.DebugKey);
|
||||
datafile.SchemaLocation = header.ReadString(Models.Metadata.Header.SchemaLocationKey);
|
||||
datafile.Build = header.ReadString(Serialization.Models.Metadata.Header.BuildKey);
|
||||
datafile.Debug = header.ReadString(Serialization.Models.Metadata.Header.DebugKey);
|
||||
datafile.SchemaLocation = header.ReadString(Serialization.Models.Metadata.Header.SchemaLocationKey);
|
||||
datafile.Header = ConvertHeaderFromInternalModel(header);
|
||||
}
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
if (machines != null && machines.Length > 0)
|
||||
datafile.Game = Array.ConvertAll(machines, m => ConvertMachineFromInternalModel(m, game));
|
||||
|
||||
@@ -34,38 +34,38 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Header"/> to <see cref="Models.Logiqx.Header"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Header"/> to <see cref="Header"/>
|
||||
/// </summary>
|
||||
private static Header ConvertHeaderFromInternalModel(Models.Metadata.Header item)
|
||||
private static Header ConvertHeaderFromInternalModel(Serialization.Models.Metadata.Header item)
|
||||
{
|
||||
var header = new Header
|
||||
{
|
||||
Id = item.ReadString(Models.Metadata.Header.IdKey),
|
||||
Name = item.ReadString(Models.Metadata.Header.NameKey),
|
||||
Description = item.ReadString(Models.Metadata.Header.DescriptionKey),
|
||||
RootDir = item.ReadString(Models.Metadata.Header.RootDirKey),
|
||||
Category = item.ReadString(Models.Metadata.Header.CategoryKey),
|
||||
Version = item.ReadString(Models.Metadata.Header.VersionKey),
|
||||
Date = item.ReadString(Models.Metadata.Header.DateKey),
|
||||
Author = item.ReadString(Models.Metadata.Header.AuthorKey),
|
||||
Email = item.ReadString(Models.Metadata.Header.EmailKey),
|
||||
Homepage = item.ReadString(Models.Metadata.Header.HomepageKey),
|
||||
Url = item.ReadString(Models.Metadata.Header.UrlKey),
|
||||
Comment = item.ReadString(Models.Metadata.Header.CommentKey),
|
||||
Type = item.ReadString(Models.Metadata.Header.TypeKey),
|
||||
Id = item.ReadString(Serialization.Models.Metadata.Header.IdKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Header.NameKey),
|
||||
Description = item.ReadString(Serialization.Models.Metadata.Header.DescriptionKey),
|
||||
RootDir = item.ReadString(Serialization.Models.Metadata.Header.RootDirKey),
|
||||
Category = item.ReadString(Serialization.Models.Metadata.Header.CategoryKey),
|
||||
Version = item.ReadString(Serialization.Models.Metadata.Header.VersionKey),
|
||||
Date = item.ReadString(Serialization.Models.Metadata.Header.DateKey),
|
||||
Author = item.ReadString(Serialization.Models.Metadata.Header.AuthorKey),
|
||||
Email = item.ReadString(Serialization.Models.Metadata.Header.EmailKey),
|
||||
Homepage = item.ReadString(Serialization.Models.Metadata.Header.HomepageKey),
|
||||
Url = item.ReadString(Serialization.Models.Metadata.Header.UrlKey),
|
||||
Comment = item.ReadString(Serialization.Models.Metadata.Header.CommentKey),
|
||||
Type = item.ReadString(Serialization.Models.Metadata.Header.TypeKey),
|
||||
};
|
||||
|
||||
string? headerVal = item.ReadString(Models.Metadata.Header.HeaderKey);
|
||||
string? forceMerging = item.ReadString(Models.Metadata.Header.ForceMergingKey);
|
||||
string? forceNodump = item.ReadString(Models.Metadata.Header.ForceNodumpKey);
|
||||
string? forceUnpacking = item.ReadString(Models.Metadata.Header.ForcePackingKey);
|
||||
string? headerVal = item.ReadString(Serialization.Models.Metadata.Header.HeaderKey);
|
||||
string? forceMerging = item.ReadString(Serialization.Models.Metadata.Header.ForceMergingKey);
|
||||
string? forceNodump = item.ReadString(Serialization.Models.Metadata.Header.ForceNodumpKey);
|
||||
string? forceUnpacking = item.ReadString(Serialization.Models.Metadata.Header.ForcePackingKey);
|
||||
|
||||
if (headerVal != null
|
||||
|| forceMerging != null
|
||||
|| forceNodump != null
|
||||
|| forceUnpacking != null)
|
||||
{
|
||||
header.ClrMamePro = new Models.Logiqx.ClrMamePro();
|
||||
header.ClrMamePro = new SabreTools.Serialization.Models.Logiqx.ClrMamePro();
|
||||
if (headerVal != null)
|
||||
header.ClrMamePro.Header = headerVal;
|
||||
if (forceMerging != null)
|
||||
@@ -76,13 +76,13 @@ namespace SabreTools.Serialization.CrossModel
|
||||
header.ClrMamePro.ForcePacking = forceUnpacking;
|
||||
}
|
||||
|
||||
string? plugin = item.ReadString(Models.Metadata.Header.PluginKey);
|
||||
string? romMode = item.ReadString(Models.Metadata.Header.RomModeKey);
|
||||
string? biosMode = item.ReadString(Models.Metadata.Header.BiosModeKey);
|
||||
string? sampleMode = item.ReadString(Models.Metadata.Header.SampleModeKey);
|
||||
string? lockRomMode = item.ReadString(Models.Metadata.Header.LockRomModeKey);
|
||||
string? lockBiosMode = item.ReadString(Models.Metadata.Header.LockBiosModeKey);
|
||||
string? lockSampleMode = item.ReadString(Models.Metadata.Header.LockSampleModeKey);
|
||||
string? plugin = item.ReadString(Serialization.Models.Metadata.Header.PluginKey);
|
||||
string? romMode = item.ReadString(Serialization.Models.Metadata.Header.RomModeKey);
|
||||
string? biosMode = item.ReadString(Serialization.Models.Metadata.Header.BiosModeKey);
|
||||
string? sampleMode = item.ReadString(Serialization.Models.Metadata.Header.SampleModeKey);
|
||||
string? lockRomMode = item.ReadString(Serialization.Models.Metadata.Header.LockRomModeKey);
|
||||
string? lockBiosMode = item.ReadString(Serialization.Models.Metadata.Header.LockBiosModeKey);
|
||||
string? lockSampleMode = item.ReadString(Serialization.Models.Metadata.Header.LockSampleModeKey);
|
||||
|
||||
if (plugin != null
|
||||
|| romMode != null
|
||||
@@ -92,7 +92,7 @@ namespace SabreTools.Serialization.CrossModel
|
||||
|| lockBiosMode != null
|
||||
|| lockSampleMode != null)
|
||||
{
|
||||
header.RomCenter = new Models.Logiqx.RomCenter();
|
||||
header.RomCenter = new SabreTools.Serialization.Models.Logiqx.RomCenter();
|
||||
if (plugin != null)
|
||||
header.RomCenter.Plugin = plugin;
|
||||
if (romMode != null)
|
||||
@@ -113,73 +113,73 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Machine"/> to <see cref="Models.Logiqx.GameBase"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Machine"/> to <see cref="GameBase"/>
|
||||
/// </summary>
|
||||
private static GameBase ConvertMachineFromInternalModel(Models.Metadata.Machine item, bool game = false)
|
||||
private static GameBase ConvertMachineFromInternalModel(Serialization.Models.Metadata.Machine item, bool game = false)
|
||||
{
|
||||
GameBase gameBase = game ? new Game() : new Machine();
|
||||
|
||||
gameBase.Name = item.ReadString(Models.Metadata.Machine.NameKey);
|
||||
gameBase.SourceFile = item.ReadString(Models.Metadata.Machine.SourceFileKey);
|
||||
gameBase.IsBios = item.ReadString(Models.Metadata.Machine.IsBiosKey);
|
||||
gameBase.IsDevice = item.ReadString(Models.Metadata.Machine.IsDeviceKey);
|
||||
gameBase.IsMechanical = item.ReadString(Models.Metadata.Machine.IsMechanicalKey);
|
||||
gameBase.CloneOf = item.ReadString(Models.Metadata.Machine.CloneOfKey);
|
||||
gameBase.RomOf = item.ReadString(Models.Metadata.Machine.RomOfKey);
|
||||
gameBase.SampleOf = item.ReadString(Models.Metadata.Machine.SampleOfKey);
|
||||
gameBase.Board = item.ReadString(Models.Metadata.Machine.BoardKey);
|
||||
gameBase.RebuildTo = item.ReadString(Models.Metadata.Machine.RebuildToKey);
|
||||
gameBase.Id = item.ReadString(Models.Metadata.Machine.IdKey);
|
||||
gameBase.CloneOfId = item.ReadString(Models.Metadata.Machine.CloneOfIdKey);
|
||||
gameBase.Runnable = item.ReadString(Models.Metadata.Machine.RunnableKey);
|
||||
gameBase.Comment = item.ReadStringArray(Models.Metadata.Machine.CommentKey);
|
||||
gameBase.Description = item.ReadString(Models.Metadata.Machine.DescriptionKey);
|
||||
gameBase.Year = item.ReadString(Models.Metadata.Machine.YearKey);
|
||||
gameBase.Manufacturer = item.ReadString(Models.Metadata.Machine.ManufacturerKey);
|
||||
gameBase.Publisher = item.ReadString(Models.Metadata.Machine.PublisherKey);
|
||||
gameBase.Category = item.ReadStringArray(Models.Metadata.Machine.CategoryKey);
|
||||
gameBase.Name = item.ReadString(Serialization.Models.Metadata.Machine.NameKey);
|
||||
gameBase.SourceFile = item.ReadString(Serialization.Models.Metadata.Machine.SourceFileKey);
|
||||
gameBase.IsBios = item.ReadString(Serialization.Models.Metadata.Machine.IsBiosKey);
|
||||
gameBase.IsDevice = item.ReadString(Serialization.Models.Metadata.Machine.IsDeviceKey);
|
||||
gameBase.IsMechanical = item.ReadString(Serialization.Models.Metadata.Machine.IsMechanicalKey);
|
||||
gameBase.CloneOf = item.ReadString(Serialization.Models.Metadata.Machine.CloneOfKey);
|
||||
gameBase.RomOf = item.ReadString(Serialization.Models.Metadata.Machine.RomOfKey);
|
||||
gameBase.SampleOf = item.ReadString(Serialization.Models.Metadata.Machine.SampleOfKey);
|
||||
gameBase.Board = item.ReadString(Serialization.Models.Metadata.Machine.BoardKey);
|
||||
gameBase.RebuildTo = item.ReadString(Serialization.Models.Metadata.Machine.RebuildToKey);
|
||||
gameBase.Id = item.ReadString(Serialization.Models.Metadata.Machine.IdKey);
|
||||
gameBase.CloneOfId = item.ReadString(Serialization.Models.Metadata.Machine.CloneOfIdKey);
|
||||
gameBase.Runnable = item.ReadString(Serialization.Models.Metadata.Machine.RunnableKey);
|
||||
gameBase.Comment = item.ReadStringArray(Serialization.Models.Metadata.Machine.CommentKey);
|
||||
gameBase.Description = item.ReadString(Serialization.Models.Metadata.Machine.DescriptionKey);
|
||||
gameBase.Year = item.ReadString(Serialization.Models.Metadata.Machine.YearKey);
|
||||
gameBase.Manufacturer = item.ReadString(Serialization.Models.Metadata.Machine.ManufacturerKey);
|
||||
gameBase.Publisher = item.ReadString(Serialization.Models.Metadata.Machine.PublisherKey);
|
||||
gameBase.Category = item.ReadStringArray(Serialization.Models.Metadata.Machine.CategoryKey);
|
||||
|
||||
var trurip = item.Read<Trurip>(Models.Metadata.Machine.TruripKey);
|
||||
var trurip = item.Read<Trurip>(Serialization.Models.Metadata.Machine.TruripKey);
|
||||
if (trurip != null)
|
||||
gameBase.Trurip = trurip;
|
||||
|
||||
var releases = item.Read<Models.Metadata.Release[]>(Models.Metadata.Machine.ReleaseKey);
|
||||
var releases = item.Read<Serialization.Models.Metadata.Release[]>(Serialization.Models.Metadata.Machine.ReleaseKey);
|
||||
if (releases != null && releases.Length > 0)
|
||||
gameBase.Release = Array.ConvertAll(releases, ConvertFromInternalModel);
|
||||
|
||||
var biosSets = item.Read<Models.Metadata.BiosSet[]>(Models.Metadata.Machine.BiosSetKey);
|
||||
var biosSets = item.Read<Serialization.Models.Metadata.BiosSet[]>(Serialization.Models.Metadata.Machine.BiosSetKey);
|
||||
if (biosSets != null && biosSets.Length > 0)
|
||||
gameBase.BiosSet = Array.ConvertAll(biosSets, ConvertFromInternalModel);
|
||||
|
||||
var roms = item.Read<Models.Metadata.Rom[]>(Models.Metadata.Machine.RomKey);
|
||||
var roms = item.Read<Serialization.Models.Metadata.Rom[]>(Serialization.Models.Metadata.Machine.RomKey);
|
||||
if (roms != null && roms.Length > 0)
|
||||
gameBase.Rom = Array.ConvertAll(roms, ConvertFromInternalModel);
|
||||
|
||||
var disks = item.Read<Models.Metadata.Disk[]>(Models.Metadata.Machine.DiskKey);
|
||||
var disks = item.Read<Serialization.Models.Metadata.Disk[]>(Serialization.Models.Metadata.Machine.DiskKey);
|
||||
if (disks != null && disks.Length > 0)
|
||||
gameBase.Disk = Array.ConvertAll(disks, ConvertFromInternalModel);
|
||||
|
||||
var medias = item.Read<Models.Metadata.Media[]>(Models.Metadata.Machine.MediaKey);
|
||||
var medias = item.Read<Serialization.Models.Metadata.Media[]>(Serialization.Models.Metadata.Machine.MediaKey);
|
||||
if (medias != null && medias.Length > 0)
|
||||
gameBase.Media = Array.ConvertAll(medias, ConvertFromInternalModel);
|
||||
|
||||
var deviceRefs = item.Read<Models.Metadata.DeviceRef[]>(Models.Metadata.Machine.DeviceRefKey);
|
||||
var deviceRefs = item.Read<Serialization.Models.Metadata.DeviceRef[]>(Serialization.Models.Metadata.Machine.DeviceRefKey);
|
||||
if (deviceRefs != null && deviceRefs.Length > 0)
|
||||
gameBase.DeviceRef = Array.ConvertAll(deviceRefs, ConvertFromInternalModel);
|
||||
|
||||
var samples = item.Read<Models.Metadata.Sample[]>(Models.Metadata.Machine.SampleKey);
|
||||
var samples = item.Read<Serialization.Models.Metadata.Sample[]>(Serialization.Models.Metadata.Machine.SampleKey);
|
||||
if (samples != null && samples.Length > 0)
|
||||
gameBase.Sample = Array.ConvertAll(samples, ConvertFromInternalModel);
|
||||
|
||||
var archives = item.Read<Models.Metadata.Archive[]>(Models.Metadata.Machine.ArchiveKey);
|
||||
var archives = item.Read<Serialization.Models.Metadata.Archive[]>(Serialization.Models.Metadata.Machine.ArchiveKey);
|
||||
if (archives != null && archives.Length > 0)
|
||||
gameBase.Archive = Array.ConvertAll(archives, ConvertFromInternalModel);
|
||||
|
||||
var driver = item.Read<Models.Metadata.Driver>(Models.Metadata.Machine.DriverKey);
|
||||
var driver = item.Read<Serialization.Models.Metadata.Driver>(Serialization.Models.Metadata.Machine.DriverKey);
|
||||
if (driver != null)
|
||||
gameBase.Driver = ConvertFromInternalModel(driver);
|
||||
|
||||
var softwareLists = item.Read<Models.Metadata.SoftwareList[]>(Models.Metadata.Machine.SoftwareListKey);
|
||||
var softwareLists = item.Read<Serialization.Models.Metadata.SoftwareList[]>(Serialization.Models.Metadata.Machine.SoftwareListKey);
|
||||
if (softwareLists != null && softwareLists.Length > 0)
|
||||
gameBase.SoftwareList = Array.ConvertAll(softwareLists, ConvertFromInternalModel);
|
||||
|
||||
@@ -187,167 +187,167 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Archive"/> to <see cref="Models.Logiqx.Archive"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Archive"/> to <see cref="Archive"/>
|
||||
/// </summary>
|
||||
private static Archive ConvertFromInternalModel(Models.Metadata.Archive item)
|
||||
private static Archive ConvertFromInternalModel(Serialization.Models.Metadata.Archive item)
|
||||
{
|
||||
var archive = new Archive
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Archive.NameKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Archive.NameKey),
|
||||
};
|
||||
return archive;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.BiosSet"/> to <see cref="Models.Logiqx.BiosSet"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.BiosSet"/> to <see cref="BiosSet"/>
|
||||
/// </summary>
|
||||
private static BiosSet ConvertFromInternalModel(Models.Metadata.BiosSet item)
|
||||
private static BiosSet ConvertFromInternalModel(Serialization.Models.Metadata.BiosSet item)
|
||||
{
|
||||
var biosset = new BiosSet
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.BiosSet.NameKey),
|
||||
Description = item.ReadString(Models.Metadata.BiosSet.DescriptionKey),
|
||||
Default = item.ReadString(Models.Metadata.BiosSet.DefaultKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.BiosSet.NameKey),
|
||||
Description = item.ReadString(Serialization.Models.Metadata.BiosSet.DescriptionKey),
|
||||
Default = item.ReadString(Serialization.Models.Metadata.BiosSet.DefaultKey),
|
||||
};
|
||||
return biosset;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.DeviceRef"/> to <see cref="Models.Logiqx.DeviceRef"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.DeviceRef"/> to <see cref="DeviceRef"/>
|
||||
/// </summary>
|
||||
private static DeviceRef ConvertFromInternalModel(Models.Metadata.DeviceRef item)
|
||||
private static DeviceRef ConvertFromInternalModel(Serialization.Models.Metadata.DeviceRef item)
|
||||
{
|
||||
var deviceRef = new DeviceRef
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.DipSwitch.NameKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.DipSwitch.NameKey),
|
||||
};
|
||||
return deviceRef;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Disk"/> to <see cref="Models.Logiqx.Disk"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Disk"/> to <see cref="Disk"/>
|
||||
/// </summary>
|
||||
private static Disk ConvertFromInternalModel(Models.Metadata.Disk item)
|
||||
private static Disk ConvertFromInternalModel(Serialization.Models.Metadata.Disk item)
|
||||
{
|
||||
var disk = new Disk
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Disk.NameKey),
|
||||
MD5 = item.ReadString(Models.Metadata.Disk.MD5Key),
|
||||
SHA1 = item.ReadString(Models.Metadata.Disk.SHA1Key),
|
||||
Merge = item.ReadString(Models.Metadata.Disk.MergeKey),
|
||||
Status = item.ReadString(Models.Metadata.Disk.StatusKey),
|
||||
Region = item.ReadString(Models.Metadata.Disk.RegionKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Disk.NameKey),
|
||||
MD5 = item.ReadString(Serialization.Models.Metadata.Disk.MD5Key),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Disk.SHA1Key),
|
||||
Merge = item.ReadString(Serialization.Models.Metadata.Disk.MergeKey),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.Disk.StatusKey),
|
||||
Region = item.ReadString(Serialization.Models.Metadata.Disk.RegionKey),
|
||||
};
|
||||
return disk;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Driver"/> to <see cref="Models.Logiqx.Driver"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Driver"/> to <see cref="Driver"/>
|
||||
/// </summary>
|
||||
private static Driver ConvertFromInternalModel(Models.Metadata.Driver item)
|
||||
private static Driver ConvertFromInternalModel(Serialization.Models.Metadata.Driver item)
|
||||
{
|
||||
var driver = new Driver
|
||||
{
|
||||
Status = item.ReadString(Models.Metadata.Driver.StatusKey),
|
||||
Emulation = item.ReadString(Models.Metadata.Driver.EmulationKey),
|
||||
Cocktail = item.ReadString(Models.Metadata.Driver.CocktailKey),
|
||||
SaveState = item.ReadString(Models.Metadata.Driver.SaveStateKey),
|
||||
RequiresArtwork = item.ReadString(Models.Metadata.Driver.RequiresArtworkKey),
|
||||
Unofficial = item.ReadString(Models.Metadata.Driver.UnofficialKey),
|
||||
NoSoundHardware = item.ReadString(Models.Metadata.Driver.NoSoundHardwareKey),
|
||||
Incomplete = item.ReadString(Models.Metadata.Driver.IncompleteKey),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.Driver.StatusKey),
|
||||
Emulation = item.ReadString(Serialization.Models.Metadata.Driver.EmulationKey),
|
||||
Cocktail = item.ReadString(Serialization.Models.Metadata.Driver.CocktailKey),
|
||||
SaveState = item.ReadString(Serialization.Models.Metadata.Driver.SaveStateKey),
|
||||
RequiresArtwork = item.ReadString(Serialization.Models.Metadata.Driver.RequiresArtworkKey),
|
||||
Unofficial = item.ReadString(Serialization.Models.Metadata.Driver.UnofficialKey),
|
||||
NoSoundHardware = item.ReadString(Serialization.Models.Metadata.Driver.NoSoundHardwareKey),
|
||||
Incomplete = item.ReadString(Serialization.Models.Metadata.Driver.IncompleteKey),
|
||||
};
|
||||
return driver;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Media"/> to <see cref="Models.Logiqx.Media"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Media"/> to <see cref="Media"/>
|
||||
/// </summary>
|
||||
private static Media ConvertFromInternalModel(Models.Metadata.Media item)
|
||||
private static Media ConvertFromInternalModel(Serialization.Models.Metadata.Media item)
|
||||
{
|
||||
var media = new Media
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Media.NameKey),
|
||||
MD5 = item.ReadString(Models.Metadata.Media.MD5Key),
|
||||
SHA1 = item.ReadString(Models.Metadata.Media.SHA1Key),
|
||||
SHA256 = item.ReadString(Models.Metadata.Media.SHA256Key),
|
||||
SpamSum = item.ReadString(Models.Metadata.Media.SpamSumKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Media.NameKey),
|
||||
MD5 = item.ReadString(Serialization.Models.Metadata.Media.MD5Key),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Media.SHA1Key),
|
||||
SHA256 = item.ReadString(Serialization.Models.Metadata.Media.SHA256Key),
|
||||
SpamSum = item.ReadString(Serialization.Models.Metadata.Media.SpamSumKey),
|
||||
};
|
||||
return media;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Release"/> to <see cref="Models.Logiqx.Release"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Release"/> to <see cref="Release"/>
|
||||
/// </summary>
|
||||
private static Release ConvertFromInternalModel(Models.Metadata.Release item)
|
||||
private static Release ConvertFromInternalModel(Serialization.Models.Metadata.Release item)
|
||||
{
|
||||
var release = new Release
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Release.NameKey),
|
||||
Region = item.ReadString(Models.Metadata.Release.RegionKey),
|
||||
Language = item.ReadString(Models.Metadata.Release.LanguageKey),
|
||||
Date = item.ReadString(Models.Metadata.Release.DateKey),
|
||||
Default = item.ReadString(Models.Metadata.Release.DefaultKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Release.NameKey),
|
||||
Region = item.ReadString(Serialization.Models.Metadata.Release.RegionKey),
|
||||
Language = item.ReadString(Serialization.Models.Metadata.Release.LanguageKey),
|
||||
Date = item.ReadString(Serialization.Models.Metadata.Release.DateKey),
|
||||
Default = item.ReadString(Serialization.Models.Metadata.Release.DefaultKey),
|
||||
};
|
||||
return release;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.Logiqx.Rom"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="Rom"/>
|
||||
/// </summary>
|
||||
private static Rom ConvertFromInternalModel(Models.Metadata.Rom item)
|
||||
private static Rom ConvertFromInternalModel(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var rom = new Rom
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Size = item.ReadString(Models.Metadata.Rom.SizeKey),
|
||||
CRC = item.ReadString(Models.Metadata.Rom.CRCKey),
|
||||
MD2 = item.ReadString(Models.Metadata.Rom.MD2Key),
|
||||
MD4 = item.ReadString(Models.Metadata.Rom.MD4Key),
|
||||
MD5 = item.ReadString(Models.Metadata.Rom.MD5Key),
|
||||
RIPEMD128 = item.ReadString(Models.Metadata.Rom.RIPEMD128Key),
|
||||
RIPEMD160 = item.ReadString(Models.Metadata.Rom.RIPEMD160Key),
|
||||
SHA1 = item.ReadString(Models.Metadata.Rom.SHA1Key),
|
||||
SHA256 = item.ReadString(Models.Metadata.Rom.SHA256Key),
|
||||
SHA384 = item.ReadString(Models.Metadata.Rom.SHA384Key),
|
||||
SHA512 = item.ReadString(Models.Metadata.Rom.SHA512Key),
|
||||
SpamSum = item.ReadString(Models.Metadata.Rom.SpamSumKey),
|
||||
xxHash364 = item.ReadString(Models.Metadata.Rom.xxHash364Key),
|
||||
xxHash3128 = item.ReadString(Models.Metadata.Rom.xxHash3128Key),
|
||||
Merge = item.ReadString(Models.Metadata.Rom.MergeKey),
|
||||
Status = item.ReadString(Models.Metadata.Rom.StatusKey),
|
||||
Serial = item.ReadString(Models.Metadata.Rom.SerialKey),
|
||||
Header = item.ReadString(Models.Metadata.Rom.HeaderKey),
|
||||
Date = item.ReadString(Models.Metadata.Rom.DateKey),
|
||||
Inverted = item.ReadString(Models.Metadata.Rom.InvertedKey),
|
||||
MIA = item.ReadString(Models.Metadata.Rom.MIAKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
Size = item.ReadString(Serialization.Models.Metadata.Rom.SizeKey),
|
||||
CRC = item.ReadString(Serialization.Models.Metadata.Rom.CRCKey),
|
||||
MD2 = item.ReadString(Serialization.Models.Metadata.Rom.MD2Key),
|
||||
MD4 = item.ReadString(Serialization.Models.Metadata.Rom.MD4Key),
|
||||
MD5 = item.ReadString(Serialization.Models.Metadata.Rom.MD5Key),
|
||||
RIPEMD128 = item.ReadString(Serialization.Models.Metadata.Rom.RIPEMD128Key),
|
||||
RIPEMD160 = item.ReadString(Serialization.Models.Metadata.Rom.RIPEMD160Key),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Rom.SHA1Key),
|
||||
SHA256 = item.ReadString(Serialization.Models.Metadata.Rom.SHA256Key),
|
||||
SHA384 = item.ReadString(Serialization.Models.Metadata.Rom.SHA384Key),
|
||||
SHA512 = item.ReadString(Serialization.Models.Metadata.Rom.SHA512Key),
|
||||
SpamSum = item.ReadString(Serialization.Models.Metadata.Rom.SpamSumKey),
|
||||
xxHash364 = item.ReadString(Serialization.Models.Metadata.Rom.xxHash364Key),
|
||||
xxHash3128 = item.ReadString(Serialization.Models.Metadata.Rom.xxHash3128Key),
|
||||
Merge = item.ReadString(Serialization.Models.Metadata.Rom.MergeKey),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.Rom.StatusKey),
|
||||
Serial = item.ReadString(Serialization.Models.Metadata.Rom.SerialKey),
|
||||
Header = item.ReadString(Serialization.Models.Metadata.Rom.HeaderKey),
|
||||
Date = item.ReadString(Serialization.Models.Metadata.Rom.DateKey),
|
||||
Inverted = item.ReadString(Serialization.Models.Metadata.Rom.InvertedKey),
|
||||
MIA = item.ReadString(Serialization.Models.Metadata.Rom.MIAKey),
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Sample"/> to <see cref="Models.Logiqx.Sample"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Sample"/> to <see cref="Sample"/>
|
||||
/// </summary>
|
||||
private static Sample ConvertFromInternalModel(Models.Metadata.Sample item)
|
||||
private static Sample ConvertFromInternalModel(Serialization.Models.Metadata.Sample item)
|
||||
{
|
||||
var sample = new Sample
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Sample.NameKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Sample.NameKey),
|
||||
};
|
||||
return sample;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.SoftwareList"/> to <see cref="Models.Logiqx.SoftwareList"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.SoftwareList"/> to <see cref="SabreTools.Serialization.Models.Logiqx.SoftwareList"/>
|
||||
/// </summary>
|
||||
private static Models.Logiqx.SoftwareList ConvertFromInternalModel(Models.Metadata.SoftwareList item)
|
||||
private static SabreTools.Serialization.Models.Logiqx.SoftwareList ConvertFromInternalModel(Serialization.Models.Metadata.SoftwareList item)
|
||||
{
|
||||
var softwareList = new Models.Logiqx.SoftwareList
|
||||
var softwareList = new SabreTools.Serialization.Models.Logiqx.SoftwareList
|
||||
{
|
||||
Tag = item.ReadString(Models.Metadata.SoftwareList.TagKey),
|
||||
Name = item.ReadString(Models.Metadata.SoftwareList.NameKey),
|
||||
Status = item.ReadString(Models.Metadata.SoftwareList.StatusKey),
|
||||
Filter = item.ReadString(Models.Metadata.SoftwareList.FilterKey),
|
||||
Tag = item.ReadString(Serialization.Models.Metadata.SoftwareList.TagKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.SoftwareList.NameKey),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.SoftwareList.StatusKey),
|
||||
Filter = item.ReadString(Serialization.Models.Metadata.SoftwareList.FilterKey),
|
||||
};
|
||||
return softwareList;
|
||||
}
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using SabreTools.Models.Logiqx;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.Logiqx;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class Logiqx : IModelSerializer<Datafile, Models.Metadata.MetadataFile>
|
||||
public partial class Logiqx : IModelSerializer<Datafile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
public Models.Metadata.MetadataFile? Serialize(Datafile? item)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(Datafile? item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile
|
||||
{
|
||||
[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
};
|
||||
|
||||
var machines = new List<Models.Metadata.Machine>();
|
||||
var machines = new List<Serialization.Models.Metadata.Machine>();
|
||||
|
||||
if (item.Game != null && item.Game.Length > 0)
|
||||
machines.AddRange(Array.ConvertAll(item.Game, g => ConvertMachineToInternalModel(g)));
|
||||
@@ -28,73 +28,73 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
if (machines.Count > 0)
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey] = machines.ToArray();
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey] = machines.ToArray();
|
||||
|
||||
return metadataFile;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Logiqx.Datafile"/> to <see cref="Models.Metadata.Header"/>
|
||||
/// Convert from <see cref="Datafile"/> to <see cref="Serialization.Models.Metadata.Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel(Datafile item)
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel(Datafile item)
|
||||
{
|
||||
var header = item.Header != null ? ConvertHeaderToInternalModel(item.Header) : new Models.Metadata.Header();
|
||||
var header = item.Header != null ? ConvertHeaderToInternalModel(item.Header) : new Serialization.Models.Metadata.Header();
|
||||
|
||||
header[Models.Metadata.Header.BuildKey] = item.Build;
|
||||
header[Models.Metadata.Header.DebugKey] = item.Debug;
|
||||
header[Models.Metadata.Header.SchemaLocationKey] = item.SchemaLocation;
|
||||
header[Serialization.Models.Metadata.Header.BuildKey] = item.Build;
|
||||
header[Serialization.Models.Metadata.Header.DebugKey] = item.Debug;
|
||||
header[Serialization.Models.Metadata.Header.SchemaLocationKey] = item.SchemaLocation;
|
||||
|
||||
return header;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Logiqx.Header"/> to <see cref="Models.Metadata.Header"/>
|
||||
/// Convert from <see cref="Header"/> to <see cref="Serialization.Models.Metadata.Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel(Header item)
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel(Header item)
|
||||
{
|
||||
var header = new Models.Metadata.Header
|
||||
var header = new Serialization.Models.Metadata.Header
|
||||
{
|
||||
[Models.Metadata.Header.IdKey] = item.Id,
|
||||
[Models.Metadata.Header.NameKey] = item.Name,
|
||||
[Models.Metadata.Header.DescriptionKey] = item.Description,
|
||||
[Models.Metadata.Header.RootDirKey] = item.RootDir,
|
||||
[Models.Metadata.Header.CategoryKey] = item.Category,
|
||||
[Models.Metadata.Header.VersionKey] = item.Version,
|
||||
[Models.Metadata.Header.DateKey] = item.Date,
|
||||
[Models.Metadata.Header.AuthorKey] = item.Author,
|
||||
[Models.Metadata.Header.EmailKey] = item.Email,
|
||||
[Models.Metadata.Header.HomepageKey] = item.Homepage,
|
||||
[Models.Metadata.Header.UrlKey] = item.Url,
|
||||
[Models.Metadata.Header.CommentKey] = item.Comment,
|
||||
[Models.Metadata.Header.TypeKey] = item.Type,
|
||||
[Serialization.Models.Metadata.Header.IdKey] = item.Id,
|
||||
[Serialization.Models.Metadata.Header.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Header.DescriptionKey] = item.Description,
|
||||
[Serialization.Models.Metadata.Header.RootDirKey] = item.RootDir,
|
||||
[Serialization.Models.Metadata.Header.CategoryKey] = item.Category,
|
||||
[Serialization.Models.Metadata.Header.VersionKey] = item.Version,
|
||||
[Serialization.Models.Metadata.Header.DateKey] = item.Date,
|
||||
[Serialization.Models.Metadata.Header.AuthorKey] = item.Author,
|
||||
[Serialization.Models.Metadata.Header.EmailKey] = item.Email,
|
||||
[Serialization.Models.Metadata.Header.HomepageKey] = item.Homepage,
|
||||
[Serialization.Models.Metadata.Header.UrlKey] = item.Url,
|
||||
[Serialization.Models.Metadata.Header.CommentKey] = item.Comment,
|
||||
[Serialization.Models.Metadata.Header.TypeKey] = item.Type,
|
||||
};
|
||||
|
||||
if (item.ClrMamePro != null)
|
||||
{
|
||||
header[Models.Metadata.Header.HeaderKey] = item.ClrMamePro.Header;
|
||||
header[Models.Metadata.Header.ForceMergingKey] = item.ClrMamePro.ForceMerging;
|
||||
header[Models.Metadata.Header.ForceNodumpKey] = item.ClrMamePro.ForceNodump;
|
||||
header[Models.Metadata.Header.ForcePackingKey] = item.ClrMamePro.ForcePacking;
|
||||
header[Serialization.Models.Metadata.Header.HeaderKey] = item.ClrMamePro.Header;
|
||||
header[Serialization.Models.Metadata.Header.ForceMergingKey] = item.ClrMamePro.ForceMerging;
|
||||
header[Serialization.Models.Metadata.Header.ForceNodumpKey] = item.ClrMamePro.ForceNodump;
|
||||
header[Serialization.Models.Metadata.Header.ForcePackingKey] = item.ClrMamePro.ForcePacking;
|
||||
}
|
||||
|
||||
if (item.RomCenter != null)
|
||||
{
|
||||
header[Models.Metadata.Header.PluginKey] = item.RomCenter.Plugin;
|
||||
header[Models.Metadata.Header.RomModeKey] = item.RomCenter.RomMode;
|
||||
header[Models.Metadata.Header.BiosModeKey] = item.RomCenter.BiosMode;
|
||||
header[Models.Metadata.Header.SampleModeKey] = item.RomCenter.SampleMode;
|
||||
header[Models.Metadata.Header.LockRomModeKey] = item.RomCenter.LockRomMode;
|
||||
header[Models.Metadata.Header.LockBiosModeKey] = item.RomCenter.LockBiosMode;
|
||||
header[Models.Metadata.Header.LockSampleModeKey] = item.RomCenter.LockSampleMode;
|
||||
header[Serialization.Models.Metadata.Header.PluginKey] = item.RomCenter.Plugin;
|
||||
header[Serialization.Models.Metadata.Header.RomModeKey] = item.RomCenter.RomMode;
|
||||
header[Serialization.Models.Metadata.Header.BiosModeKey] = item.RomCenter.BiosMode;
|
||||
header[Serialization.Models.Metadata.Header.SampleModeKey] = item.RomCenter.SampleMode;
|
||||
header[Serialization.Models.Metadata.Header.LockRomModeKey] = item.RomCenter.LockRomMode;
|
||||
header[Serialization.Models.Metadata.Header.LockBiosModeKey] = item.RomCenter.LockBiosMode;
|
||||
header[Serialization.Models.Metadata.Header.LockSampleModeKey] = item.RomCenter.LockSampleMode;
|
||||
}
|
||||
|
||||
return header;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Logiqx.Dir"/> to an array of <see cref="Models.Metadata.Machine"/>
|
||||
/// Convert from <see cref="Dir"/> to an array of <see cref="Serialization.Models.Metadata.Machine"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Machine[] ConvertDirToInternalModel(Dir item, string? parent = null)
|
||||
private static Serialization.Models.Metadata.Machine[] ConvertDirToInternalModel(Dir item, string? parent = null)
|
||||
{
|
||||
// Get the directory name
|
||||
string? dirName = item.Name;
|
||||
@@ -102,12 +102,12 @@ namespace SabreTools.Serialization.CrossModel
|
||||
dirName = $"{parent}\\{item.Name}";
|
||||
|
||||
// Handle machine items
|
||||
Models.Metadata.Machine[] machines = [];
|
||||
Serialization.Models.Metadata.Machine[] machines = [];
|
||||
if (item.Game != null && item.Game.Length > 0)
|
||||
machines = Array.ConvertAll(item.Game, g => ConvertMachineToInternalModel(g, dirName));
|
||||
|
||||
// Handle dir items
|
||||
List<Models.Metadata.Machine> dirs = [];
|
||||
List<Serialization.Models.Metadata.Machine> dirs = [];
|
||||
foreach (var subdir in item.Subdir ?? [])
|
||||
{
|
||||
dirs.AddRange(ConvertDirToInternalModel(subdir, dirName));
|
||||
@@ -117,233 +117,233 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Logiqx.GameBase"/> to <see cref="Models.Metadata.Machine"/>
|
||||
/// Convert from <see cref="GameBase"/> to <see cref="Serialization.Models.Metadata.Machine"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Machine ConvertMachineToInternalModel(GameBase item, string? dir = null)
|
||||
private static Serialization.Models.Metadata.Machine ConvertMachineToInternalModel(GameBase item, string? dir = null)
|
||||
{
|
||||
string? machineName = item.Name;
|
||||
if (machineName != null && dir != null)
|
||||
machineName = $"{dir}\\{machineName}";
|
||||
|
||||
var machine = new Models.Metadata.Machine
|
||||
var machine = new Serialization.Models.Metadata.Machine
|
||||
{
|
||||
[Models.Metadata.Machine.NameKey] = machineName,
|
||||
[Models.Metadata.Machine.SourceFileKey] = item.SourceFile,
|
||||
[Models.Metadata.Machine.IsBiosKey] = item.IsBios,
|
||||
[Models.Metadata.Machine.IsDeviceKey] = item.IsDevice,
|
||||
[Models.Metadata.Machine.IsMechanicalKey] = item.IsMechanical,
|
||||
[Models.Metadata.Machine.CloneOfKey] = item.CloneOf,
|
||||
[Models.Metadata.Machine.RomOfKey] = item.RomOf,
|
||||
[Models.Metadata.Machine.SampleOfKey] = item.SampleOf,
|
||||
[Models.Metadata.Machine.BoardKey] = item.Board,
|
||||
[Models.Metadata.Machine.RebuildToKey] = item.RebuildTo,
|
||||
[Models.Metadata.Machine.IdKey] = item.Id,
|
||||
[Models.Metadata.Machine.CloneOfIdKey] = item.CloneOfId,
|
||||
[Models.Metadata.Machine.RunnableKey] = item.Runnable,
|
||||
[Models.Metadata.Machine.CommentKey] = item.Comment,
|
||||
[Models.Metadata.Machine.DescriptionKey] = item.Description,
|
||||
[Models.Metadata.Machine.YearKey] = item.Year,
|
||||
[Models.Metadata.Machine.ManufacturerKey] = item.Manufacturer,
|
||||
[Models.Metadata.Machine.PublisherKey] = item.Publisher,
|
||||
[Models.Metadata.Machine.CategoryKey] = item.Category,
|
||||
[Models.Metadata.Machine.TruripKey] = item.Trurip,
|
||||
[Serialization.Models.Metadata.Machine.NameKey] = machineName,
|
||||
[Serialization.Models.Metadata.Machine.SourceFileKey] = item.SourceFile,
|
||||
[Serialization.Models.Metadata.Machine.IsBiosKey] = item.IsBios,
|
||||
[Serialization.Models.Metadata.Machine.IsDeviceKey] = item.IsDevice,
|
||||
[Serialization.Models.Metadata.Machine.IsMechanicalKey] = item.IsMechanical,
|
||||
[Serialization.Models.Metadata.Machine.CloneOfKey] = item.CloneOf,
|
||||
[Serialization.Models.Metadata.Machine.RomOfKey] = item.RomOf,
|
||||
[Serialization.Models.Metadata.Machine.SampleOfKey] = item.SampleOf,
|
||||
[Serialization.Models.Metadata.Machine.BoardKey] = item.Board,
|
||||
[Serialization.Models.Metadata.Machine.RebuildToKey] = item.RebuildTo,
|
||||
[Serialization.Models.Metadata.Machine.IdKey] = item.Id,
|
||||
[Serialization.Models.Metadata.Machine.CloneOfIdKey] = item.CloneOfId,
|
||||
[Serialization.Models.Metadata.Machine.RunnableKey] = item.Runnable,
|
||||
[Serialization.Models.Metadata.Machine.CommentKey] = item.Comment,
|
||||
[Serialization.Models.Metadata.Machine.DescriptionKey] = item.Description,
|
||||
[Serialization.Models.Metadata.Machine.YearKey] = item.Year,
|
||||
[Serialization.Models.Metadata.Machine.ManufacturerKey] = item.Manufacturer,
|
||||
[Serialization.Models.Metadata.Machine.PublisherKey] = item.Publisher,
|
||||
[Serialization.Models.Metadata.Machine.CategoryKey] = item.Category,
|
||||
[Serialization.Models.Metadata.Machine.TruripKey] = item.Trurip,
|
||||
};
|
||||
|
||||
if (item.Release != null && item.Release.Length > 0)
|
||||
machine[Models.Metadata.Machine.ReleaseKey] = Array.ConvertAll(item.Release, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.ReleaseKey] = Array.ConvertAll(item.Release, ConvertToInternalModel);
|
||||
|
||||
if (item.BiosSet != null && item.BiosSet.Length > 0)
|
||||
machine[Models.Metadata.Machine.BiosSetKey] = Array.ConvertAll(item.BiosSet, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.BiosSetKey] = Array.ConvertAll(item.BiosSet, ConvertToInternalModel);
|
||||
|
||||
if (item.Rom != null && item.Rom.Length > 0)
|
||||
machine[Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.Rom, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey] = Array.ConvertAll(item.Rom, ConvertToInternalModel);
|
||||
|
||||
if (item.Disk != null && item.Disk.Length > 0)
|
||||
machine[Models.Metadata.Machine.DiskKey] = Array.ConvertAll(item.Disk, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.DiskKey] = Array.ConvertAll(item.Disk, ConvertToInternalModel);
|
||||
|
||||
if (item.Media != null && item.Media.Length > 0)
|
||||
machine[Models.Metadata.Machine.MediaKey] = Array.ConvertAll(item.Media, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.MediaKey] = Array.ConvertAll(item.Media, ConvertToInternalModel);
|
||||
|
||||
if (item.DeviceRef != null && item.DeviceRef.Length > 0)
|
||||
machine[Models.Metadata.Machine.DeviceRefKey] = Array.ConvertAll(item.DeviceRef, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.DeviceRefKey] = Array.ConvertAll(item.DeviceRef, ConvertToInternalModel);
|
||||
|
||||
if (item.Sample != null && item.Sample.Length > 0)
|
||||
machine[Models.Metadata.Machine.SampleKey] = Array.ConvertAll(item.Sample, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.SampleKey] = Array.ConvertAll(item.Sample, ConvertToInternalModel);
|
||||
|
||||
if (item.Archive != null && item.Archive.Length > 0)
|
||||
machine[Models.Metadata.Machine.ArchiveKey] = Array.ConvertAll(item.Archive, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.ArchiveKey] = Array.ConvertAll(item.Archive, ConvertToInternalModel);
|
||||
|
||||
if (item.Driver != null)
|
||||
machine[Models.Metadata.Machine.DriverKey] = ConvertToInternalModel(item.Driver);
|
||||
machine[Serialization.Models.Metadata.Machine.DriverKey] = ConvertToInternalModel(item.Driver);
|
||||
|
||||
if (item.SoftwareList != null && item.SoftwareList.Length > 0)
|
||||
machine[Models.Metadata.Machine.SoftwareListKey] = Array.ConvertAll(item.SoftwareList, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.SoftwareListKey] = Array.ConvertAll(item.SoftwareList, ConvertToInternalModel);
|
||||
|
||||
return machine;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Logiqx.Archive"/> to <see cref="Models.Metadata.Archive"/>
|
||||
/// Convert from <see cref="Archive"/> to <see cref="Serialization.Models.Metadata.Archive"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Archive ConvertToInternalModel(Archive item)
|
||||
private static Serialization.Models.Metadata.Archive ConvertToInternalModel(Archive item)
|
||||
{
|
||||
var archive = new Models.Metadata.Archive
|
||||
var archive = new Serialization.Models.Metadata.Archive
|
||||
{
|
||||
[Models.Metadata.Archive.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Archive.NameKey] = item.Name,
|
||||
};
|
||||
return archive;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Logiqx.BiosSet"/> to <see cref="Models.Metadata.BiosSet"/>
|
||||
/// Convert from <see cref="BiosSet"/> to <see cref="Serialization.Models.Metadata.BiosSet"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.BiosSet ConvertToInternalModel(BiosSet item)
|
||||
private static Serialization.Models.Metadata.BiosSet ConvertToInternalModel(BiosSet item)
|
||||
{
|
||||
var biosset = new Models.Metadata.BiosSet
|
||||
var biosset = new Serialization.Models.Metadata.BiosSet
|
||||
{
|
||||
[Models.Metadata.BiosSet.NameKey] = item.Name,
|
||||
[Models.Metadata.BiosSet.DescriptionKey] = item.Description,
|
||||
[Models.Metadata.BiosSet.DefaultKey] = item.Default,
|
||||
[Serialization.Models.Metadata.BiosSet.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.BiosSet.DescriptionKey] = item.Description,
|
||||
[Serialization.Models.Metadata.BiosSet.DefaultKey] = item.Default,
|
||||
};
|
||||
return biosset;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Logiqx.DeviceRef"/> to <see cref="Models.Metadata.DeviceRef"/>
|
||||
/// Convert from <see cref="DeviceRef"/> to <see cref="Serialization.Models.Metadata.DeviceRef"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.DeviceRef ConvertToInternalModel(DeviceRef item)
|
||||
private static Serialization.Models.Metadata.DeviceRef ConvertToInternalModel(DeviceRef item)
|
||||
{
|
||||
var deviceRef = new Models.Metadata.DeviceRef
|
||||
var deviceRef = new Serialization.Models.Metadata.DeviceRef
|
||||
{
|
||||
[Models.Metadata.DeviceRef.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.DeviceRef.NameKey] = item.Name,
|
||||
};
|
||||
return deviceRef;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Logiqx.Disk"/> to <see cref="Models.Metadata.Disk"/>
|
||||
/// Convert from <see cref="Disk"/> to <see cref="Serialization.Models.Metadata.Disk"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Disk ConvertToInternalModel(Disk item)
|
||||
private static Serialization.Models.Metadata.Disk ConvertToInternalModel(Disk item)
|
||||
{
|
||||
var disk = new Models.Metadata.Disk
|
||||
var disk = new Serialization.Models.Metadata.Disk
|
||||
{
|
||||
[Models.Metadata.Disk.NameKey] = item.Name,
|
||||
[Models.Metadata.Disk.MD5Key] = item.MD5,
|
||||
[Models.Metadata.Disk.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Disk.MergeKey] = item.Merge,
|
||||
[Models.Metadata.Disk.StatusKey] = item.Status,
|
||||
[Models.Metadata.Disk.RegionKey] = item.Region,
|
||||
[Serialization.Models.Metadata.Disk.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Disk.MD5Key] = item.MD5,
|
||||
[Serialization.Models.Metadata.Disk.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Disk.MergeKey] = item.Merge,
|
||||
[Serialization.Models.Metadata.Disk.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.Disk.RegionKey] = item.Region,
|
||||
};
|
||||
return disk;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Logiqx.Driver"/> to <see cref="Models.Metadata.Driver"/>
|
||||
/// Convert from <see cref="Driver"/> to <see cref="Serialization.Models.Metadata.Driver"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Driver ConvertToInternalModel(Driver item)
|
||||
private static Serialization.Models.Metadata.Driver ConvertToInternalModel(Driver item)
|
||||
{
|
||||
var driver = new Models.Metadata.Driver
|
||||
var driver = new Serialization.Models.Metadata.Driver
|
||||
{
|
||||
[Models.Metadata.Driver.StatusKey] = item.Status,
|
||||
[Models.Metadata.Driver.EmulationKey] = item.Emulation,
|
||||
[Models.Metadata.Driver.CocktailKey] = item.Cocktail,
|
||||
[Models.Metadata.Driver.SaveStateKey] = item.SaveState,
|
||||
[Models.Metadata.Driver.RequiresArtworkKey] = item.RequiresArtwork,
|
||||
[Models.Metadata.Driver.UnofficialKey] = item.Unofficial,
|
||||
[Models.Metadata.Driver.NoSoundHardwareKey] = item.NoSoundHardware,
|
||||
[Models.Metadata.Driver.IncompleteKey] = item.Incomplete,
|
||||
[Serialization.Models.Metadata.Driver.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.Driver.EmulationKey] = item.Emulation,
|
||||
[Serialization.Models.Metadata.Driver.CocktailKey] = item.Cocktail,
|
||||
[Serialization.Models.Metadata.Driver.SaveStateKey] = item.SaveState,
|
||||
[Serialization.Models.Metadata.Driver.RequiresArtworkKey] = item.RequiresArtwork,
|
||||
[Serialization.Models.Metadata.Driver.UnofficialKey] = item.Unofficial,
|
||||
[Serialization.Models.Metadata.Driver.NoSoundHardwareKey] = item.NoSoundHardware,
|
||||
[Serialization.Models.Metadata.Driver.IncompleteKey] = item.Incomplete,
|
||||
};
|
||||
return driver;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Logiqx.Media"/> to <see cref="Models.Metadata.Media"/>
|
||||
/// Convert from <see cref="Media"/> to <see cref="Serialization.Models.Metadata.Media"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Media ConvertToInternalModel(Media item)
|
||||
private static Serialization.Models.Metadata.Media ConvertToInternalModel(Media item)
|
||||
{
|
||||
var media = new Models.Metadata.Media
|
||||
var media = new Serialization.Models.Metadata.Media
|
||||
{
|
||||
[Models.Metadata.Media.NameKey] = item.Name,
|
||||
[Models.Metadata.Media.MD5Key] = item.MD5,
|
||||
[Models.Metadata.Media.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Media.SHA256Key] = item.SHA256,
|
||||
[Models.Metadata.Media.SpamSumKey] = item.SpamSum,
|
||||
[Serialization.Models.Metadata.Media.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Media.MD5Key] = item.MD5,
|
||||
[Serialization.Models.Metadata.Media.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Media.SHA256Key] = item.SHA256,
|
||||
[Serialization.Models.Metadata.Media.SpamSumKey] = item.SpamSum,
|
||||
};
|
||||
return media;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Logiqx.Release"/> to <see cref="Models.Metadata.Release"/>
|
||||
/// Convert from <see cref="Release"/> to <see cref="Serialization.Models.Metadata.Release"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Release ConvertToInternalModel(Release item)
|
||||
private static Serialization.Models.Metadata.Release ConvertToInternalModel(Release item)
|
||||
{
|
||||
var release = new Models.Metadata.Release
|
||||
var release = new Serialization.Models.Metadata.Release
|
||||
{
|
||||
[Models.Metadata.Release.NameKey] = item.Name,
|
||||
[Models.Metadata.Release.RegionKey] = item.Region,
|
||||
[Models.Metadata.Release.LanguageKey] = item.Language,
|
||||
[Models.Metadata.Release.DateKey] = item.Date,
|
||||
[Models.Metadata.Release.DefaultKey] = item.Default,
|
||||
[Serialization.Models.Metadata.Release.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Release.RegionKey] = item.Region,
|
||||
[Serialization.Models.Metadata.Release.LanguageKey] = item.Language,
|
||||
[Serialization.Models.Metadata.Release.DateKey] = item.Date,
|
||||
[Serialization.Models.Metadata.Release.DefaultKey] = item.Default,
|
||||
};
|
||||
return release;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Logiqx.Rom"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="Rom"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(Rom item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(Rom item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Models.Metadata.Rom.CRCKey] = item.CRC,
|
||||
[Models.Metadata.Rom.MD2Key] = item.MD2,
|
||||
[Models.Metadata.Rom.MD4Key] = item.MD4,
|
||||
[Models.Metadata.Rom.MD5Key] = item.MD5,
|
||||
[Models.Metadata.Rom.RIPEMD128Key] = item.RIPEMD128,
|
||||
[Models.Metadata.Rom.RIPEMD160Key] = item.RIPEMD160,
|
||||
[Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Rom.SHA256Key] = item.SHA256,
|
||||
[Models.Metadata.Rom.SHA384Key] = item.SHA384,
|
||||
[Models.Metadata.Rom.SHA512Key] = item.SHA512,
|
||||
[Models.Metadata.Rom.SpamSumKey] = item.SpamSum,
|
||||
[Models.Metadata.Rom.xxHash364Key] = item.xxHash364,
|
||||
[Models.Metadata.Rom.xxHash3128Key] = item.xxHash3128,
|
||||
[Models.Metadata.Rom.MergeKey] = item.Merge,
|
||||
[Models.Metadata.Rom.StatusKey] = item.Status,
|
||||
[Models.Metadata.Rom.SerialKey] = item.Serial,
|
||||
[Models.Metadata.Rom.HeaderKey] = item.Header,
|
||||
[Models.Metadata.Rom.DateKey] = item.Date,
|
||||
[Models.Metadata.Rom.InvertedKey] = item.Inverted,
|
||||
[Models.Metadata.Rom.MIAKey] = item.MIA,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Serialization.Models.Metadata.Rom.CRCKey] = item.CRC,
|
||||
[Serialization.Models.Metadata.Rom.MD2Key] = item.MD2,
|
||||
[Serialization.Models.Metadata.Rom.MD4Key] = item.MD4,
|
||||
[Serialization.Models.Metadata.Rom.MD5Key] = item.MD5,
|
||||
[Serialization.Models.Metadata.Rom.RIPEMD128Key] = item.RIPEMD128,
|
||||
[Serialization.Models.Metadata.Rom.RIPEMD160Key] = item.RIPEMD160,
|
||||
[Serialization.Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Rom.SHA256Key] = item.SHA256,
|
||||
[Serialization.Models.Metadata.Rom.SHA384Key] = item.SHA384,
|
||||
[Serialization.Models.Metadata.Rom.SHA512Key] = item.SHA512,
|
||||
[Serialization.Models.Metadata.Rom.SpamSumKey] = item.SpamSum,
|
||||
[Serialization.Models.Metadata.Rom.xxHash364Key] = item.xxHash364,
|
||||
[Serialization.Models.Metadata.Rom.xxHash3128Key] = item.xxHash3128,
|
||||
[Serialization.Models.Metadata.Rom.MergeKey] = item.Merge,
|
||||
[Serialization.Models.Metadata.Rom.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.Rom.SerialKey] = item.Serial,
|
||||
[Serialization.Models.Metadata.Rom.HeaderKey] = item.Header,
|
||||
[Serialization.Models.Metadata.Rom.DateKey] = item.Date,
|
||||
[Serialization.Models.Metadata.Rom.InvertedKey] = item.Inverted,
|
||||
[Serialization.Models.Metadata.Rom.MIAKey] = item.MIA,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Logiqx.Sample"/> to <see cref="Models.Metadata.Sample"/>
|
||||
/// Convert from <see cref="Sample"/> to <see cref="Serialization.Models.Metadata.Sample"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Sample ConvertToInternalModel(Sample item)
|
||||
private static Serialization.Models.Metadata.Sample ConvertToInternalModel(Sample item)
|
||||
{
|
||||
var sample = new Models.Metadata.Sample
|
||||
var sample = new Serialization.Models.Metadata.Sample
|
||||
{
|
||||
[Models.Metadata.Sample.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Sample.NameKey] = item.Name,
|
||||
};
|
||||
return sample;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Logiqx.SoftwareList"/> to <see cref="Models.Metadata.SoftwareList"/>
|
||||
/// Convert from <see cref="SabreTools.Serialization.Models.Logiqx.SoftwareList"/> to <see cref="Serialization.Models.Metadata.SoftwareList"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.SoftwareList ConvertToInternalModel(Models.Logiqx.SoftwareList item)
|
||||
private static Serialization.Models.Metadata.SoftwareList ConvertToInternalModel(SabreTools.Serialization.Models.Logiqx.SoftwareList item)
|
||||
{
|
||||
var softwareList = new Models.Metadata.SoftwareList
|
||||
var softwareList = new Serialization.Models.Metadata.SoftwareList
|
||||
{
|
||||
[Models.Metadata.SoftwareList.TagKey] = item.Tag,
|
||||
[Models.Metadata.SoftwareList.NameKey] = item.Name,
|
||||
[Models.Metadata.SoftwareList.StatusKey] = item.Status,
|
||||
[Models.Metadata.SoftwareList.FilterKey] = item.Filter,
|
||||
[Serialization.Models.Metadata.SoftwareList.TagKey] = item.Tag,
|
||||
[Serialization.Models.Metadata.SoftwareList.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.SoftwareList.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.SoftwareList.FilterKey] = item.Filter,
|
||||
};
|
||||
return softwareList;
|
||||
}
|
||||
|
||||
@@ -3,18 +3,18 @@ using SabreTools.Serialization.Interfaces;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class M1 : IModelSerializer<Models.Listxml.M1, Models.Metadata.MetadataFile>
|
||||
public partial class M1 : IModelSerializer<SabreTools.Serialization.Models.Listxml.M1, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Listxml.M1? Deserialize(Models.Metadata.MetadataFile? obj)
|
||||
public SabreTools.Serialization.Models.Listxml.M1? Deserialize(Serialization.Models.Metadata.MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var header = obj.Read<Models.Metadata.Header>(Models.Metadata.MetadataFile.HeaderKey);
|
||||
var m1 = header != null ? ConvertM1FromInternalModel(header) : new Models.Listxml.M1();
|
||||
var header = obj.Read<Serialization.Models.Metadata.Header>(Serialization.Models.Metadata.MetadataFile.HeaderKey);
|
||||
var m1 = header != null ? ConvertM1FromInternalModel(header) : new SabreTools.Serialization.Models.Listxml.M1();
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
if (machines != null && machines.Length > 0)
|
||||
m1.Game = Array.ConvertAll(machines, Listxml.ConvertMachineFromInternalModel);
|
||||
|
||||
@@ -22,13 +22,13 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Models.Metadata.Header"/> to <see cref="Models.Listxml.M1"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Header"/> to <see cref="Models.Listxml.M1"/>
|
||||
/// </summary>
|
||||
private static Models.Listxml.M1 ConvertM1FromInternalModel(Models.Metadata.Header item)
|
||||
private static SabreTools.Serialization.Models.Listxml.M1 ConvertM1FromInternalModel(Serialization.Models.Metadata.Header item)
|
||||
{
|
||||
var m1 = new Models.Listxml.M1
|
||||
var m1 = new SabreTools.Serialization.Models.Listxml.M1
|
||||
{
|
||||
Version = item.ReadString(Models.Metadata.Header.VersionKey),
|
||||
Version = item.ReadString(Serialization.Models.Metadata.Header.VersionKey),
|
||||
};
|
||||
return m1;
|
||||
}
|
||||
|
||||
@@ -3,22 +3,22 @@ using SabreTools.Serialization.Interfaces;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class M1 : IModelSerializer<Models.Listxml.M1, Models.Metadata.MetadataFile>
|
||||
public partial class M1 : IModelSerializer<SabreTools.Serialization.Models.Listxml.M1, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Metadata.MetadataFile? Serialize(Models.Listxml.M1? item)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(SabreTools.Serialization.Models.Listxml.M1? item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile
|
||||
{
|
||||
[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
};
|
||||
|
||||
if (item?.Game != null && item.Game.Length > 0)
|
||||
{
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey]
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey]
|
||||
= Array.ConvertAll(item.Game, Listxml.ConvertMachineToInternalModel);
|
||||
}
|
||||
|
||||
@@ -26,13 +26,13 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.M1"/> to <see cref="Models.Metadata.Header"/>
|
||||
/// Convert from <see cref="SabreTools.Serialization.Models.Listxml.M1"/> to <see cref="Serialization.Models.Metadata.Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel(Models.Listxml.M1 item)
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel(SabreTools.Serialization.Models.Listxml.M1 item)
|
||||
{
|
||||
var header = new Models.Metadata.Header
|
||||
var header = new Serialization.Models.Metadata.Header
|
||||
{
|
||||
[Models.Metadata.Header.VersionKey] = item.Version,
|
||||
[Serialization.Models.Metadata.Header.VersionKey] = item.Version,
|
||||
};
|
||||
return header;
|
||||
}
|
||||
|
||||
@@ -3,18 +3,18 @@ using SabreTools.Serialization.Interfaces;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class Mess : IModelSerializer<Models.Listxml.Mess, Models.Metadata.MetadataFile>
|
||||
public partial class Mess : IModelSerializer<SabreTools.Serialization.Models.Listxml.Mess, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Listxml.Mess? Deserialize(Models.Metadata.MetadataFile? obj)
|
||||
public SabreTools.Serialization.Models.Listxml.Mess? Deserialize(Serialization.Models.Metadata.MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var header = obj.Read<Models.Metadata.Header>(Models.Metadata.MetadataFile.HeaderKey);
|
||||
var m1 = header != null ? ConvertMessFromInternalModel(header) : new Models.Listxml.Mess();
|
||||
var header = obj.Read<Serialization.Models.Metadata.Header>(Serialization.Models.Metadata.MetadataFile.HeaderKey);
|
||||
var m1 = header != null ? ConvertMessFromInternalModel(header) : new SabreTools.Serialization.Models.Listxml.Mess();
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
if (machines != null && machines.Length > 0)
|
||||
m1.Game = Array.ConvertAll(machines, Listxml.ConvertMachineFromInternalModel);
|
||||
|
||||
@@ -22,13 +22,13 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Models.Metadata.Header"/> to <see cref="Models.Listxml.Mess"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Header"/> to <see cref="SabreTools.Serialization.Models.Listxml.Mess"/>
|
||||
/// </summary>
|
||||
private static Models.Listxml.Mess ConvertMessFromInternalModel(Models.Metadata.Header item)
|
||||
private static SabreTools.Serialization.Models.Listxml.Mess ConvertMessFromInternalModel(Serialization.Models.Metadata.Header item)
|
||||
{
|
||||
var m1 = new Models.Listxml.Mess
|
||||
var m1 = new SabreTools.Serialization.Models.Listxml.Mess
|
||||
{
|
||||
Version = item.ReadString(Models.Metadata.Header.VersionKey),
|
||||
Version = item.ReadString(Serialization.Models.Metadata.Header.VersionKey),
|
||||
};
|
||||
return m1;
|
||||
}
|
||||
|
||||
@@ -3,22 +3,22 @@ using SabreTools.Serialization.Interfaces;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class Mess : IModelSerializer<Models.Listxml.Mess, Models.Metadata.MetadataFile>
|
||||
public partial class Mess : IModelSerializer<SabreTools.Serialization.Models.Listxml.Mess, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Metadata.MetadataFile? Serialize(Models.Listxml.Mess? item)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(SabreTools.Serialization.Models.Listxml.Mess? item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile
|
||||
{
|
||||
[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
};
|
||||
|
||||
if (item?.Game != null && item.Game.Length > 0)
|
||||
{
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey]
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey]
|
||||
= Array.ConvertAll(item.Game, Listxml.ConvertMachineToInternalModel);
|
||||
}
|
||||
|
||||
@@ -26,13 +26,13 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Listxml.Mess"/> to <see cref="Models.Metadata.Header"/>
|
||||
/// Convert from <see cref="SabreTools.Serialization.Models.Listxml.Mess"/> to <see cref="Serialization.Models.Metadata.Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel(Models.Listxml.Mess item)
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel(SabreTools.Serialization.Models.Listxml.Mess item)
|
||||
{
|
||||
var header = new Models.Metadata.Header
|
||||
var header = new Serialization.Models.Metadata.Header
|
||||
{
|
||||
[Models.Metadata.Header.VersionKey] = item.Version,
|
||||
[Serialization.Models.Metadata.Header.VersionKey] = item.Version,
|
||||
};
|
||||
return header;
|
||||
}
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
using System;
|
||||
using SabreTools.Models.OfflineList;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.OfflineList;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class OfflineList : IModelSerializer<Dat, Models.Metadata.MetadataFile>
|
||||
public partial class OfflineList : IModelSerializer<Dat, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Dat? Deserialize(Models.Metadata.MetadataFile? obj)
|
||||
public Dat? Deserialize(Serialization.Models.Metadata.MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var header = obj.Read<Models.Metadata.Header>(Models.Metadata.MetadataFile.HeaderKey);
|
||||
var header = obj.Read<Serialization.Models.Metadata.Header>(Serialization.Models.Metadata.MetadataFile.HeaderKey);
|
||||
var dat = header != null ? ConvertHeaderFromInternalModel(header) : new Dat();
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
if (machines != null && machines.Length > 0)
|
||||
{
|
||||
dat.Games = new Games
|
||||
@@ -28,48 +28,48 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Header"/> to <see cref="Models.OfflineList.Dat"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Header"/> to <see cref="Dat"/>
|
||||
/// </summary>
|
||||
private static Dat ConvertHeaderFromInternalModel(Models.Metadata.Header item)
|
||||
private static Dat ConvertHeaderFromInternalModel(Serialization.Models.Metadata.Header item)
|
||||
{
|
||||
var dat = new Dat
|
||||
{
|
||||
NoNamespaceSchemaLocation = item.ReadString(Models.Metadata.Header.SchemaLocationKey),
|
||||
NoNamespaceSchemaLocation = item.ReadString(Serialization.Models.Metadata.Header.SchemaLocationKey),
|
||||
};
|
||||
|
||||
if (item.ContainsKey(Models.Metadata.Header.NameKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.ImFolderKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.DatVersionKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.SystemKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.ScreenshotsWidthKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.ScreenshotsHeightKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.InfosKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.CanOpenKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.NewDatKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.SearchKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.RomTitleKey))
|
||||
if (item.ContainsKey(Serialization.Models.Metadata.Header.NameKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.ImFolderKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.DatVersionKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.SystemKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.ScreenshotsWidthKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.ScreenshotsHeightKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.InfosKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.CanOpenKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.NewDatKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.SearchKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.RomTitleKey))
|
||||
{
|
||||
dat.Configuration = new Configuration
|
||||
{
|
||||
DatName = item.ReadString(Models.Metadata.Header.NameKey),
|
||||
ImFolder = item.ReadString(Models.Metadata.Header.ImFolderKey),
|
||||
DatVersion = item.ReadString(Models.Metadata.Header.DatVersionKey),
|
||||
System = item.ReadString(Models.Metadata.Header.SystemKey),
|
||||
ScreenshotsWidth = item.ReadString(Models.Metadata.Header.ScreenshotsWidthKey),
|
||||
ScreenshotsHeight = item.ReadString(Models.Metadata.Header.ScreenshotsHeightKey),
|
||||
Infos = item.Read<Infos>(Models.Metadata.Header.InfosKey),
|
||||
CanOpen = item.Read<CanOpen>(Models.Metadata.Header.CanOpenKey),
|
||||
NewDat = item.Read<NewDat>(Models.Metadata.Header.NewDatKey),
|
||||
Search = item.Read<Search>(Models.Metadata.Header.SearchKey),
|
||||
RomTitle = item.ReadString(Models.Metadata.Header.RomTitleKey),
|
||||
DatName = item.ReadString(Serialization.Models.Metadata.Header.NameKey),
|
||||
ImFolder = item.ReadString(Serialization.Models.Metadata.Header.ImFolderKey),
|
||||
DatVersion = item.ReadString(Serialization.Models.Metadata.Header.DatVersionKey),
|
||||
System = item.ReadString(Serialization.Models.Metadata.Header.SystemKey),
|
||||
ScreenshotsWidth = item.ReadString(Serialization.Models.Metadata.Header.ScreenshotsWidthKey),
|
||||
ScreenshotsHeight = item.ReadString(Serialization.Models.Metadata.Header.ScreenshotsHeightKey),
|
||||
Infos = item.Read<Infos>(Serialization.Models.Metadata.Header.InfosKey),
|
||||
CanOpen = item.Read<CanOpen>(Serialization.Models.Metadata.Header.CanOpenKey),
|
||||
NewDat = item.Read<NewDat>(Serialization.Models.Metadata.Header.NewDatKey),
|
||||
Search = item.Read<Search>(Serialization.Models.Metadata.Header.SearchKey),
|
||||
RomTitle = item.ReadString(Serialization.Models.Metadata.Header.RomTitleKey),
|
||||
};
|
||||
}
|
||||
|
||||
if (item.ContainsKey(Models.Metadata.Header.ImagesKey))
|
||||
if (item.ContainsKey(Serialization.Models.Metadata.Header.ImagesKey))
|
||||
{
|
||||
dat.GUI = new GUI
|
||||
{
|
||||
Images = item.Read<Images>(Models.Metadata.Header.ImagesKey),
|
||||
Images = item.Read<Images>(Serialization.Models.Metadata.Header.ImagesKey),
|
||||
};
|
||||
}
|
||||
|
||||
@@ -77,30 +77,30 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Machine"/> to <see cref="Models.OfflineList.Game"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Machine"/> to <see cref="Game"/>
|
||||
/// </summary>
|
||||
private static Game ConvertMachineFromInternalModel(Models.Metadata.Machine item)
|
||||
private static Game ConvertMachineFromInternalModel(Serialization.Models.Metadata.Machine item)
|
||||
{
|
||||
var game = new Game
|
||||
{
|
||||
ImageNumber = item.ReadString(Models.Metadata.Machine.ImageNumberKey),
|
||||
ReleaseNumber = item.ReadString(Models.Metadata.Machine.ReleaseNumberKey),
|
||||
Title = item.ReadString(Models.Metadata.Machine.NameKey),
|
||||
SaveType = item.ReadString(Models.Metadata.Machine.SaveTypeKey),
|
||||
Publisher = item.ReadString(Models.Metadata.Machine.PublisherKey),
|
||||
Location = item.ReadString(Models.Metadata.Machine.LocationKey),
|
||||
SourceRom = item.ReadString(Models.Metadata.Machine.SourceRomKey),
|
||||
Language = item.ReadString(Models.Metadata.Machine.LanguageKey),
|
||||
Im1CRC = item.ReadString(Models.Metadata.Machine.Im1CRCKey),
|
||||
Im2CRC = item.ReadString(Models.Metadata.Machine.Im2CRCKey),
|
||||
Comment = item.ReadString(Models.Metadata.Machine.CommentKey),
|
||||
DuplicateID = item.ReadString(Models.Metadata.Machine.DuplicateIDKey),
|
||||
ImageNumber = item.ReadString(Serialization.Models.Metadata.Machine.ImageNumberKey),
|
||||
ReleaseNumber = item.ReadString(Serialization.Models.Metadata.Machine.ReleaseNumberKey),
|
||||
Title = item.ReadString(Serialization.Models.Metadata.Machine.NameKey),
|
||||
SaveType = item.ReadString(Serialization.Models.Metadata.Machine.SaveTypeKey),
|
||||
Publisher = item.ReadString(Serialization.Models.Metadata.Machine.PublisherKey),
|
||||
Location = item.ReadString(Serialization.Models.Metadata.Machine.LocationKey),
|
||||
SourceRom = item.ReadString(Serialization.Models.Metadata.Machine.SourceRomKey),
|
||||
Language = item.ReadString(Serialization.Models.Metadata.Machine.LanguageKey),
|
||||
Im1CRC = item.ReadString(Serialization.Models.Metadata.Machine.Im1CRCKey),
|
||||
Im2CRC = item.ReadString(Serialization.Models.Metadata.Machine.Im2CRCKey),
|
||||
Comment = item.ReadString(Serialization.Models.Metadata.Machine.CommentKey),
|
||||
DuplicateID = item.ReadString(Serialization.Models.Metadata.Machine.DuplicateIDKey),
|
||||
};
|
||||
|
||||
var roms = item.Read<Models.Metadata.Rom[]>(Models.Metadata.Machine.RomKey);
|
||||
var roms = item.Read<Serialization.Models.Metadata.Rom[]>(Serialization.Models.Metadata.Machine.RomKey);
|
||||
if (roms != null && roms.Length > 0)
|
||||
{
|
||||
var romSizes = Array.ConvertAll(roms, r => r.ReadLong(Models.Metadata.Rom.SizeKey) ?? -1);
|
||||
var romSizes = Array.ConvertAll(roms, r => r.ReadLong(Serialization.Models.Metadata.Rom.SizeKey) ?? -1);
|
||||
game.RomSize = Array.Find(romSizes, s => s > -1).ToString();
|
||||
|
||||
var romCRCs = Array.ConvertAll(roms, ConvertFromInternalModel);
|
||||
@@ -111,14 +111,14 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.OfflineList.FileRomCRC"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="FileRomCRC"/>
|
||||
/// </summary>
|
||||
private static FileRomCRC ConvertFromInternalModel(Models.Metadata.Rom item)
|
||||
private static FileRomCRC ConvertFromInternalModel(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var fileRomCRC = new FileRomCRC
|
||||
{
|
||||
Extension = item.ReadString(Models.Metadata.Rom.ExtensionKey),
|
||||
Content = item.ReadString(Models.Metadata.Rom.CRCKey),
|
||||
Extension = item.ReadString(Serialization.Models.Metadata.Rom.ExtensionKey),
|
||||
Content = item.ReadString(Serialization.Models.Metadata.Rom.CRCKey),
|
||||
};
|
||||
return fileRomCRC;
|
||||
}
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
using System;
|
||||
using SabreTools.Models.OfflineList;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.OfflineList;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class OfflineList : IModelSerializer<Dat, Models.Metadata.MetadataFile>
|
||||
public partial class OfflineList : IModelSerializer<Dat, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Metadata.MetadataFile? Serialize(Dat? item)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(Dat? item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile
|
||||
{
|
||||
[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
};
|
||||
|
||||
if (item?.Games?.Game != null && item.Games.Game.Length > 0)
|
||||
{
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey]
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey]
|
||||
= Array.ConvertAll(item.Games.Game, ConvertMachineToInternalModel);
|
||||
}
|
||||
|
||||
@@ -27,66 +27,66 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.OfflineList.Dat"/> to <see cref="Models.Metadata.Header"/>
|
||||
/// Convert from <see cref="Dat"/> to <see cref="Serialization.Models.Metadata.Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel(Dat item)
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel(Dat item)
|
||||
{
|
||||
var header = new Models.Metadata.Header
|
||||
var header = new Serialization.Models.Metadata.Header
|
||||
{
|
||||
[Models.Metadata.Header.SchemaLocationKey] = item.NoNamespaceSchemaLocation,
|
||||
[Serialization.Models.Metadata.Header.SchemaLocationKey] = item.NoNamespaceSchemaLocation,
|
||||
};
|
||||
|
||||
if (item.Configuration != null)
|
||||
{
|
||||
header[Models.Metadata.Header.NameKey] = item.Configuration.DatName;
|
||||
header[Models.Metadata.Header.ImFolderKey] = item.Configuration.ImFolder;
|
||||
header[Models.Metadata.Header.DatVersionKey] = item.Configuration.DatVersion;
|
||||
header[Models.Metadata.Header.SystemKey] = item.Configuration.System;
|
||||
header[Models.Metadata.Header.ScreenshotsWidthKey] = item.Configuration.ScreenshotsWidth;
|
||||
header[Models.Metadata.Header.ScreenshotsHeightKey] = item.Configuration.ScreenshotsHeight;
|
||||
header[Models.Metadata.Header.InfosKey] = item.Configuration.Infos;
|
||||
header[Models.Metadata.Header.CanOpenKey] = item.Configuration.CanOpen;
|
||||
header[Models.Metadata.Header.NewDatKey] = item.Configuration.NewDat;
|
||||
header[Models.Metadata.Header.SearchKey] = item.Configuration.Search;
|
||||
header[Models.Metadata.Header.RomTitleKey] = item.Configuration.RomTitle;
|
||||
header[Serialization.Models.Metadata.Header.NameKey] = item.Configuration.DatName;
|
||||
header[Serialization.Models.Metadata.Header.ImFolderKey] = item.Configuration.ImFolder;
|
||||
header[Serialization.Models.Metadata.Header.DatVersionKey] = item.Configuration.DatVersion;
|
||||
header[Serialization.Models.Metadata.Header.SystemKey] = item.Configuration.System;
|
||||
header[Serialization.Models.Metadata.Header.ScreenshotsWidthKey] = item.Configuration.ScreenshotsWidth;
|
||||
header[Serialization.Models.Metadata.Header.ScreenshotsHeightKey] = item.Configuration.ScreenshotsHeight;
|
||||
header[Serialization.Models.Metadata.Header.InfosKey] = item.Configuration.Infos;
|
||||
header[Serialization.Models.Metadata.Header.CanOpenKey] = item.Configuration.CanOpen;
|
||||
header[Serialization.Models.Metadata.Header.NewDatKey] = item.Configuration.NewDat;
|
||||
header[Serialization.Models.Metadata.Header.SearchKey] = item.Configuration.Search;
|
||||
header[Serialization.Models.Metadata.Header.RomTitleKey] = item.Configuration.RomTitle;
|
||||
}
|
||||
|
||||
if (item.GUI != null)
|
||||
{
|
||||
header[Models.Metadata.Header.ImagesKey] = item.GUI.Images;
|
||||
header[Serialization.Models.Metadata.Header.ImagesKey] = item.GUI.Images;
|
||||
}
|
||||
|
||||
return header;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.OfflineList.Game"/> to <see cref="Models.Metadata.Machine"/>
|
||||
/// Convert from <see cref="Game"/> to <see cref="Serialization.Models.Metadata.Machine"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Machine ConvertMachineToInternalModel(Game item)
|
||||
private static Serialization.Models.Metadata.Machine ConvertMachineToInternalModel(Game item)
|
||||
{
|
||||
var machine = new Models.Metadata.Machine
|
||||
var machine = new Serialization.Models.Metadata.Machine
|
||||
{
|
||||
[Models.Metadata.Machine.ImageNumberKey] = item.ImageNumber,
|
||||
[Models.Metadata.Machine.ReleaseNumberKey] = item.ReleaseNumber,
|
||||
[Models.Metadata.Machine.NameKey] = item.Title,
|
||||
[Models.Metadata.Machine.SaveTypeKey] = item.SaveType,
|
||||
[Models.Metadata.Machine.PublisherKey] = item.Publisher,
|
||||
[Models.Metadata.Machine.LocationKey] = item.Location,
|
||||
[Models.Metadata.Machine.SourceRomKey] = item.SourceRom,
|
||||
[Models.Metadata.Machine.LanguageKey] = item.Language,
|
||||
[Models.Metadata.Machine.Im1CRCKey] = item.Im1CRC,
|
||||
[Models.Metadata.Machine.Im2CRCKey] = item.Im2CRC,
|
||||
[Models.Metadata.Machine.CommentKey] = item.Comment,
|
||||
[Models.Metadata.Machine.DuplicateIDKey] = item.DuplicateID,
|
||||
[Serialization.Models.Metadata.Machine.ImageNumberKey] = item.ImageNumber,
|
||||
[Serialization.Models.Metadata.Machine.ReleaseNumberKey] = item.ReleaseNumber,
|
||||
[Serialization.Models.Metadata.Machine.NameKey] = item.Title,
|
||||
[Serialization.Models.Metadata.Machine.SaveTypeKey] = item.SaveType,
|
||||
[Serialization.Models.Metadata.Machine.PublisherKey] = item.Publisher,
|
||||
[Serialization.Models.Metadata.Machine.LocationKey] = item.Location,
|
||||
[Serialization.Models.Metadata.Machine.SourceRomKey] = item.SourceRom,
|
||||
[Serialization.Models.Metadata.Machine.LanguageKey] = item.Language,
|
||||
[Serialization.Models.Metadata.Machine.Im1CRCKey] = item.Im1CRC,
|
||||
[Serialization.Models.Metadata.Machine.Im2CRCKey] = item.Im2CRC,
|
||||
[Serialization.Models.Metadata.Machine.CommentKey] = item.Comment,
|
||||
[Serialization.Models.Metadata.Machine.DuplicateIDKey] = item.DuplicateID,
|
||||
};
|
||||
|
||||
if (item.Files?.RomCRC != null && item.Files.RomCRC.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.RomKey]
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey]
|
||||
= Array.ConvertAll(item.Files.RomCRC, romCRC =>
|
||||
{
|
||||
var rom = ConvertToInternalModel(romCRC);
|
||||
rom[Models.Metadata.Rom.SizeKey] = item.RomSize;
|
||||
rom[Serialization.Models.Metadata.Rom.SizeKey] = item.RomSize;
|
||||
return rom;
|
||||
});
|
||||
}
|
||||
@@ -95,14 +95,14 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.OfflineList.FileRomCRC"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="FileRomCRC"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(FileRomCRC item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(FileRomCRC item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.ExtensionKey] = item.Extension,
|
||||
[Models.Metadata.Rom.CRCKey] = item.Content,
|
||||
[Serialization.Models.Metadata.Rom.ExtensionKey] = item.Extension,
|
||||
[Serialization.Models.Metadata.Rom.CRCKey] = item.Content,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
using System;
|
||||
using SabreTools.Models.OpenMSX;
|
||||
using SabreTools.Serialization.Models.OpenMSX;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class OpenMSX : IModelSerializer<SoftwareDb, Models.Metadata.MetadataFile>
|
||||
public partial class OpenMSX : IModelSerializer<SoftwareDb, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public SoftwareDb? Deserialize(Models.Metadata.MetadataFile? obj)
|
||||
public SoftwareDb? Deserialize(Serialization.Models.Metadata.MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var header = obj.Read<Models.Metadata.Header>(Models.Metadata.MetadataFile.HeaderKey);
|
||||
var header = obj.Read<Serialization.Models.Metadata.Header>(Serialization.Models.Metadata.MetadataFile.HeaderKey);
|
||||
var softwareDb = header != null ? ConvertHeaderFromInternalModel(header) : new SoftwareDb();
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
if (machines != null && machines.Length > 0)
|
||||
softwareDb.Software = Array.ConvertAll(machines, ConvertMachineFromInternalModel);
|
||||
|
||||
@@ -23,33 +23,33 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Header"/> to <see cref="Models.OpenMSX.SoftwareDb"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Header"/> to <see cref="SoftwareDb"/>
|
||||
/// </summary>
|
||||
private static SoftwareDb ConvertHeaderFromInternalModel(Models.Metadata.Header item)
|
||||
private static SoftwareDb ConvertHeaderFromInternalModel(Serialization.Models.Metadata.Header item)
|
||||
{
|
||||
var softwareDb = new SoftwareDb
|
||||
{
|
||||
Timestamp = item.ReadString(Models.Metadata.Header.TimestampKey),
|
||||
Timestamp = item.ReadString(Serialization.Models.Metadata.Header.TimestampKey),
|
||||
};
|
||||
return softwareDb;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Machine"/> to <see cref="Models.OpenMSX.Software"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Machine"/> to <see cref="Software"/>
|
||||
/// </summary>
|
||||
private static Software ConvertMachineFromInternalModel(Models.Metadata.Machine item)
|
||||
private static Software ConvertMachineFromInternalModel(Serialization.Models.Metadata.Machine item)
|
||||
{
|
||||
var game = new Software
|
||||
{
|
||||
Title = item.ReadString(Models.Metadata.Machine.NameKey),
|
||||
GenMSXID = item.ReadString(Models.Metadata.Machine.GenMSXIDKey),
|
||||
System = item.ReadString(Models.Metadata.Machine.SystemKey),
|
||||
Company = item.ReadString(Models.Metadata.Machine.CompanyKey),
|
||||
Year = item.ReadString(Models.Metadata.Machine.YearKey),
|
||||
Country = item.ReadString(Models.Metadata.Machine.CountryKey),
|
||||
Title = item.ReadString(Serialization.Models.Metadata.Machine.NameKey),
|
||||
GenMSXID = item.ReadString(Serialization.Models.Metadata.Machine.GenMSXIDKey),
|
||||
System = item.ReadString(Serialization.Models.Metadata.Machine.SystemKey),
|
||||
Company = item.ReadString(Serialization.Models.Metadata.Machine.CompanyKey),
|
||||
Year = item.ReadString(Serialization.Models.Metadata.Machine.YearKey),
|
||||
Country = item.ReadString(Serialization.Models.Metadata.Machine.CountryKey),
|
||||
};
|
||||
|
||||
var dumps = item.Read<Models.Metadata.Dump[]>(Models.Metadata.Machine.DumpKey);
|
||||
var dumps = item.Read<Serialization.Models.Metadata.Dump[]>(Serialization.Models.Metadata.Machine.DumpKey);
|
||||
if (dumps != null && dumps.Length > 0)
|
||||
game.Dump = Array.ConvertAll(dumps, ConvertFromInternalModel);
|
||||
|
||||
@@ -57,25 +57,25 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Dump"/> to <see cref="Models.OpenMSX.Dump"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Dump"/> to <see cref="Dump"/>
|
||||
/// </summary>
|
||||
private static Dump ConvertFromInternalModel(Models.Metadata.Dump item)
|
||||
private static Dump ConvertFromInternalModel(Serialization.Models.Metadata.Dump item)
|
||||
{
|
||||
var dump = new Dump();
|
||||
|
||||
var original = item.Read<Models.Metadata.Original>(Models.Metadata.Dump.OriginalKey);
|
||||
var original = item.Read<Serialization.Models.Metadata.Original>(Serialization.Models.Metadata.Dump.OriginalKey);
|
||||
if (original != null)
|
||||
dump.Original = ConvertFromInternalModel(original);
|
||||
|
||||
var rom = item.Read<Models.Metadata.Rom>(Models.Metadata.Dump.RomKey);
|
||||
var rom = item.Read<Serialization.Models.Metadata.Rom>(Serialization.Models.Metadata.Dump.RomKey);
|
||||
if (rom != null)
|
||||
dump.Rom = ConvertRomFromInternalModel(rom);
|
||||
|
||||
var megaRom = item.Read<Models.Metadata.Rom>(Models.Metadata.Dump.MegaRomKey);
|
||||
var megaRom = item.Read<Serialization.Models.Metadata.Rom>(Serialization.Models.Metadata.Dump.MegaRomKey);
|
||||
if (megaRom != null)
|
||||
dump.Rom = ConvertMegaRomFromInternalModel(megaRom);
|
||||
|
||||
var sccPlusCart = item.Read<Models.Metadata.Rom>(Models.Metadata.Dump.SCCPlusCartKey);
|
||||
var sccPlusCart = item.Read<Serialization.Models.Metadata.Rom>(Serialization.Models.Metadata.Dump.SCCPlusCartKey);
|
||||
if (sccPlusCart != null)
|
||||
dump.Rom = ConvertSCCPlusCartFromInternalModel(sccPlusCart);
|
||||
|
||||
@@ -83,59 +83,59 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.OpenMSX.MegaRom"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="MegaRom"/>
|
||||
/// </summary>
|
||||
private static MegaRom ConvertMegaRomFromInternalModel(Models.Metadata.Rom item)
|
||||
private static MegaRom ConvertMegaRomFromInternalModel(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var megaRom = new MegaRom
|
||||
{
|
||||
Start = item.ReadString(Models.Metadata.Rom.StartKey),
|
||||
Type = item.ReadString(Models.Metadata.Rom.OpenMSXType),
|
||||
Hash = item.ReadString(Models.Metadata.Rom.SHA1Key),
|
||||
Remark = item.ReadString(Models.Metadata.Rom.RemarkKey),
|
||||
Start = item.ReadString(Serialization.Models.Metadata.Rom.StartKey),
|
||||
Type = item.ReadString(Serialization.Models.Metadata.Rom.OpenMSXType),
|
||||
Hash = item.ReadString(Serialization.Models.Metadata.Rom.SHA1Key),
|
||||
Remark = item.ReadString(Serialization.Models.Metadata.Rom.RemarkKey),
|
||||
};
|
||||
return megaRom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Original"/> to <see cref="Models.OpenMSX.Original"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Original"/> to <see cref="Original"/>
|
||||
/// </summary>
|
||||
private static Original ConvertFromInternalModel(Models.Metadata.Original item)
|
||||
private static Original ConvertFromInternalModel(Serialization.Models.Metadata.Original item)
|
||||
{
|
||||
var original = new Original
|
||||
{
|
||||
Value = item.ReadString(Models.Metadata.Original.ValueKey),
|
||||
Content = item.ReadString(Models.Metadata.Original.ContentKey),
|
||||
Value = item.ReadString(Serialization.Models.Metadata.Original.ValueKey),
|
||||
Content = item.ReadString(Serialization.Models.Metadata.Original.ContentKey),
|
||||
};
|
||||
return original;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.OpenMSX.Rom"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="Rom"/>
|
||||
/// </summary>
|
||||
private static Rom ConvertRomFromInternalModel(Models.Metadata.Rom item)
|
||||
private static Rom ConvertRomFromInternalModel(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var rom = new Rom
|
||||
{
|
||||
Start = item.ReadString(Models.Metadata.Rom.StartKey),
|
||||
Type = item.ReadString(Models.Metadata.Rom.OpenMSXType),
|
||||
Hash = item.ReadString(Models.Metadata.Rom.SHA1Key),
|
||||
Remark = item.ReadString(Models.Metadata.Rom.RemarkKey),
|
||||
Start = item.ReadString(Serialization.Models.Metadata.Rom.StartKey),
|
||||
Type = item.ReadString(Serialization.Models.Metadata.Rom.OpenMSXType),
|
||||
Hash = item.ReadString(Serialization.Models.Metadata.Rom.SHA1Key),
|
||||
Remark = item.ReadString(Serialization.Models.Metadata.Rom.RemarkKey),
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.OpenMSX.SCCPlusCart"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="SCCPlusCart"/>
|
||||
/// </summary>
|
||||
private static SCCPlusCart ConvertSCCPlusCartFromInternalModel(Models.Metadata.Rom item)
|
||||
private static SCCPlusCart ConvertSCCPlusCartFromInternalModel(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var sccPlusCart = new SCCPlusCart
|
||||
{
|
||||
Start = item.ReadString(Models.Metadata.Rom.StartKey),
|
||||
Type = item.ReadString(Models.Metadata.Rom.OpenMSXType),
|
||||
Hash = item.ReadString(Models.Metadata.Rom.SHA1Key),
|
||||
Remark = item.ReadString(Models.Metadata.Rom.RemarkKey),
|
||||
Start = item.ReadString(Serialization.Models.Metadata.Rom.StartKey),
|
||||
Type = item.ReadString(Serialization.Models.Metadata.Rom.OpenMSXType),
|
||||
Hash = item.ReadString(Serialization.Models.Metadata.Rom.SHA1Key),
|
||||
Remark = item.ReadString(Serialization.Models.Metadata.Rom.RemarkKey),
|
||||
};
|
||||
return sccPlusCart;
|
||||
}
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
using System;
|
||||
using SabreTools.Models.OpenMSX;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.OpenMSX;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class OpenMSX : IModelSerializer<SoftwareDb, Models.Metadata.MetadataFile>
|
||||
public partial class OpenMSX : IModelSerializer<SoftwareDb, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Metadata.MetadataFile? Serialize(SoftwareDb? item)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(SoftwareDb? item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile
|
||||
{
|
||||
[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
};
|
||||
|
||||
if (item?.Software != null && item.Software.Length > 0)
|
||||
{
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey]
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey]
|
||||
= Array.ConvertAll(item.Software, ConvertMachineToInternalModel);
|
||||
}
|
||||
|
||||
@@ -27,35 +27,35 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.OpenMSX.SoftwareDb"/> to <see cref="Models.Metadata.Header"/>
|
||||
/// Convert from <see cref="SoftwareDb"/> to <see cref="Serialization.Models.Metadata.Header"/>
|
||||
/// </summary>
|
||||
public static Models.Metadata.Header ConvertHeaderToInternalModel(SoftwareDb item)
|
||||
public static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel(SoftwareDb item)
|
||||
{
|
||||
var header = new Models.Metadata.Header
|
||||
var header = new Serialization.Models.Metadata.Header
|
||||
{
|
||||
[Models.Metadata.Header.TimestampKey] = item.Timestamp,
|
||||
[Serialization.Models.Metadata.Header.TimestampKey] = item.Timestamp,
|
||||
};
|
||||
return header;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.OpenMSX.Software"/> to <see cref="Models.Metadata.Machine"/>
|
||||
/// Convert from <see cref="Software"/> to <see cref="Serialization.Models.Metadata.Machine"/>
|
||||
/// </summary>
|
||||
public static Models.Metadata.Machine ConvertMachineToInternalModel(Software item)
|
||||
public static Serialization.Models.Metadata.Machine ConvertMachineToInternalModel(Software item)
|
||||
{
|
||||
var machine = new Models.Metadata.Machine
|
||||
var machine = new Serialization.Models.Metadata.Machine
|
||||
{
|
||||
[Models.Metadata.Machine.NameKey] = item.Title,
|
||||
[Models.Metadata.Machine.GenMSXIDKey] = item.GenMSXID,
|
||||
[Models.Metadata.Machine.SystemKey] = item.System,
|
||||
[Models.Metadata.Machine.CompanyKey] = item.Company,
|
||||
[Models.Metadata.Machine.YearKey] = item.Year,
|
||||
[Models.Metadata.Machine.CountryKey] = item.Country,
|
||||
[Serialization.Models.Metadata.Machine.NameKey] = item.Title,
|
||||
[Serialization.Models.Metadata.Machine.GenMSXIDKey] = item.GenMSXID,
|
||||
[Serialization.Models.Metadata.Machine.SystemKey] = item.System,
|
||||
[Serialization.Models.Metadata.Machine.CompanyKey] = item.Company,
|
||||
[Serialization.Models.Metadata.Machine.YearKey] = item.Year,
|
||||
[Serialization.Models.Metadata.Machine.CountryKey] = item.Country,
|
||||
};
|
||||
|
||||
if (item.Dump != null && item.Dump.Length > 0)
|
||||
{
|
||||
machine[Models.Metadata.Machine.DumpKey]
|
||||
machine[Serialization.Models.Metadata.Machine.DumpKey]
|
||||
= Array.ConvertAll(item.Dump, ConvertToInternalModel);
|
||||
}
|
||||
|
||||
@@ -63,29 +63,29 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.OpenMSX.Dump"/> to <see cref="Models.Metadata.Dump"/>
|
||||
/// Convert from <see cref="Dump"/> to <see cref="Serialization.Models.Metadata.Dump"/>
|
||||
/// </summary>
|
||||
public static Models.Metadata.Dump ConvertToInternalModel(Dump item)
|
||||
public static Serialization.Models.Metadata.Dump ConvertToInternalModel(Dump item)
|
||||
{
|
||||
var dump = new Models.Metadata.Dump();
|
||||
var dump = new Serialization.Models.Metadata.Dump();
|
||||
|
||||
if (item.Original != null)
|
||||
dump[Models.Metadata.Dump.OriginalKey] = ConvertToInternalModel(item.Original);
|
||||
dump[Serialization.Models.Metadata.Dump.OriginalKey] = ConvertToInternalModel(item.Original);
|
||||
|
||||
if (item.Rom != null)
|
||||
{
|
||||
switch (item.Rom)
|
||||
{
|
||||
case Rom rom:
|
||||
dump[Models.Metadata.Dump.RomKey] = ConvertToInternalModel(rom);
|
||||
dump[Serialization.Models.Metadata.Dump.RomKey] = ConvertToInternalModel(rom);
|
||||
break;
|
||||
|
||||
case MegaRom megaRom:
|
||||
dump[Models.Metadata.Dump.MegaRomKey] = ConvertToInternalModel(megaRom);
|
||||
dump[Serialization.Models.Metadata.Dump.MegaRomKey] = ConvertToInternalModel(megaRom);
|
||||
break;
|
||||
|
||||
case SCCPlusCart sccPlusCart:
|
||||
dump[Models.Metadata.Dump.SCCPlusCartKey] = ConvertToInternalModel(sccPlusCart);
|
||||
dump[Serialization.Models.Metadata.Dump.SCCPlusCartKey] = ConvertToInternalModel(sccPlusCart);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -94,29 +94,29 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.OpenMSX.Original"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="Original"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
public static Models.Metadata.Original ConvertToInternalModel(Original item)
|
||||
public static Serialization.Models.Metadata.Original ConvertToInternalModel(Original item)
|
||||
{
|
||||
var original = new Models.Metadata.Original
|
||||
var original = new Serialization.Models.Metadata.Original
|
||||
{
|
||||
[Models.Metadata.Original.ValueKey] = item.Value,
|
||||
[Models.Metadata.Original.ContentKey] = item.Content,
|
||||
[Serialization.Models.Metadata.Original.ValueKey] = item.Value,
|
||||
[Serialization.Models.Metadata.Original.ContentKey] = item.Content,
|
||||
};
|
||||
return original;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.OpenMSX.RomBase"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="RomBase"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
public static Models.Metadata.Rom ConvertToInternalModel(RomBase item)
|
||||
public static Serialization.Models.Metadata.Rom ConvertToInternalModel(RomBase item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.StartKey] = item.Start,
|
||||
[Models.Metadata.Rom.OpenMSXType] = item.Type,
|
||||
[Models.Metadata.Rom.SHA1Key] = item.Hash,
|
||||
[Models.Metadata.Rom.RemarkKey] = item.Remark,
|
||||
[Serialization.Models.Metadata.Rom.StartKey] = item.Start,
|
||||
[Serialization.Models.Metadata.Rom.OpenMSXType] = item.Type,
|
||||
[Serialization.Models.Metadata.Rom.SHA1Key] = item.Hash,
|
||||
[Serialization.Models.Metadata.Rom.RemarkKey] = item.Remark,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using SabreTools.Models.RomCenter;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.RomCenter;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class RomCenter : IModelSerializer<MetadataFile, Models.Metadata.MetadataFile>
|
||||
public partial class RomCenter : IModelSerializer<MetadataFile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public MetadataFile? Deserialize(Models.Metadata.MetadataFile? obj)
|
||||
public MetadataFile? Deserialize(Serialization.Models.Metadata.MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var header = obj.Read<Models.Metadata.Header>(Models.Metadata.MetadataFile.HeaderKey);
|
||||
var header = obj.Read<Serialization.Models.Metadata.Header>(Serialization.Models.Metadata.MetadataFile.HeaderKey);
|
||||
var metadataFile = header != null ? ConvertHeaderFromInternalModel(header) : new MetadataFile();
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
var items = new List<Rom>();
|
||||
foreach (var machine in machines ?? [])
|
||||
{
|
||||
@@ -28,52 +28,52 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Header"/> to <see cref="Models.RomCenter.MetadataFile"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Header"/> to <see cref="MetadataFile"/>
|
||||
/// </summary>
|
||||
private static MetadataFile ConvertHeaderFromInternalModel(Models.Metadata.Header item)
|
||||
private static MetadataFile ConvertHeaderFromInternalModel(Serialization.Models.Metadata.Header item)
|
||||
{
|
||||
var metadataFile = new MetadataFile();
|
||||
|
||||
if (item.ContainsKey(Models.Metadata.Header.AuthorKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.VersionKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.EmailKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.HomepageKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.UrlKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.DateKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.CommentKey))
|
||||
if (item.ContainsKey(Serialization.Models.Metadata.Header.AuthorKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.VersionKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.EmailKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.HomepageKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.UrlKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.DateKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.CommentKey))
|
||||
{
|
||||
metadataFile.Credits = new Credits
|
||||
{
|
||||
Author = item.ReadString(Models.Metadata.Header.AuthorKey),
|
||||
Version = item.ReadString(Models.Metadata.Header.VersionKey),
|
||||
Email = item.ReadString(Models.Metadata.Header.EmailKey),
|
||||
Homepage = item.ReadString(Models.Metadata.Header.HomepageKey),
|
||||
Url = item.ReadString(Models.Metadata.Header.UrlKey),
|
||||
Date = item.ReadString(Models.Metadata.Header.DateKey),
|
||||
Comment = item.ReadString(Models.Metadata.Header.CommentKey),
|
||||
Author = item.ReadString(Serialization.Models.Metadata.Header.AuthorKey),
|
||||
Version = item.ReadString(Serialization.Models.Metadata.Header.VersionKey),
|
||||
Email = item.ReadString(Serialization.Models.Metadata.Header.EmailKey),
|
||||
Homepage = item.ReadString(Serialization.Models.Metadata.Header.HomepageKey),
|
||||
Url = item.ReadString(Serialization.Models.Metadata.Header.UrlKey),
|
||||
Date = item.ReadString(Serialization.Models.Metadata.Header.DateKey),
|
||||
Comment = item.ReadString(Serialization.Models.Metadata.Header.CommentKey),
|
||||
};
|
||||
}
|
||||
|
||||
if (item.ContainsKey(Models.Metadata.Header.DatVersionKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.PluginKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.ForceMergingKey))
|
||||
if (item.ContainsKey(Serialization.Models.Metadata.Header.DatVersionKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.PluginKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.ForceMergingKey))
|
||||
{
|
||||
metadataFile.Dat = new Dat
|
||||
{
|
||||
Version = item.ReadString(Models.Metadata.Header.DatVersionKey),
|
||||
Plugin = item.ReadString(Models.Metadata.Header.PluginKey),
|
||||
Split = item.ReadString(Models.Metadata.Header.ForceMergingKey) == "split" ? "yes" : "no",
|
||||
Merge = item.ReadString(Models.Metadata.Header.ForceMergingKey) == "merge" ? "yes" : "no",
|
||||
Version = item.ReadString(Serialization.Models.Metadata.Header.DatVersionKey),
|
||||
Plugin = item.ReadString(Serialization.Models.Metadata.Header.PluginKey),
|
||||
Split = item.ReadString(Serialization.Models.Metadata.Header.ForceMergingKey) == "split" ? "yes" : "no",
|
||||
Merge = item.ReadString(Serialization.Models.Metadata.Header.ForceMergingKey) == "merge" ? "yes" : "no",
|
||||
};
|
||||
}
|
||||
|
||||
if (item.ContainsKey(Models.Metadata.Header.RefNameKey)
|
||||
|| item.ContainsKey(Models.Metadata.Header.EmulatorVersionKey))
|
||||
if (item.ContainsKey(Serialization.Models.Metadata.Header.RefNameKey)
|
||||
|| item.ContainsKey(Serialization.Models.Metadata.Header.EmulatorVersionKey))
|
||||
{
|
||||
metadataFile.Emulator = new Emulator
|
||||
{
|
||||
RefName = item.ReadString(Models.Metadata.Header.RefNameKey),
|
||||
Version = item.ReadString(Models.Metadata.Header.EmulatorVersionKey),
|
||||
RefName = item.ReadString(Serialization.Models.Metadata.Header.RefNameKey),
|
||||
Version = item.ReadString(Serialization.Models.Metadata.Header.EmulatorVersionKey),
|
||||
};
|
||||
}
|
||||
|
||||
@@ -81,11 +81,11 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Machine"/> to an array of <see cref="Models.RomCenter.Rom"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Machine"/> to an array of <see cref="Rom"/>
|
||||
/// </summary>
|
||||
private static Rom[] ConvertMachineFromInternalModel(Models.Metadata.Machine item)
|
||||
private static Rom[] ConvertMachineFromInternalModel(Serialization.Models.Metadata.Machine item)
|
||||
{
|
||||
var roms = item.Read<Models.Metadata.Rom[]>(Models.Metadata.Machine.RomKey);
|
||||
var roms = item.Read<Serialization.Models.Metadata.Rom[]>(Serialization.Models.Metadata.Machine.RomKey);
|
||||
if (roms == null)
|
||||
return [];
|
||||
|
||||
@@ -93,21 +93,21 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.RomCenter.Rom"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="Rom"/>
|
||||
/// </summary>
|
||||
private static Rom ConvertFromInternalModel(Models.Metadata.Rom item, Models.Metadata.Machine parent)
|
||||
private static Rom ConvertFromInternalModel(Serialization.Models.Metadata.Rom item, Serialization.Models.Metadata.Machine parent)
|
||||
{
|
||||
var row = new Rom
|
||||
{
|
||||
ParentName = parent.ReadString(Models.Metadata.Machine.CloneOfKey),
|
||||
//ParentDescription = parent.ReadString(Models.Metadata.Machine.ParentDescriptionKey), // This is unmappable
|
||||
GameName = parent.ReadString(Models.Metadata.Machine.NameKey),
|
||||
GameDescription = parent.ReadString(Models.Metadata.Machine.DescriptionKey),
|
||||
RomName = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
RomCRC = item.ReadString(Models.Metadata.Rom.CRCKey),
|
||||
RomSize = item.ReadString(Models.Metadata.Rom.SizeKey),
|
||||
RomOf = parent.ReadString(Models.Metadata.Machine.RomOfKey),
|
||||
MergeName = item.ReadString(Models.Metadata.Rom.MergeKey),
|
||||
ParentName = parent.ReadString(Serialization.Models.Metadata.Machine.CloneOfKey),
|
||||
//ParentDescription = parent.ReadString(Serialization.Models.Metadata.Machine.ParentDescriptionKey), // This is unmappable
|
||||
GameName = parent.ReadString(Serialization.Models.Metadata.Machine.NameKey),
|
||||
GameDescription = parent.ReadString(Serialization.Models.Metadata.Machine.DescriptionKey),
|
||||
RomName = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
RomCRC = item.ReadString(Serialization.Models.Metadata.Rom.CRCKey),
|
||||
RomSize = item.ReadString(Serialization.Models.Metadata.Rom.SizeKey),
|
||||
RomOf = parent.ReadString(Serialization.Models.Metadata.Machine.RomOfKey),
|
||||
MergeName = item.ReadString(Serialization.Models.Metadata.Rom.MergeKey),
|
||||
};
|
||||
return row;
|
||||
}
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
using System;
|
||||
using SabreTools.Models.RomCenter;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.RomCenter;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class RomCenter : IModelSerializer<MetadataFile, Models.Metadata.MetadataFile>
|
||||
public partial class RomCenter : IModelSerializer<MetadataFile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Metadata.MetadataFile? Serialize(MetadataFile? obj)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile
|
||||
{
|
||||
[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(obj),
|
||||
[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(obj),
|
||||
};
|
||||
|
||||
if (obj?.Games?.Rom != null && obj.Games.Rom.Length > 0)
|
||||
{
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey]
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey]
|
||||
= Array.ConvertAll(obj.Games.Rom, ConvertMachineToInternalModel);
|
||||
}
|
||||
|
||||
@@ -27,72 +27,72 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.RomCenter.MetadataFile"/> to <see cref="Models.Metadata.Header"/>
|
||||
/// Convert from <see cref="MetadataFile"/> to <see cref="Serialization.Models.Metadata.Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel(MetadataFile item)
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel(MetadataFile item)
|
||||
{
|
||||
var header = new Models.Metadata.Header();
|
||||
var header = new Serialization.Models.Metadata.Header();
|
||||
|
||||
if (item.Credits != null)
|
||||
{
|
||||
header[Models.Metadata.Header.AuthorKey] = item.Credits.Author;
|
||||
header[Models.Metadata.Header.VersionKey] = item.Credits.Version;
|
||||
header[Models.Metadata.Header.EmailKey] = item.Credits.Email;
|
||||
header[Models.Metadata.Header.HomepageKey] = item.Credits.Homepage;
|
||||
header[Models.Metadata.Header.UrlKey] = item.Credits.Url;
|
||||
header[Models.Metadata.Header.DateKey] = item.Credits.Date;
|
||||
header[Models.Metadata.Header.CommentKey] = item.Credits.Comment;
|
||||
header[Serialization.Models.Metadata.Header.AuthorKey] = item.Credits.Author;
|
||||
header[Serialization.Models.Metadata.Header.VersionKey] = item.Credits.Version;
|
||||
header[Serialization.Models.Metadata.Header.EmailKey] = item.Credits.Email;
|
||||
header[Serialization.Models.Metadata.Header.HomepageKey] = item.Credits.Homepage;
|
||||
header[Serialization.Models.Metadata.Header.UrlKey] = item.Credits.Url;
|
||||
header[Serialization.Models.Metadata.Header.DateKey] = item.Credits.Date;
|
||||
header[Serialization.Models.Metadata.Header.CommentKey] = item.Credits.Comment;
|
||||
}
|
||||
|
||||
if (item.Dat != null)
|
||||
{
|
||||
header[Models.Metadata.Header.DatVersionKey] = item.Dat.Version;
|
||||
header[Models.Metadata.Header.PluginKey] = item.Dat.Plugin;
|
||||
header[Serialization.Models.Metadata.Header.DatVersionKey] = item.Dat.Version;
|
||||
header[Serialization.Models.Metadata.Header.PluginKey] = item.Dat.Plugin;
|
||||
|
||||
if (item.Dat.Split == "yes" || item.Dat.Split == "1")
|
||||
header[Models.Metadata.Header.ForceMergingKey] = "split";
|
||||
header[Serialization.Models.Metadata.Header.ForceMergingKey] = "split";
|
||||
else if (item.Dat.Merge == "yes" || item.Dat.Merge == "1")
|
||||
header[Models.Metadata.Header.ForceMergingKey] = "merge";
|
||||
header[Serialization.Models.Metadata.Header.ForceMergingKey] = "merge";
|
||||
}
|
||||
|
||||
if (item.Emulator != null)
|
||||
{
|
||||
header[Models.Metadata.Header.RefNameKey] = item.Emulator.RefName;
|
||||
header[Models.Metadata.Header.EmulatorVersionKey] = item.Emulator.Version;
|
||||
header[Serialization.Models.Metadata.Header.RefNameKey] = item.Emulator.RefName;
|
||||
header[Serialization.Models.Metadata.Header.EmulatorVersionKey] = item.Emulator.Version;
|
||||
}
|
||||
|
||||
return header;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.RomCenter.Game"/> to <see cref="Models.Metadata.Machine"/>
|
||||
/// Convert from <see cref="Game"/> to <see cref="Serialization.Models.Metadata.Machine"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Machine ConvertMachineToInternalModel(Rom item)
|
||||
private static Serialization.Models.Metadata.Machine ConvertMachineToInternalModel(Rom item)
|
||||
{
|
||||
var machine = new Models.Metadata.Machine
|
||||
var machine = new Serialization.Models.Metadata.Machine
|
||||
{
|
||||
[Models.Metadata.Machine.RomOfKey] = item.RomOf,
|
||||
[Models.Metadata.Machine.CloneOfKey] = item.ParentName,
|
||||
//[Models.Metadata.Machine.ParentDescriptionKey] = item.ParentDescription, // This is unmappable
|
||||
[Models.Metadata.Machine.NameKey] = item.GameName,
|
||||
[Models.Metadata.Machine.DescriptionKey] = item.GameDescription,
|
||||
[Models.Metadata.Machine.RomKey] = new Models.Metadata.Rom[] { ConvertToInternalModel(item) },
|
||||
[Serialization.Models.Metadata.Machine.RomOfKey] = item.RomOf,
|
||||
[Serialization.Models.Metadata.Machine.CloneOfKey] = item.ParentName,
|
||||
//[Serialization.Models.Metadata.Machine.ParentDescriptionKey] = item.ParentDescription, // This is unmappable
|
||||
[Serialization.Models.Metadata.Machine.NameKey] = item.GameName,
|
||||
[Serialization.Models.Metadata.Machine.DescriptionKey] = item.GameDescription,
|
||||
[Serialization.Models.Metadata.Machine.RomKey] = new Serialization.Models.Metadata.Rom[] { ConvertToInternalModel(item) },
|
||||
};
|
||||
|
||||
return machine;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.RomCenter.Rom"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="Rom"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(Rom item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(Rom item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.NameKey] = item.RomName,
|
||||
[Models.Metadata.Rom.CRCKey] = item.RomCRC,
|
||||
[Models.Metadata.Rom.SizeKey] = item.RomSize,
|
||||
[Models.Metadata.Rom.MergeKey] = item.MergeName,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.RomName,
|
||||
[Serialization.Models.Metadata.Rom.CRCKey] = item.RomCRC,
|
||||
[Serialization.Models.Metadata.Rom.SizeKey] = item.RomSize,
|
||||
[Serialization.Models.Metadata.Rom.MergeKey] = item.MergeName,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using SabreTools.Models.SeparatedValue;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.SeparatedValue;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class SeparatedValue : IModelSerializer<MetadataFile, Models.Metadata.MetadataFile>
|
||||
public partial class SeparatedValue : IModelSerializer<MetadataFile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public MetadataFile? Deserialize(Models.Metadata.MetadataFile? obj)
|
||||
public MetadataFile? Deserialize(Serialization.Models.Metadata.MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var header = obj.Read<Models.Metadata.Header>(Models.Metadata.MetadataFile.HeaderKey);
|
||||
var header = obj.Read<Serialization.Models.Metadata.Header>(Serialization.Models.Metadata.MetadataFile.HeaderKey);
|
||||
var metadataFile = header != null ? ConvertHeaderFromInternalModel(header) : new MetadataFile();
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
var items = new List<Row>();
|
||||
foreach (var machine in machines ?? [])
|
||||
{
|
||||
@@ -28,39 +28,39 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Header"/> to <see cref="Models.SeparatedValue.MetadataFile"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Header"/> to <see cref="MetadataFile"/>
|
||||
/// </summary>
|
||||
private static MetadataFile ConvertHeaderFromInternalModel(Models.Metadata.Header item)
|
||||
private static MetadataFile ConvertHeaderFromInternalModel(Serialization.Models.Metadata.Header item)
|
||||
{
|
||||
var metadataFile = new MetadataFile
|
||||
{
|
||||
Header = item.ReadStringArray(Models.Metadata.Header.HeaderKey),
|
||||
Header = item.ReadStringArray(Serialization.Models.Metadata.Header.HeaderKey),
|
||||
};
|
||||
return metadataFile;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Machine"/> to an array of <see cref="Models.SeparatedValue.Row"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Machine"/> to an array of <see cref="Row"/>
|
||||
/// </summary>
|
||||
private static Row[] ConvertMachineFromInternalModel(Models.Metadata.Machine item, Models.Metadata.Header? header)
|
||||
private static Row[] ConvertMachineFromInternalModel(Serialization.Models.Metadata.Machine item, Serialization.Models.Metadata.Header? header)
|
||||
{
|
||||
var rowItems = new List<Row>();
|
||||
|
||||
var roms = item.Read<Models.Metadata.Rom[]>(Models.Metadata.Machine.RomKey);
|
||||
var roms = item.Read<Serialization.Models.Metadata.Rom[]>(Serialization.Models.Metadata.Machine.RomKey);
|
||||
if (roms != null && roms.Length > 0)
|
||||
{
|
||||
rowItems.AddRange(
|
||||
Array.ConvertAll(roms, r => ConvertFromInternalModel(r, item, header)));
|
||||
}
|
||||
|
||||
var disks = item.Read<Models.Metadata.Disk[]>(Models.Metadata.Machine.DiskKey);
|
||||
var disks = item.Read<Serialization.Models.Metadata.Disk[]>(Serialization.Models.Metadata.Machine.DiskKey);
|
||||
if (disks != null && disks.Length > 0)
|
||||
{
|
||||
rowItems.AddRange(
|
||||
Array.ConvertAll(disks, d => ConvertFromInternalModel(d, item, header)));
|
||||
}
|
||||
|
||||
var media = item.Read<Models.Metadata.Media[]>(Models.Metadata.Machine.MediaKey);
|
||||
var media = item.Read<Serialization.Models.Metadata.Media[]>(Serialization.Models.Metadata.Machine.MediaKey);
|
||||
if (media != null && media.Length > 0)
|
||||
{
|
||||
rowItems.AddRange(
|
||||
@@ -71,84 +71,84 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Disk"/> to <see cref="Models.SeparatedValue.Row"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Disk"/> to <see cref="Row"/>
|
||||
/// </summary>
|
||||
private static Row ConvertFromInternalModel(Models.Metadata.Disk item, Models.Metadata.Machine parent, Models.Metadata.Header? header)
|
||||
private static Row ConvertFromInternalModel(Serialization.Models.Metadata.Disk item, Serialization.Models.Metadata.Machine parent, Serialization.Models.Metadata.Header? header)
|
||||
{
|
||||
var row = new Row
|
||||
{
|
||||
FileName = header?.ReadString("FILENAME"), // TODO: Make this an actual key to retrieve
|
||||
InternalName = header?.ReadString(Models.Metadata.Header.NameKey),
|
||||
Description = header?.ReadString(Models.Metadata.Header.DescriptionKey),
|
||||
GameName = parent.ReadString(Models.Metadata.Machine.NameKey),
|
||||
GameDescription = parent.ReadString(Models.Metadata.Machine.DescriptionKey),
|
||||
InternalName = header?.ReadString(Serialization.Models.Metadata.Header.NameKey),
|
||||
Description = header?.ReadString(Serialization.Models.Metadata.Header.DescriptionKey),
|
||||
GameName = parent.ReadString(Serialization.Models.Metadata.Machine.NameKey),
|
||||
GameDescription = parent.ReadString(Serialization.Models.Metadata.Machine.DescriptionKey),
|
||||
Type = "disk",
|
||||
RomName = null,
|
||||
DiskName = item.ReadString(Models.Metadata.Disk.NameKey),
|
||||
DiskName = item.ReadString(Serialization.Models.Metadata.Disk.NameKey),
|
||||
Size = null,
|
||||
CRC = null,
|
||||
MD5 = item.ReadString(Models.Metadata.Disk.MD5Key),
|
||||
SHA1 = item.ReadString(Models.Metadata.Disk.SHA1Key),
|
||||
MD5 = item.ReadString(Serialization.Models.Metadata.Disk.MD5Key),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Disk.SHA1Key),
|
||||
SHA256 = null,
|
||||
SHA384 = null,
|
||||
SHA512 = null,
|
||||
SpamSum = null,
|
||||
Status = item.ReadString(Models.Metadata.Disk.StatusKey),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.Disk.StatusKey),
|
||||
};
|
||||
return row;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Media"/> to <see cref="Models.SeparatedValue.Row"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Media"/> to <see cref="Row"/>
|
||||
/// </summary>
|
||||
private static Row ConvertFromInternalModel(Models.Metadata.Media item, Models.Metadata.Machine parent, Models.Metadata.Header? header)
|
||||
private static Row ConvertFromInternalModel(Serialization.Models.Metadata.Media item, Serialization.Models.Metadata.Machine parent, Serialization.Models.Metadata.Header? header)
|
||||
{
|
||||
var row = new Row
|
||||
{
|
||||
FileName = header?.ReadString("FILENAME"), // TODO: Make this an actual key to retrieve on an item -- OriginalFilename
|
||||
InternalName = header?.ReadString(Models.Metadata.Header.NameKey),
|
||||
Description = header?.ReadString(Models.Metadata.Header.DescriptionKey),
|
||||
GameName = parent.ReadString(Models.Metadata.Machine.NameKey),
|
||||
GameDescription = parent.ReadString(Models.Metadata.Machine.DescriptionKey),
|
||||
InternalName = header?.ReadString(Serialization.Models.Metadata.Header.NameKey),
|
||||
Description = header?.ReadString(Serialization.Models.Metadata.Header.DescriptionKey),
|
||||
GameName = parent.ReadString(Serialization.Models.Metadata.Machine.NameKey),
|
||||
GameDescription = parent.ReadString(Serialization.Models.Metadata.Machine.DescriptionKey),
|
||||
Type = "media",
|
||||
RomName = null,
|
||||
DiskName = item.ReadString(Models.Metadata.Media.NameKey),
|
||||
DiskName = item.ReadString(Serialization.Models.Metadata.Media.NameKey),
|
||||
Size = null,
|
||||
CRC = null,
|
||||
MD5 = item.ReadString(Models.Metadata.Media.MD5Key),
|
||||
SHA1 = item.ReadString(Models.Metadata.Media.SHA1Key),
|
||||
SHA256 = item.ReadString(Models.Metadata.Media.SHA256Key),
|
||||
MD5 = item.ReadString(Serialization.Models.Metadata.Media.MD5Key),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Media.SHA1Key),
|
||||
SHA256 = item.ReadString(Serialization.Models.Metadata.Media.SHA256Key),
|
||||
SHA384 = null,
|
||||
SHA512 = null,
|
||||
SpamSum = item.ReadString(Models.Metadata.Media.SpamSumKey),
|
||||
SpamSum = item.ReadString(Serialization.Models.Metadata.Media.SpamSumKey),
|
||||
};
|
||||
return row;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.SeparatedValue.Row"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="Row"/>
|
||||
/// </summary>
|
||||
private static Row ConvertFromInternalModel(Models.Metadata.Rom item, Models.Metadata.Machine parent, Models.Metadata.Header? header)
|
||||
private static Row ConvertFromInternalModel(Serialization.Models.Metadata.Rom item, Serialization.Models.Metadata.Machine parent, Serialization.Models.Metadata.Header? header)
|
||||
{
|
||||
var row = new Row
|
||||
{
|
||||
FileName = header?.ReadString("FILENAME"), // TODO: Make this an actual key to retrieve
|
||||
InternalName = header?.ReadString(Models.Metadata.Header.NameKey),
|
||||
Description = header?.ReadString(Models.Metadata.Header.DescriptionKey),
|
||||
GameName = parent.ReadString(Models.Metadata.Machine.NameKey),
|
||||
GameDescription = parent.ReadString(Models.Metadata.Machine.DescriptionKey),
|
||||
InternalName = header?.ReadString(Serialization.Models.Metadata.Header.NameKey),
|
||||
Description = header?.ReadString(Serialization.Models.Metadata.Header.DescriptionKey),
|
||||
GameName = parent.ReadString(Serialization.Models.Metadata.Machine.NameKey),
|
||||
GameDescription = parent.ReadString(Serialization.Models.Metadata.Machine.DescriptionKey),
|
||||
Type = "rom",
|
||||
RomName = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
RomName = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
DiskName = null,
|
||||
Size = item.ReadString(Models.Metadata.Rom.SizeKey),
|
||||
CRC = item.ReadString(Models.Metadata.Rom.CRCKey),
|
||||
MD5 = item.ReadString(Models.Metadata.Rom.MD5Key),
|
||||
SHA1 = item.ReadString(Models.Metadata.Rom.SHA1Key),
|
||||
SHA256 = item.ReadString(Models.Metadata.Rom.SHA256Key),
|
||||
SHA384 = item.ReadString(Models.Metadata.Rom.SHA384Key),
|
||||
SHA512 = item.ReadString(Models.Metadata.Rom.SHA512Key),
|
||||
SpamSum = item.ReadString(Models.Metadata.Rom.SpamSumKey),
|
||||
Status = item.ReadString(Models.Metadata.Rom.StatusKey),
|
||||
Size = item.ReadString(Serialization.Models.Metadata.Rom.SizeKey),
|
||||
CRC = item.ReadString(Serialization.Models.Metadata.Rom.CRCKey),
|
||||
MD5 = item.ReadString(Serialization.Models.Metadata.Rom.MD5Key),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Rom.SHA1Key),
|
||||
SHA256 = item.ReadString(Serialization.Models.Metadata.Rom.SHA256Key),
|
||||
SHA384 = item.ReadString(Serialization.Models.Metadata.Rom.SHA384Key),
|
||||
SHA512 = item.ReadString(Serialization.Models.Metadata.Rom.SHA512Key),
|
||||
SpamSum = item.ReadString(Serialization.Models.Metadata.Rom.SpamSumKey),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.Rom.StatusKey),
|
||||
};
|
||||
return row;
|
||||
}
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
using System;
|
||||
using SabreTools.Models.SeparatedValue;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.SeparatedValue;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class SeparatedValue : IModelSerializer<MetadataFile, Models.Metadata.MetadataFile>
|
||||
public partial class SeparatedValue : IModelSerializer<MetadataFile, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Metadata.MetadataFile? Serialize(MetadataFile? obj)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile
|
||||
{
|
||||
[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(obj),
|
||||
[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(obj),
|
||||
};
|
||||
|
||||
if (obj?.Row != null && obj.Row.Length > 0)
|
||||
{
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey]
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey]
|
||||
= Array.ConvertAll(obj.Row, ConvertMachineToInternalModel);
|
||||
}
|
||||
|
||||
@@ -27,50 +27,50 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.SeparatedValue.MetadataFile"/> to <see cref="Models.Metadata.Header"/>
|
||||
/// Convert from <see cref="MetadataFile"/> to <see cref="Serialization.Models.Metadata.Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel(MetadataFile item)
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel(MetadataFile item)
|
||||
{
|
||||
var header = new Models.Metadata.Header
|
||||
var header = new Serialization.Models.Metadata.Header
|
||||
{
|
||||
[Models.Metadata.Header.HeaderKey] = item.Header,
|
||||
[Serialization.Models.Metadata.Header.HeaderKey] = item.Header,
|
||||
};
|
||||
|
||||
if (item.Row != null && item.Row.Length > 0)
|
||||
{
|
||||
var first = item.Row[0];
|
||||
header["FILENAME"] = first.FileName; // TODO: Make this an actual key to retrieve on an item -- OriginalFilename
|
||||
header[Models.Metadata.Header.NameKey] = first.FileName;
|
||||
header[Models.Metadata.Header.DescriptionKey] = first.Description;
|
||||
header[Serialization.Models.Metadata.Header.NameKey] = first.FileName;
|
||||
header[Serialization.Models.Metadata.Header.DescriptionKey] = first.Description;
|
||||
}
|
||||
|
||||
return header;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.SeparatedValue.Row"/> to <see cref="Models.Metadata.Machine"/>
|
||||
/// Convert from <see cref="Row"/> to <see cref="Serialization.Models.Metadata.Machine"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Machine ConvertMachineToInternalModel(Row item)
|
||||
private static Serialization.Models.Metadata.Machine ConvertMachineToInternalModel(Row item)
|
||||
{
|
||||
var machine = new Models.Metadata.Machine
|
||||
var machine = new Serialization.Models.Metadata.Machine
|
||||
{
|
||||
[Models.Metadata.Machine.NameKey] = item.GameName,
|
||||
[Models.Metadata.Machine.DescriptionKey] = item.GameDescription,
|
||||
[Serialization.Models.Metadata.Machine.NameKey] = item.GameName,
|
||||
[Serialization.Models.Metadata.Machine.DescriptionKey] = item.GameDescription,
|
||||
};
|
||||
|
||||
var datItem = ConvertToInternalModel(item);
|
||||
switch (datItem)
|
||||
{
|
||||
case Models.Metadata.Disk disk:
|
||||
machine[Models.Metadata.Machine.DiskKey] = new Models.Metadata.Disk[] { disk };
|
||||
case Serialization.Models.Metadata.Disk disk:
|
||||
machine[Serialization.Models.Metadata.Machine.DiskKey] = new Serialization.Models.Metadata.Disk[] { disk };
|
||||
break;
|
||||
|
||||
case Models.Metadata.Media media:
|
||||
machine[Models.Metadata.Machine.MediaKey] = new Models.Metadata.Media[] { media };
|
||||
case Serialization.Models.Metadata.Media media:
|
||||
machine[Serialization.Models.Metadata.Machine.MediaKey] = new Serialization.Models.Metadata.Media[] { media };
|
||||
break;
|
||||
|
||||
case Models.Metadata.Rom rom:
|
||||
machine[Models.Metadata.Machine.RomKey] = new Models.Metadata.Rom[] { rom };
|
||||
case Serialization.Models.Metadata.Rom rom:
|
||||
machine[Serialization.Models.Metadata.Machine.RomKey] = new Serialization.Models.Metadata.Rom[] { rom };
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -78,39 +78,39 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.SeparatedValue.Row"/> to <see cref="Models.Metadata.DatItem"/>
|
||||
/// Convert from <see cref="Row"/> to <see cref="Serialization.Models.Metadata.DatItem"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.DatItem? ConvertToInternalModel(Row item)
|
||||
private static Serialization.Models.Metadata.DatItem? ConvertToInternalModel(Row item)
|
||||
{
|
||||
return item.Type switch
|
||||
{
|
||||
"disk" => new Models.Metadata.Disk
|
||||
"disk" => new Serialization.Models.Metadata.Disk
|
||||
{
|
||||
[Models.Metadata.Disk.NameKey] = item.DiskName,
|
||||
[Models.Metadata.Disk.MD5Key] = item.MD5,
|
||||
[Models.Metadata.Disk.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Disk.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.Disk.NameKey] = item.DiskName,
|
||||
[Serialization.Models.Metadata.Disk.MD5Key] = item.MD5,
|
||||
[Serialization.Models.Metadata.Disk.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Disk.StatusKey] = item.Status,
|
||||
},
|
||||
"media" => new Models.Metadata.Media
|
||||
"media" => new Serialization.Models.Metadata.Media
|
||||
{
|
||||
[Models.Metadata.Media.NameKey] = item.DiskName,
|
||||
[Models.Metadata.Media.MD5Key] = item.MD5,
|
||||
[Models.Metadata.Media.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Media.SHA256Key] = item.SHA256,
|
||||
[Models.Metadata.Media.SpamSumKey] = item.SpamSum,
|
||||
[Serialization.Models.Metadata.Media.NameKey] = item.DiskName,
|
||||
[Serialization.Models.Metadata.Media.MD5Key] = item.MD5,
|
||||
[Serialization.Models.Metadata.Media.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Media.SHA256Key] = item.SHA256,
|
||||
[Serialization.Models.Metadata.Media.SpamSumKey] = item.SpamSum,
|
||||
},
|
||||
"rom" => new Models.Metadata.Rom
|
||||
"rom" => new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.NameKey] = item.RomName,
|
||||
[Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Models.Metadata.Rom.CRCKey] = item.CRC,
|
||||
[Models.Metadata.Rom.MD5Key] = item.MD5,
|
||||
[Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Rom.SHA256Key] = item.SHA256,
|
||||
[Models.Metadata.Rom.SHA384Key] = item.SHA384,
|
||||
[Models.Metadata.Rom.SHA512Key] = item.SHA512,
|
||||
[Models.Metadata.Rom.SpamSumKey] = item.SpamSum,
|
||||
[Models.Metadata.Rom.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.RomName,
|
||||
[Serialization.Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Serialization.Models.Metadata.Rom.CRCKey] = item.CRC,
|
||||
[Serialization.Models.Metadata.Rom.MD5Key] = item.MD5,
|
||||
[Serialization.Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Rom.SHA256Key] = item.SHA256,
|
||||
[Serialization.Models.Metadata.Rom.SHA384Key] = item.SHA384,
|
||||
[Serialization.Models.Metadata.Rom.SHA512Key] = item.SHA512,
|
||||
[Serialization.Models.Metadata.Rom.SpamSumKey] = item.SpamSum,
|
||||
[Serialization.Models.Metadata.Rom.StatusKey] = item.Status,
|
||||
},
|
||||
_ => null,
|
||||
};
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
using System;
|
||||
using SabreTools.Models.SoftwareList;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.SoftwareList;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class SoftwareList : IModelSerializer<Models.SoftwareList.SoftwareList, Models.Metadata.MetadataFile>
|
||||
public partial class SoftwareList : IModelSerializer<SabreTools.Serialization.Models.SoftwareList.SoftwareList, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.SoftwareList.SoftwareList? Deserialize(Models.Metadata.MetadataFile? obj)
|
||||
public SabreTools.Serialization.Models.SoftwareList.SoftwareList? Deserialize(Serialization.Models.Metadata.MetadataFile? obj)
|
||||
{
|
||||
if (obj == null)
|
||||
return null;
|
||||
|
||||
var header = obj.Read<Models.Metadata.Header>(Models.Metadata.MetadataFile.HeaderKey);
|
||||
var metadataFile = header != null ? ConvertHeaderFromInternalModel(header) : new Models.SoftwareList.SoftwareList();
|
||||
var header = obj.Read<Serialization.Models.Metadata.Header>(Serialization.Models.Metadata.MetadataFile.HeaderKey);
|
||||
var metadataFile = header != null ? ConvertHeaderFromInternalModel(header) : new SabreTools.Serialization.Models.SoftwareList.SoftwareList();
|
||||
|
||||
var machines = obj.Read<Models.Metadata.Machine[]>(Models.Metadata.MetadataFile.MachineKey);
|
||||
var machines = obj.Read<Serialization.Models.Metadata.Machine[]>(Serialization.Models.Metadata.MetadataFile.MachineKey);
|
||||
if (machines != null && machines.Length > 0)
|
||||
metadataFile.Software = Array.ConvertAll(machines, ConvertMachineFromInternalModel);
|
||||
|
||||
@@ -23,44 +23,44 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Header"/> to <see cref="Models.SoftwareList.SoftwareList"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Header"/> to <see cref="SabreTools.Serialization.Models.SoftwareList.SoftwareList"/>
|
||||
/// </summary>
|
||||
private static Models.SoftwareList.SoftwareList ConvertHeaderFromInternalModel(Models.Metadata.Header item)
|
||||
private static SabreTools.Serialization.Models.SoftwareList.SoftwareList ConvertHeaderFromInternalModel(Serialization.Models.Metadata.Header item)
|
||||
{
|
||||
var softwareList = new Models.SoftwareList.SoftwareList
|
||||
var softwareList = new SabreTools.Serialization.Models.SoftwareList.SoftwareList
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Header.NameKey),
|
||||
Description = item.ReadString(Models.Metadata.Header.DescriptionKey),
|
||||
Notes = item.ReadString(Models.Metadata.Header.NotesKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Header.NameKey),
|
||||
Description = item.ReadString(Serialization.Models.Metadata.Header.DescriptionKey),
|
||||
Notes = item.ReadString(Serialization.Models.Metadata.Header.NotesKey),
|
||||
};
|
||||
return softwareList;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Machine"/> to <see cref="Models.SoftwareList.Software"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Machine"/> to <see cref="SSoftware"/>
|
||||
/// </summary>
|
||||
private static Software ConvertMachineFromInternalModel(Models.Metadata.Machine item)
|
||||
private static Software ConvertMachineFromInternalModel(Serialization.Models.Metadata.Machine item)
|
||||
{
|
||||
var software = new Software
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Machine.NameKey),
|
||||
CloneOf = item.ReadString(Models.Metadata.Machine.CloneOfKey),
|
||||
Supported = item.ReadString(Models.Metadata.Machine.SupportedKey),
|
||||
Description = item.ReadString(Models.Metadata.Machine.DescriptionKey),
|
||||
Year = item.ReadString(Models.Metadata.Machine.YearKey),
|
||||
Publisher = item.ReadString(Models.Metadata.Machine.PublisherKey),
|
||||
Notes = item.ReadString(Models.Metadata.Machine.NotesKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Machine.NameKey),
|
||||
CloneOf = item.ReadString(Serialization.Models.Metadata.Machine.CloneOfKey),
|
||||
Supported = item.ReadString(Serialization.Models.Metadata.Machine.SupportedKey),
|
||||
Description = item.ReadString(Serialization.Models.Metadata.Machine.DescriptionKey),
|
||||
Year = item.ReadString(Serialization.Models.Metadata.Machine.YearKey),
|
||||
Publisher = item.ReadString(Serialization.Models.Metadata.Machine.PublisherKey),
|
||||
Notes = item.ReadString(Serialization.Models.Metadata.Machine.NotesKey),
|
||||
};
|
||||
|
||||
var infos = item.Read<Models.Metadata.Info[]>(Models.Metadata.Machine.InfoKey);
|
||||
var infos = item.Read<Serialization.Models.Metadata.Info[]>(Serialization.Models.Metadata.Machine.InfoKey);
|
||||
if (infos != null && infos.Length > 0)
|
||||
software.Info = Array.ConvertAll(infos, ConvertFromInternalModel);
|
||||
|
||||
var sharedFeats = item.Read<Models.Metadata.SharedFeat[]>(Models.Metadata.Machine.SharedFeatKey);
|
||||
var sharedFeats = item.Read<Serialization.Models.Metadata.SharedFeat[]>(Serialization.Models.Metadata.Machine.SharedFeatKey);
|
||||
if (sharedFeats != null && sharedFeats.Length > 0)
|
||||
software.SharedFeat = Array.ConvertAll(sharedFeats, ConvertFromInternalModel);
|
||||
|
||||
var parts = item.Read<Models.Metadata.Part[]>(Models.Metadata.Machine.PartKey);
|
||||
var parts = item.Read<Serialization.Models.Metadata.Part[]>(Serialization.Models.Metadata.Machine.PartKey);
|
||||
if (parts != null && parts.Length > 0)
|
||||
software.Part = Array.ConvertAll(parts, ConvertFromInternalModel);
|
||||
|
||||
@@ -68,19 +68,19 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.DataArea"/> to <see cref="Models.SoftwareList.DataArea"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.DataArea"/> to <see cref="SDataArea"/>
|
||||
/// </summary>
|
||||
private static DataArea ConvertFromInternalModel(Models.Metadata.DataArea item)
|
||||
private static DataArea ConvertFromInternalModel(Serialization.Models.Metadata.DataArea item)
|
||||
{
|
||||
var dataArea = new DataArea
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.DataArea.NameKey),
|
||||
Size = item.ReadString(Models.Metadata.DataArea.SizeKey),
|
||||
Width = item.ReadString(Models.Metadata.DataArea.WidthKey),
|
||||
Endianness = item.ReadString(Models.Metadata.DataArea.EndiannessKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.DataArea.NameKey),
|
||||
Size = item.ReadString(Serialization.Models.Metadata.DataArea.SizeKey),
|
||||
Width = item.ReadString(Serialization.Models.Metadata.DataArea.WidthKey),
|
||||
Endianness = item.ReadString(Serialization.Models.Metadata.DataArea.EndiannessKey),
|
||||
};
|
||||
|
||||
var roms = item.Read<Models.Metadata.Rom[]>(Models.Metadata.DataArea.RomKey);
|
||||
var roms = item.Read<Serialization.Models.Metadata.Rom[]>(Serialization.Models.Metadata.DataArea.RomKey);
|
||||
if (roms != null && roms.Length > 0)
|
||||
dataArea.Rom = Array.ConvertAll(roms, ConvertFromInternalModel);
|
||||
|
||||
@@ -88,18 +88,18 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.DipSwitch"/> to <see cref="Models.SoftwareList.DipSwitch"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.DipSwitch"/> to <see cref="SDipSwitch"/>
|
||||
/// </summary>
|
||||
private static DipSwitch ConvertFromInternalModel(Models.Metadata.DipSwitch item)
|
||||
private static DipSwitch ConvertFromInternalModel(Serialization.Models.Metadata.DipSwitch item)
|
||||
{
|
||||
var dipSwitch = new DipSwitch
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.DipSwitch.NameKey),
|
||||
Tag = item.ReadString(Models.Metadata.DipSwitch.TagKey),
|
||||
Mask = item.ReadString(Models.Metadata.DipSwitch.MaskKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.DipSwitch.NameKey),
|
||||
Tag = item.ReadString(Serialization.Models.Metadata.DipSwitch.TagKey),
|
||||
Mask = item.ReadString(Serialization.Models.Metadata.DipSwitch.MaskKey),
|
||||
};
|
||||
|
||||
var dipValues = item.Read<Models.Metadata.DipValue[]>(Models.Metadata.DipSwitch.DipValueKey);
|
||||
var dipValues = item.Read<Serialization.Models.Metadata.DipValue[]>(Serialization.Models.Metadata.DipSwitch.DipValueKey);
|
||||
if (dipValues != null && dipValues.Length > 0)
|
||||
dipSwitch.DipValue = Array.ConvertAll(dipValues, ConvertFromInternalModel);
|
||||
|
||||
@@ -107,46 +107,46 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.DipValue"/> to <see cref="Models.SoftwareList.DipValue"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.DipValue"/> to <see cref="SDipValue"/>
|
||||
/// </summary>
|
||||
private static DipValue ConvertFromInternalModel(Models.Metadata.DipValue item)
|
||||
private static DipValue ConvertFromInternalModel(Serialization.Models.Metadata.DipValue item)
|
||||
{
|
||||
var dipValue = new DipValue
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.DipValue.NameKey),
|
||||
Value = item.ReadString(Models.Metadata.DipValue.ValueKey),
|
||||
Default = item.ReadString(Models.Metadata.DipValue.DefaultKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.DipValue.NameKey),
|
||||
Value = item.ReadString(Serialization.Models.Metadata.DipValue.ValueKey),
|
||||
Default = item.ReadString(Serialization.Models.Metadata.DipValue.DefaultKey),
|
||||
};
|
||||
return dipValue;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Disk"/> to <see cref="Models.SoftwareList.Disk"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Disk"/> to <see cref="SDisk"/>
|
||||
/// </summary>
|
||||
private static Disk ConvertFromInternalModel(Models.Metadata.Disk item)
|
||||
private static Disk ConvertFromInternalModel(Serialization.Models.Metadata.Disk item)
|
||||
{
|
||||
var disk = new Disk
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Disk.NameKey),
|
||||
MD5 = item.ReadString(Models.Metadata.Disk.MD5Key),
|
||||
SHA1 = item.ReadString(Models.Metadata.Disk.SHA1Key),
|
||||
Status = item.ReadString(Models.Metadata.Disk.StatusKey),
|
||||
Writeable = item.ReadString(Models.Metadata.Disk.WritableKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Disk.NameKey),
|
||||
MD5 = item.ReadString(Serialization.Models.Metadata.Disk.MD5Key),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Disk.SHA1Key),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.Disk.StatusKey),
|
||||
Writeable = item.ReadString(Serialization.Models.Metadata.Disk.WritableKey),
|
||||
};
|
||||
return disk;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.DiskArea"/> to <see cref="Models.SoftwareList.DiskArea"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.DiskArea"/> to <see cref="SDiskArea"/>
|
||||
/// </summary>
|
||||
private static DiskArea ConvertFromInternalModel(Models.Metadata.DiskArea item)
|
||||
private static DiskArea ConvertFromInternalModel(Serialization.Models.Metadata.DiskArea item)
|
||||
{
|
||||
var diskArea = new DiskArea
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.DiskArea.NameKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.DiskArea.NameKey),
|
||||
};
|
||||
|
||||
var disks = item.Read<Models.Metadata.Disk[]>(Models.Metadata.DiskArea.DiskKey);
|
||||
var disks = item.Read<Serialization.Models.Metadata.Disk[]>(Serialization.Models.Metadata.DiskArea.DiskKey);
|
||||
if (disks != null && disks.Length > 0)
|
||||
diskArea.Disk = Array.ConvertAll(disks, ConvertFromInternalModel);
|
||||
|
||||
@@ -154,55 +154,55 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Feature"/> to <see cref="Models.SoftwareList.Feature"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Feature"/> to <see cref="SFeature"/>
|
||||
/// </summary>
|
||||
private static Feature ConvertFromInternalModel(Models.Metadata.Feature item)
|
||||
private static Feature ConvertFromInternalModel(Serialization.Models.Metadata.Feature item)
|
||||
{
|
||||
var feature = new Feature
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Feature.NameKey),
|
||||
Value = item.ReadString(Models.Metadata.Feature.ValueKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Feature.NameKey),
|
||||
Value = item.ReadString(Serialization.Models.Metadata.Feature.ValueKey),
|
||||
};
|
||||
return feature;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Info"/> to <see cref="Models.SoftwareList.Info"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Info"/> to <see cref="SInfo"/>
|
||||
/// </summary>
|
||||
private static Info ConvertFromInternalModel(Models.Metadata.Info item)
|
||||
private static Info ConvertFromInternalModel(Serialization.Models.Metadata.Info item)
|
||||
{
|
||||
var info = new Info
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Info.NameKey),
|
||||
Value = item.ReadString(Models.Metadata.Info.ValueKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Info.NameKey),
|
||||
Value = item.ReadString(Serialization.Models.Metadata.Info.ValueKey),
|
||||
};
|
||||
return info;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Part"/> to <see cref="Models.SoftwareList.Part"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Part"/> to <see cref="SPart"/>
|
||||
/// </summary>
|
||||
private static Part ConvertFromInternalModel(Models.Metadata.Part item)
|
||||
private static Part ConvertFromInternalModel(Serialization.Models.Metadata.Part item)
|
||||
{
|
||||
var part = new Part
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Part.NameKey),
|
||||
Interface = item.ReadString(Models.Metadata.Part.InterfaceKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Part.NameKey),
|
||||
Interface = item.ReadString(Serialization.Models.Metadata.Part.InterfaceKey),
|
||||
};
|
||||
|
||||
var features = item.Read<Models.Metadata.Feature[]>(Models.Metadata.Part.FeatureKey);
|
||||
var features = item.Read<Serialization.Models.Metadata.Feature[]>(Serialization.Models.Metadata.Part.FeatureKey);
|
||||
if (features != null && features.Length > 0)
|
||||
part.Feature = Array.ConvertAll(features, ConvertFromInternalModel);
|
||||
|
||||
var dataAreas = item.Read<Models.Metadata.DataArea[]>(Models.Metadata.Part.DataAreaKey);
|
||||
var dataAreas = item.Read<Serialization.Models.Metadata.DataArea[]>(Serialization.Models.Metadata.Part.DataAreaKey);
|
||||
if (dataAreas != null && dataAreas.Length > 0)
|
||||
part.DataArea = Array.ConvertAll(dataAreas, ConvertFromInternalModel);
|
||||
|
||||
var diskAreas = item.Read<Models.Metadata.DiskArea[]>(Models.Metadata.Part.DiskAreaKey);
|
||||
var diskAreas = item.Read<Serialization.Models.Metadata.DiskArea[]>(Serialization.Models.Metadata.Part.DiskAreaKey);
|
||||
if (diskAreas != null && diskAreas.Length > 0)
|
||||
part.DiskArea = Array.ConvertAll(diskAreas, ConvertFromInternalModel);
|
||||
|
||||
var dipSwitches = item.Read<Models.Metadata.DipSwitch[]>(Models.Metadata.Part.DipSwitchKey);
|
||||
var dipSwitches = item.Read<Serialization.Models.Metadata.DipSwitch[]>(Serialization.Models.Metadata.Part.DipSwitchKey);
|
||||
if (dipSwitches != null && dipSwitches.Length > 0)
|
||||
part.DipSwitch = Array.ConvertAll(dipSwitches, ConvertFromInternalModel);
|
||||
|
||||
@@ -210,34 +210,34 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Rom"/> to <see cref="Models.SoftwareList.Rom"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.Rom"/> to <see cref="SRom"/>
|
||||
/// </summary>
|
||||
private static Rom ConvertFromInternalModel(Models.Metadata.Rom item)
|
||||
private static Rom ConvertFromInternalModel(Serialization.Models.Metadata.Rom item)
|
||||
{
|
||||
var rom = new Rom
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.Rom.NameKey),
|
||||
Size = item.ReadString(Models.Metadata.Rom.SizeKey),
|
||||
Length = item.ReadString(Models.Metadata.Rom.LengthKey),
|
||||
CRC = item.ReadString(Models.Metadata.Rom.CRCKey),
|
||||
SHA1 = item.ReadString(Models.Metadata.Rom.SHA1Key),
|
||||
Offset = item.ReadString(Models.Metadata.Rom.OffsetKey),
|
||||
Value = item.ReadString(Models.Metadata.Rom.ValueKey),
|
||||
Status = item.ReadString(Models.Metadata.Rom.StatusKey),
|
||||
LoadFlag = item.ReadString(Models.Metadata.Rom.LoadFlagKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.Rom.NameKey),
|
||||
Size = item.ReadString(Serialization.Models.Metadata.Rom.SizeKey),
|
||||
Length = item.ReadString(Serialization.Models.Metadata.Rom.LengthKey),
|
||||
CRC = item.ReadString(Serialization.Models.Metadata.Rom.CRCKey),
|
||||
SHA1 = item.ReadString(Serialization.Models.Metadata.Rom.SHA1Key),
|
||||
Offset = item.ReadString(Serialization.Models.Metadata.Rom.OffsetKey),
|
||||
Value = item.ReadString(Serialization.Models.Metadata.Rom.ValueKey),
|
||||
Status = item.ReadString(Serialization.Models.Metadata.Rom.StatusKey),
|
||||
LoadFlag = item.ReadString(Serialization.Models.Metadata.Rom.LoadFlagKey),
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.SharedFeat"/> to <see cref="Models.SoftwareList.SharedFeat"/>
|
||||
/// Convert from <see cref="Serialization.Models.Metadata.SharedFeat"/> to <see cref="SSharedFeat"/>
|
||||
/// </summary>
|
||||
private static SharedFeat ConvertFromInternalModel(Models.Metadata.SharedFeat item)
|
||||
private static SharedFeat ConvertFromInternalModel(Serialization.Models.Metadata.SharedFeat item)
|
||||
{
|
||||
var sharedFeat = new SharedFeat
|
||||
{
|
||||
Name = item.ReadString(Models.Metadata.SharedFeat.NameKey),
|
||||
Value = item.ReadString(Models.Metadata.SharedFeat.ValueKey),
|
||||
Name = item.ReadString(Serialization.Models.Metadata.SharedFeat.NameKey),
|
||||
Value = item.ReadString(Serialization.Models.Metadata.SharedFeat.ValueKey),
|
||||
};
|
||||
return sharedFeat;
|
||||
}
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
using System;
|
||||
using SabreTools.Models.SoftwareList;
|
||||
using SabreTools.Serialization.Interfaces;
|
||||
using SabreTools.Serialization.Models.SoftwareList;
|
||||
|
||||
namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
public partial class SoftwareList : IModelSerializer<Models.SoftwareList.SoftwareList, Models.Metadata.MetadataFile>
|
||||
public partial class SoftwareList : IModelSerializer<SabreTools.Serialization.Models.SoftwareList.SoftwareList, Serialization.Models.Metadata.MetadataFile>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public Models.Metadata.MetadataFile? Serialize(Models.SoftwareList.SoftwareList? item)
|
||||
public Serialization.Models.Metadata.MetadataFile? Serialize(SabreTools.Serialization.Models.SoftwareList.SoftwareList? item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var metadataFile = new Models.Metadata.MetadataFile
|
||||
var metadataFile = new Serialization.Models.Metadata.MetadataFile
|
||||
{
|
||||
[Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
[Serialization.Models.Metadata.MetadataFile.HeaderKey] = ConvertHeaderToInternalModel(item),
|
||||
};
|
||||
|
||||
if (item?.Software != null && item.Software.Length > 0)
|
||||
{
|
||||
metadataFile[Models.Metadata.MetadataFile.MachineKey]
|
||||
metadataFile[Serialization.Models.Metadata.MetadataFile.MachineKey]
|
||||
= Array.ConvertAll(item.Software, ConvertMachineToInternalModel);
|
||||
}
|
||||
|
||||
@@ -27,211 +27,211 @@ namespace SabreTools.Serialization.CrossModel
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.SoftwareList.SoftwareList"/> to <see cref="Models.Metadata.Header"/>
|
||||
/// Convert from <see cref="SabreTools.Serialization.Models.SoftwareList.SoftwareList"/> to <see cref="Serialization.Models.Metadata.Header"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Header ConvertHeaderToInternalModel(Models.SoftwareList.SoftwareList item)
|
||||
private static Serialization.Models.Metadata.Header ConvertHeaderToInternalModel(SabreTools.Serialization.Models.SoftwareList.SoftwareList item)
|
||||
{
|
||||
var header = new Models.Metadata.Header
|
||||
var header = new Serialization.Models.Metadata.Header
|
||||
{
|
||||
[Models.Metadata.Header.NameKey] = item.Name,
|
||||
[Models.Metadata.Header.DescriptionKey] = item.Description,
|
||||
[Models.Metadata.Header.NotesKey] = item.Notes,
|
||||
[Serialization.Models.Metadata.Header.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Header.DescriptionKey] = item.Description,
|
||||
[Serialization.Models.Metadata.Header.NotesKey] = item.Notes,
|
||||
};
|
||||
return header;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.SoftwareList.Software"/> to <see cref="Models.Metadata.Machine"/>
|
||||
/// Convert from <see cref="SabreTools.Serialization.Models.SoftwareList.Software"/> to <see cref="Serialization.Models.Metadata.Machine"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Machine ConvertMachineToInternalModel(Software item)
|
||||
private static Serialization.Models.Metadata.Machine ConvertMachineToInternalModel(Software item)
|
||||
{
|
||||
var machine = new Models.Metadata.Machine
|
||||
var machine = new Serialization.Models.Metadata.Machine
|
||||
{
|
||||
[Models.Metadata.Machine.NameKey] = item.Name,
|
||||
[Models.Metadata.Machine.CloneOfKey] = item.CloneOf,
|
||||
[Models.Metadata.Machine.SupportedKey] = item.Supported,
|
||||
[Models.Metadata.Machine.DescriptionKey] = item.Description,
|
||||
[Models.Metadata.Machine.YearKey] = item.Year,
|
||||
[Models.Metadata.Machine.PublisherKey] = item.Publisher,
|
||||
[Models.Metadata.Machine.NotesKey] = item.Notes,
|
||||
[Serialization.Models.Metadata.Machine.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Machine.CloneOfKey] = item.CloneOf,
|
||||
[Serialization.Models.Metadata.Machine.SupportedKey] = item.Supported,
|
||||
[Serialization.Models.Metadata.Machine.DescriptionKey] = item.Description,
|
||||
[Serialization.Models.Metadata.Machine.YearKey] = item.Year,
|
||||
[Serialization.Models.Metadata.Machine.PublisherKey] = item.Publisher,
|
||||
[Serialization.Models.Metadata.Machine.NotesKey] = item.Notes,
|
||||
};
|
||||
|
||||
if (item.Info != null && item.Info.Length > 0)
|
||||
machine[Models.Metadata.Machine.InfoKey] = Array.ConvertAll(item.Info, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.InfoKey] = Array.ConvertAll(item.Info, ConvertToInternalModel);
|
||||
|
||||
if (item.SharedFeat != null && item.SharedFeat.Length > 0)
|
||||
machine[Models.Metadata.Machine.SharedFeatKey] = Array.ConvertAll(item.SharedFeat, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.SharedFeatKey] = Array.ConvertAll(item.SharedFeat, ConvertToInternalModel);
|
||||
|
||||
if (item.Part != null && item.Part.Length > 0)
|
||||
machine[Models.Metadata.Machine.PartKey] = Array.ConvertAll(item.Part, ConvertToInternalModel);
|
||||
machine[Serialization.Models.Metadata.Machine.PartKey] = Array.ConvertAll(item.Part, ConvertToInternalModel);
|
||||
|
||||
return machine;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.SoftwareList.DataArea"/> to <see cref="Models.Metadata.DataArea"/>
|
||||
/// Convert from <see cref="DataArea"/> to <see cref="Serialization.Models.Metadata.DataArea"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.DataArea ConvertToInternalModel(DataArea item)
|
||||
private static Serialization.Models.Metadata.DataArea ConvertToInternalModel(DataArea item)
|
||||
{
|
||||
var dataArea = new Models.Metadata.DataArea
|
||||
var dataArea = new Serialization.Models.Metadata.DataArea
|
||||
{
|
||||
[Models.Metadata.DataArea.NameKey] = item.Name,
|
||||
[Models.Metadata.DataArea.SizeKey] = item.Size,
|
||||
[Models.Metadata.DataArea.WidthKey] = item.Width,
|
||||
[Models.Metadata.DataArea.EndiannessKey] = item.Endianness,
|
||||
[Serialization.Models.Metadata.DataArea.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.DataArea.SizeKey] = item.Size,
|
||||
[Serialization.Models.Metadata.DataArea.WidthKey] = item.Width,
|
||||
[Serialization.Models.Metadata.DataArea.EndiannessKey] = item.Endianness,
|
||||
};
|
||||
|
||||
if (item.Rom != null && item.Rom.Length > 0)
|
||||
dataArea[Models.Metadata.DataArea.RomKey] = Array.ConvertAll(item.Rom, ConvertToInternalModel);
|
||||
dataArea[Serialization.Models.Metadata.DataArea.RomKey] = Array.ConvertAll(item.Rom, ConvertToInternalModel);
|
||||
|
||||
return dataArea;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.SoftwareList.DipSwitch"/> to <see cref="Models.Metadata.DipSwitch"/>
|
||||
/// Convert from <see cref="DipSwitch"/> to <see cref="Serialization.Models.Metadata.DipSwitch"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.DipSwitch ConvertToInternalModel(DipSwitch item)
|
||||
private static Serialization.Models.Metadata.DipSwitch ConvertToInternalModel(DipSwitch item)
|
||||
{
|
||||
var dipSwitch = new Models.Metadata.DipSwitch
|
||||
var dipSwitch = new Serialization.Models.Metadata.DipSwitch
|
||||
{
|
||||
[Models.Metadata.DipSwitch.NameKey] = item.Name,
|
||||
[Models.Metadata.DipSwitch.TagKey] = item.Tag,
|
||||
[Models.Metadata.DipSwitch.MaskKey] = item.Mask,
|
||||
[Serialization.Models.Metadata.DipSwitch.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.DipSwitch.TagKey] = item.Tag,
|
||||
[Serialization.Models.Metadata.DipSwitch.MaskKey] = item.Mask,
|
||||
};
|
||||
|
||||
if (item.DipValue != null && item.DipValue.Length > 0)
|
||||
dipSwitch[Models.Metadata.DipSwitch.DipValueKey] = Array.ConvertAll(item.DipValue, ConvertToInternalModel);
|
||||
dipSwitch[Serialization.Models.Metadata.DipSwitch.DipValueKey] = Array.ConvertAll(item.DipValue, ConvertToInternalModel);
|
||||
|
||||
return dipSwitch;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.SoftwareList.DipValue"/> to <see cref="Models.Metadata.DipValue"/>
|
||||
/// Convert from <see cref="DipValue"/> to <see cref="Serialization.Models.Metadata.DipValue"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.DipValue ConvertToInternalModel(DipValue item)
|
||||
private static Serialization.Models.Metadata.DipValue ConvertToInternalModel(DipValue item)
|
||||
{
|
||||
var dipValue = new Models.Metadata.DipValue
|
||||
var dipValue = new Serialization.Models.Metadata.DipValue
|
||||
{
|
||||
[Models.Metadata.DipValue.NameKey] = item.Name,
|
||||
[Models.Metadata.DipValue.ValueKey] = item.Value,
|
||||
[Models.Metadata.DipValue.DefaultKey] = item.Default,
|
||||
[Serialization.Models.Metadata.DipValue.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.DipValue.ValueKey] = item.Value,
|
||||
[Serialization.Models.Metadata.DipValue.DefaultKey] = item.Default,
|
||||
};
|
||||
return dipValue;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.SoftwareList.Disk"/> to <see cref="Models.Metadata.Disk"/>
|
||||
/// Convert from <see cref="Disk"/> to <see cref="Serialization.Models.Metadata.Disk"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Disk ConvertToInternalModel(Disk item)
|
||||
private static Serialization.Models.Metadata.Disk ConvertToInternalModel(Disk item)
|
||||
{
|
||||
var disk = new Models.Metadata.Disk
|
||||
var disk = new Serialization.Models.Metadata.Disk
|
||||
{
|
||||
[Models.Metadata.Disk.NameKey] = item.Name,
|
||||
[Models.Metadata.Disk.MD5Key] = item.MD5,
|
||||
[Models.Metadata.Disk.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Disk.StatusKey] = item.Status,
|
||||
[Models.Metadata.Disk.WritableKey] = item.Writeable,
|
||||
[Serialization.Models.Metadata.Disk.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Disk.MD5Key] = item.MD5,
|
||||
[Serialization.Models.Metadata.Disk.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Disk.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.Disk.WritableKey] = item.Writeable,
|
||||
};
|
||||
return disk;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.SoftwareList.DiskArea"/> to <see cref="Models.Metadata.DiskArea"/>
|
||||
/// Convert from <see cref="DiskArea"/> to <see cref="Serialization.Models.Metadata.DiskArea"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.DiskArea ConvertToInternalModel(DiskArea item)
|
||||
private static Serialization.Models.Metadata.DiskArea ConvertToInternalModel(DiskArea item)
|
||||
{
|
||||
var diskArea = new Models.Metadata.DiskArea
|
||||
var diskArea = new Serialization.Models.Metadata.DiskArea
|
||||
{
|
||||
[Models.Metadata.DiskArea.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.DiskArea.NameKey] = item.Name,
|
||||
};
|
||||
|
||||
if (item.Disk != null && item.Disk.Length > 0)
|
||||
diskArea[Models.Metadata.DiskArea.DiskKey] = Array.ConvertAll(item.Disk, ConvertToInternalModel);
|
||||
diskArea[Serialization.Models.Metadata.DiskArea.DiskKey] = Array.ConvertAll(item.Disk, ConvertToInternalModel);
|
||||
|
||||
return diskArea;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.SoftwareList.Feature"/> to <see cref="Models.Metadata.Feature"/>
|
||||
/// Convert from <see cref="Feature"/> to <see cref="Serialization.Models.Metadata.Feature"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Feature ConvertToInternalModel(Feature item)
|
||||
private static Serialization.Models.Metadata.Feature ConvertToInternalModel(Feature item)
|
||||
{
|
||||
var feature = new Models.Metadata.Feature
|
||||
var feature = new Serialization.Models.Metadata.Feature
|
||||
{
|
||||
[Models.Metadata.Feature.NameKey] = item.Name,
|
||||
[Models.Metadata.Feature.ValueKey] = item.Value,
|
||||
[Serialization.Models.Metadata.Feature.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Feature.ValueKey] = item.Value,
|
||||
};
|
||||
return feature;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.SoftwareList.Info"/> to <see cref="Models.Metadata.Info"/>
|
||||
/// Convert from <see cref="Info"/> to <see cref="Serialization.Models.Metadata.Info"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Info ConvertToInternalModel(Info item)
|
||||
private static Serialization.Models.Metadata.Info ConvertToInternalModel(Info item)
|
||||
{
|
||||
var info = new Models.Metadata.Info
|
||||
var info = new Serialization.Models.Metadata.Info
|
||||
{
|
||||
[Models.Metadata.Info.NameKey] = item.Name,
|
||||
[Models.Metadata.Info.ValueKey] = item.Value,
|
||||
[Serialization.Models.Metadata.Info.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Info.ValueKey] = item.Value,
|
||||
};
|
||||
return info;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.SoftwareList.Part"/> to <see cref="Models.Metadata.Part"/>
|
||||
/// Convert from <see cref="Part"/> to <see cref="Serialization.Models.Metadata.Part"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Part ConvertToInternalModel(Part item)
|
||||
private static Serialization.Models.Metadata.Part ConvertToInternalModel(Part item)
|
||||
{
|
||||
var part = new Models.Metadata.Part
|
||||
var part = new Serialization.Models.Metadata.Part
|
||||
{
|
||||
[Models.Metadata.Part.NameKey] = item.Name,
|
||||
[Models.Metadata.Part.InterfaceKey] = item.Interface,
|
||||
[Serialization.Models.Metadata.Part.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Part.InterfaceKey] = item.Interface,
|
||||
};
|
||||
|
||||
if (item.Feature != null && item.Feature.Length > 0)
|
||||
part[Models.Metadata.Part.FeatureKey] = Array.ConvertAll(item.Feature, ConvertToInternalModel);
|
||||
part[Serialization.Models.Metadata.Part.FeatureKey] = Array.ConvertAll(item.Feature, ConvertToInternalModel);
|
||||
|
||||
if (item.DataArea != null && item.DataArea.Length > 0)
|
||||
part[Models.Metadata.Part.DataAreaKey] = Array.ConvertAll(item.DataArea, ConvertToInternalModel);
|
||||
part[Serialization.Models.Metadata.Part.DataAreaKey] = Array.ConvertAll(item.DataArea, ConvertToInternalModel);
|
||||
|
||||
if (item.DiskArea != null && item.DiskArea.Length > 0)
|
||||
part[Models.Metadata.Part.DiskAreaKey] = Array.ConvertAll(item.DiskArea, ConvertToInternalModel);
|
||||
part[Serialization.Models.Metadata.Part.DiskAreaKey] = Array.ConvertAll(item.DiskArea, ConvertToInternalModel);
|
||||
|
||||
if (item.DipSwitch != null && item.DipSwitch.Length > 0)
|
||||
part[Models.Metadata.Part.DipSwitchKey] = Array.ConvertAll(item.DipSwitch, ConvertToInternalModel);
|
||||
part[Serialization.Models.Metadata.Part.DipSwitchKey] = Array.ConvertAll(item.DipSwitch, ConvertToInternalModel);
|
||||
|
||||
return part;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.SoftwareList.Rom"/> to <see cref="Models.Metadata.Rom"/>
|
||||
/// Convert from <see cref="Rom"/> to <see cref="Serialization.Models.Metadata.Rom"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.Rom ConvertToInternalModel(Rom item)
|
||||
private static Serialization.Models.Metadata.Rom ConvertToInternalModel(Rom item)
|
||||
{
|
||||
var rom = new Models.Metadata.Rom
|
||||
var rom = new Serialization.Models.Metadata.Rom
|
||||
{
|
||||
[Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Models.Metadata.Rom.LengthKey] = item.Length,
|
||||
[Models.Metadata.Rom.CRCKey] = item.CRC,
|
||||
[Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Models.Metadata.Rom.OffsetKey] = item.Offset,
|
||||
[Models.Metadata.Rom.ValueKey] = item.Value,
|
||||
[Models.Metadata.Rom.StatusKey] = item.Status,
|
||||
[Models.Metadata.Rom.LoadFlagKey] = item.LoadFlag,
|
||||
[Serialization.Models.Metadata.Rom.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.Rom.SizeKey] = item.Size,
|
||||
[Serialization.Models.Metadata.Rom.LengthKey] = item.Length,
|
||||
[Serialization.Models.Metadata.Rom.CRCKey] = item.CRC,
|
||||
[Serialization.Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Serialization.Models.Metadata.Rom.OffsetKey] = item.Offset,
|
||||
[Serialization.Models.Metadata.Rom.ValueKey] = item.Value,
|
||||
[Serialization.Models.Metadata.Rom.StatusKey] = item.Status,
|
||||
[Serialization.Models.Metadata.Rom.LoadFlagKey] = item.LoadFlag,
|
||||
};
|
||||
return rom;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.SoftwareList.SharedFeat"/> to <see cref="Models.Metadata.SharedFeat"/>
|
||||
/// Convert from <see cref="SharedFeat"/> to <see cref="Serialization.Models.Metadata.SharedFeat"/>
|
||||
/// </summary>
|
||||
private static Models.Metadata.SharedFeat ConvertToInternalModel(SharedFeat item)
|
||||
private static Serialization.Models.Metadata.SharedFeat ConvertToInternalModel(SharedFeat item)
|
||||
{
|
||||
var sharedFeat = new Models.Metadata.SharedFeat
|
||||
var sharedFeat = new Serialization.Models.Metadata.SharedFeat
|
||||
{
|
||||
[Models.Metadata.SharedFeat.NameKey] = item.Name,
|
||||
[Models.Metadata.SharedFeat.ValueKey] = item.Value,
|
||||
[Serialization.Models.Metadata.SharedFeat.NameKey] = item.Name,
|
||||
[Serialization.Models.Metadata.SharedFeat.ValueKey] = item.Value,
|
||||
};
|
||||
return sharedFeat;
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using SabreTools.IO.Extensions;
|
||||
using SabreTools.Models.ASN1;
|
||||
using SabreTools.Serialization.Models.ASN1;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
|
||||
@@ -5,10 +5,10 @@ using static SabreTools.Models.PlayStation4.Constants;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
public class AppPkgHeader : BaseBinaryDeserializer<Models.PlayStation4.AppPkgHeader>
|
||||
public class AppPkgHeader : BaseBinaryDeserializer<SabreTools.Models.PlayStation4.AppPkgHeader>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public override Models.PlayStation4.AppPkgHeader? Deserialize(Stream? data)
|
||||
public override SabreTools.Models.PlayStation4.AppPkgHeader? Deserialize(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -17,7 +17,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
try
|
||||
{
|
||||
// Create a new app.pkg header to fill
|
||||
var appPkgHeader = new Models.PlayStation4.AppPkgHeader();
|
||||
var appPkgHeader = new SabreTools.Models.PlayStation4.AppPkgHeader();
|
||||
|
||||
appPkgHeader.Magic = data.ReadUInt32BigEndian();
|
||||
if (appPkgHeader.Magic != AppPkgMagic)
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
using SabreTools.Serialization.Models.ArchiveDotOrg;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
public class ArchiveDotOrg : XmlFile<Models.ArchiveDotOrg.Files>
|
||||
public class ArchiveDotOrg : XmlFile<Files>
|
||||
{
|
||||
// All logic taken care of in the base class
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using SabreTools.IO.Readers;
|
||||
using SabreTools.Models.AttractMode;
|
||||
using SabreTools.Serialization.Models.AttractMode;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
|
||||
@@ -5,10 +5,10 @@ using SabreTools.Models.N3DS;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
public class CIA : BaseBinaryDeserializer<Models.N3DS.CIA>
|
||||
public class CIA : BaseBinaryDeserializer<SabreTools.Models.N3DS.CIA>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public override Models.N3DS.CIA? Deserialize(Stream? data)
|
||||
public override SabreTools.Models.N3DS.CIA? Deserialize(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -17,7 +17,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
try
|
||||
{
|
||||
// Create a new CIA archive to fill
|
||||
var cia = new Models.N3DS.CIA();
|
||||
var cia = new SabreTools.Models.N3DS.CIA();
|
||||
|
||||
#region CIA Header
|
||||
|
||||
|
||||
@@ -3,12 +3,12 @@ using System.Text;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
public class Catalog : JsonFile<Models.Xbox.Catalog>
|
||||
public class Catalog : JsonFile<SabreTools.Models.Xbox.Catalog>
|
||||
{
|
||||
#region IByteDeserializer
|
||||
|
||||
/// <remarks>Catalog.js file is encoded as UTF-16 LE</remarks>
|
||||
public override Models.Xbox.Catalog? Deserialize(byte[]? data, int offset)
|
||||
public override SabreTools.Models.Xbox.Catalog? Deserialize(byte[]? data, int offset)
|
||||
=> Deserialize(data, offset, new UnicodeEncoding());
|
||||
|
||||
#endregion
|
||||
@@ -16,7 +16,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
#region IFileDeserializer
|
||||
|
||||
/// <remarks>Catalog.js file is encoded as UTF-16 LE</remarks>
|
||||
public override Models.Xbox.Catalog? Deserialize(string? path)
|
||||
public override SabreTools.Models.Xbox.Catalog? Deserialize(string? path)
|
||||
=> Deserialize(path, new UnicodeEncoding());
|
||||
|
||||
#endregion
|
||||
@@ -24,7 +24,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
#region IStreamDeserializer
|
||||
|
||||
/// <remarks>Catalog.js file is encoded as UTF-16 LE</remarks>
|
||||
public override Models.Xbox.Catalog? Deserialize(Stream? data)
|
||||
public override SabreTools.Models.Xbox.Catalog? Deserialize(Stream? data)
|
||||
=> Deserialize(data, new UnicodeEncoding());
|
||||
|
||||
#endregion
|
||||
|
||||
@@ -3,7 +3,7 @@ using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using SabreTools.IO.Readers;
|
||||
using SabreTools.Models.ClrMamePro;
|
||||
using SabreTools.Serialization.Models.ClrMamePro;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
@@ -154,7 +154,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
switch (reader.TopLevel)
|
||||
{
|
||||
case "clrmamepro":
|
||||
dat.ClrMamePro = new Models.ClrMamePro.ClrMamePro();
|
||||
dat.ClrMamePro = new SabreTools.Serialization.Models.ClrMamePro.ClrMamePro();
|
||||
break;
|
||||
case "game":
|
||||
game = new Game();
|
||||
@@ -176,7 +176,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
&& reader.RowType == CmpRowType.Standalone)
|
||||
{
|
||||
// Create the block if we haven't already
|
||||
dat.ClrMamePro ??= new Models.ClrMamePro.ClrMamePro();
|
||||
dat.ClrMamePro ??= new SabreTools.Serialization.Models.ClrMamePro.ClrMamePro();
|
||||
|
||||
switch (reader.Standalone?.Key?.ToLowerInvariant())
|
||||
{
|
||||
|
||||
@@ -7,10 +7,10 @@ using SabreTools.Models.CueSheets;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
public class CueSheet : BaseBinaryDeserializer<Models.CueSheets.CueSheet>
|
||||
public class CueSheet : BaseBinaryDeserializer<SabreTools.Models.CueSheets.CueSheet>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public override Models.CueSheets.CueSheet? Deserialize(Stream? data)
|
||||
public override SabreTools.Models.CueSheets.CueSheet? Deserialize(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -20,7 +20,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
// Setup the reader and output
|
||||
var reader = new StreamReader(data, Encoding.UTF8);
|
||||
var cueSheet = new Models.CueSheets.CueSheet();
|
||||
var cueSheet = new SabreTools.Models.CueSheets.CueSheet();
|
||||
var cueFiles = new List<CueFile>();
|
||||
|
||||
// Read the next line from the input
|
||||
|
||||
@@ -2,7 +2,7 @@ using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using SabreTools.IO.Readers;
|
||||
using SabreTools.Models.DosCenter;
|
||||
using SabreTools.Serialization.Models.DosCenter;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
@@ -26,7 +26,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
|
||||
Game? game = null;
|
||||
var games = new List<Game>();
|
||||
var files = new List<Models.DosCenter.File>();
|
||||
var files = new List<SabreTools.Serialization.Models.DosCenter.File>();
|
||||
|
||||
while (!reader.EndOfStream)
|
||||
{
|
||||
@@ -64,7 +64,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
switch (reader.TopLevel)
|
||||
{
|
||||
case "doscenter":
|
||||
dat.DosCenter = new Models.DosCenter.DosCenter();
|
||||
dat.DosCenter = new SabreTools.Serialization.Models.DosCenter.DosCenter();
|
||||
break;
|
||||
case "game":
|
||||
game = new Game();
|
||||
@@ -76,7 +76,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
else if (reader.TopLevel == "doscenter" && reader.RowType == CmpRowType.Standalone)
|
||||
{
|
||||
// Create the block if we haven't already
|
||||
dat.DosCenter ??= new Models.DosCenter.DosCenter();
|
||||
dat.DosCenter ??= new SabreTools.Serialization.Models.DosCenter.DosCenter();
|
||||
|
||||
switch (reader.Standalone?.Key?.ToLowerInvariant())
|
||||
{
|
||||
@@ -153,12 +153,12 @@ namespace SabreTools.Serialization.Deserializers
|
||||
/// </summary>
|
||||
/// <param name="reader">ClrMameProReader representing the metadata file</param>
|
||||
/// <returns>File object created from the reader context</returns>
|
||||
private static Models.DosCenter.File? CreateFile(ClrMameProReader reader)
|
||||
private static SabreTools.Serialization.Models.DosCenter.File? CreateFile(ClrMameProReader reader)
|
||||
{
|
||||
if (reader.Internal == null)
|
||||
return null;
|
||||
|
||||
var file = new Models.DosCenter.File();
|
||||
var file = new SabreTools.Serialization.Models.DosCenter.File();
|
||||
foreach (var kvp in reader.Internal)
|
||||
{
|
||||
switch (kvp.Key?.ToLowerInvariant())
|
||||
|
||||
@@ -2,7 +2,7 @@ using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using SabreTools.IO.Readers;
|
||||
using SabreTools.Models.EverdriveSMDB;
|
||||
using SabreTools.Serialization.Models.EverdriveSMDB;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
|
||||
@@ -5,10 +5,10 @@ using SabreTools.Models.GCF;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
public class GCF : BaseBinaryDeserializer<Models.GCF.File>
|
||||
public class GCF : BaseBinaryDeserializer<SabreTools.Models.GCF.File>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public override Models.GCF.File? Deserialize(Stream? data)
|
||||
public override SabreTools.Models.GCF.File? Deserialize(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -20,7 +20,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
long initialOffset = data.Position;
|
||||
|
||||
// Create a new Half-Life Game Cache to fill
|
||||
var file = new Models.GCF.File();
|
||||
var file = new SabreTools.Models.GCF.File();
|
||||
|
||||
#region Header
|
||||
|
||||
|
||||
@@ -2,20 +2,20 @@ using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using SabreTools.Hashing;
|
||||
using SabreTools.Models.Hashfile;
|
||||
using SabreTools.Serialization.Models.Hashfile;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
public class Hashfile : BaseBinaryDeserializer<Models.Hashfile.Hashfile>
|
||||
public class Hashfile : BaseBinaryDeserializer<SabreTools.Serialization.Models.Hashfile.Hashfile>
|
||||
{
|
||||
#region IByteDeserializer
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override Models.Hashfile.Hashfile? Deserialize(byte[]? data, int offset)
|
||||
public override SabreTools.Serialization.Models.Hashfile.Hashfile? Deserialize(byte[]? data, int offset)
|
||||
=> Deserialize(data, offset, HashType.CRC32);
|
||||
|
||||
/// <inheritdoc cref="Deserialize(byte[], int)"/>
|
||||
public Models.Hashfile.Hashfile? Deserialize(byte[]? data, int offset, HashType hash)
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? Deserialize(byte[]? data, int offset, HashType hash)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || data.Length == 0)
|
||||
@@ -35,11 +35,11 @@ namespace SabreTools.Serialization.Deserializers
|
||||
#region IFileDeserializer
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override Models.Hashfile.Hashfile? Deserialize(string? path)
|
||||
public override SabreTools.Serialization.Models.Hashfile.Hashfile? Deserialize(string? path)
|
||||
=> Deserialize(path, HashType.CRC32);
|
||||
|
||||
/// <inheritdoc cref="Deserialize(string?)"/>
|
||||
public Models.Hashfile.Hashfile? Deserialize(string? path, HashType hash)
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? Deserialize(string? path, HashType hash)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -62,11 +62,11 @@ namespace SabreTools.Serialization.Deserializers
|
||||
|
||||
#region IStreamDeserializer
|
||||
|
||||
public override Models.Hashfile.Hashfile? Deserialize(Stream? data)
|
||||
public override SabreTools.Serialization.Models.Hashfile.Hashfile? Deserialize(Stream? data)
|
||||
=> Deserialize(data, HashType.CRC32);
|
||||
|
||||
/// <inheritdoc cref="Deserialize(Stream)"/>
|
||||
public Models.Hashfile.Hashfile? Deserialize(Stream? data, HashType hash)
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? Deserialize(Stream? data, HashType hash)
|
||||
{
|
||||
return hash switch
|
||||
{
|
||||
@@ -87,7 +87,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
}
|
||||
|
||||
/// <inheritdoc cref="Deserialize(Stream)"/>
|
||||
public Models.Hashfile.Hashfile? DeserializeSFV(Stream? data)
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? DeserializeSFV(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -118,7 +118,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
|
||||
// Assign the hashes to the hashfile and return
|
||||
if (sfvList.Count > 0)
|
||||
return new Models.Hashfile.Hashfile { SFV = [.. sfvList] };
|
||||
return new SabreTools.Serialization.Models.Hashfile.Hashfile { SFV = [.. sfvList] };
|
||||
|
||||
return null;
|
||||
}
|
||||
@@ -130,7 +130,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
}
|
||||
|
||||
/// <inheritdoc cref="Deserialize(Stream)"/>
|
||||
public Models.Hashfile.Hashfile? DeserializeMD2(Stream? data)
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? DeserializeMD2(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -162,7 +162,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
|
||||
// Assign the hashes to the hashfile and return
|
||||
if (md2List.Count > 0)
|
||||
return new Models.Hashfile.Hashfile { MD2 = [.. md2List] };
|
||||
return new SabreTools.Serialization.Models.Hashfile.Hashfile { MD2 = [.. md2List] };
|
||||
|
||||
return null;
|
||||
}
|
||||
@@ -174,7 +174,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
}
|
||||
|
||||
/// <inheritdoc cref="Deserialize(Stream)"/>
|
||||
public Models.Hashfile.Hashfile? DeserializeMD4(Stream? data)
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? DeserializeMD4(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -206,7 +206,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
|
||||
// Assign the hashes to the hashfile and return
|
||||
if (md4List.Count > 0)
|
||||
return new Models.Hashfile.Hashfile { MD4 = [.. md4List] };
|
||||
return new SabreTools.Serialization.Models.Hashfile.Hashfile { MD4 = [.. md4List] };
|
||||
|
||||
return null;
|
||||
}
|
||||
@@ -218,7 +218,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
}
|
||||
|
||||
/// <inheritdoc cref="Deserialize(Stream)"/>
|
||||
public Models.Hashfile.Hashfile? DeserializeMD5(Stream? data)
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? DeserializeMD5(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -248,13 +248,13 @@ namespace SabreTools.Serialization.Deserializers
|
||||
|
||||
// Assign the hashes to the hashfile and return
|
||||
if (md5List.Count > 0)
|
||||
return new Models.Hashfile.Hashfile { MD5 = [.. md5List] };
|
||||
return new SabreTools.Serialization.Models.Hashfile.Hashfile { MD5 = [.. md5List] };
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
/// <inheritdoc cref="Deserialize(Stream)"/>
|
||||
public Models.Hashfile.Hashfile? DeserializeRIPEMD128(Stream? data)
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? DeserializeRIPEMD128(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -284,13 +284,13 @@ namespace SabreTools.Serialization.Deserializers
|
||||
|
||||
// Assign the hashes to the hashfile and return
|
||||
if (ripemd128List.Count > 0)
|
||||
return new Models.Hashfile.Hashfile { RIPEMD128 = [.. ripemd128List] };
|
||||
return new SabreTools.Serialization.Models.Hashfile.Hashfile { RIPEMD128 = [.. ripemd128List] };
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
/// <inheritdoc cref="Deserialize(Stream)"/>
|
||||
public Models.Hashfile.Hashfile? DeserializeRIPEMD160(Stream? data)
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? DeserializeRIPEMD160(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -320,13 +320,13 @@ namespace SabreTools.Serialization.Deserializers
|
||||
|
||||
// Assign the hashes to the hashfile and return
|
||||
if (ripemd160List.Count > 0)
|
||||
return new Models.Hashfile.Hashfile { RIPEMD160 = [.. ripemd160List] };
|
||||
return new SabreTools.Serialization.Models.Hashfile.Hashfile { RIPEMD160 = [.. ripemd160List] };
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
/// <inheritdoc cref="Deserialize(Stream)"/>
|
||||
public Models.Hashfile.Hashfile? DeserializeSHA1(Stream? data)
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? DeserializeSHA1(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -358,7 +358,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
|
||||
// Assign the hashes to the hashfile and return
|
||||
if (sha1List.Count > 0)
|
||||
return new Models.Hashfile.Hashfile { SHA1 = [.. sha1List] };
|
||||
return new SabreTools.Serialization.Models.Hashfile.Hashfile { SHA1 = [.. sha1List] };
|
||||
|
||||
return null;
|
||||
}
|
||||
@@ -370,7 +370,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
}
|
||||
|
||||
/// <inheritdoc cref="Deserialize(Stream)"/>
|
||||
public Models.Hashfile.Hashfile? DeserializeSHA256(Stream? data)
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? DeserializeSHA256(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -402,7 +402,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
|
||||
// Assign the hashes to the hashfile and return
|
||||
if (sha256List.Count > 0)
|
||||
return new Models.Hashfile.Hashfile { SHA256 = [.. sha256List] };
|
||||
return new SabreTools.Serialization.Models.Hashfile.Hashfile { SHA256 = [.. sha256List] };
|
||||
|
||||
return null;
|
||||
}
|
||||
@@ -414,7 +414,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
}
|
||||
|
||||
/// <inheritdoc cref="Deserialize(Stream)"/>
|
||||
public Models.Hashfile.Hashfile? DeserializeSHA384(Stream? data)
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? DeserializeSHA384(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -446,7 +446,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
|
||||
// Assign the hashes to the hashfile and return
|
||||
if (sha384List.Count > 0)
|
||||
return new Models.Hashfile.Hashfile { SHA384 = [.. sha384List] };
|
||||
return new SabreTools.Serialization.Models.Hashfile.Hashfile { SHA384 = [.. sha384List] };
|
||||
|
||||
return null;
|
||||
}
|
||||
@@ -458,7 +458,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
}
|
||||
|
||||
/// <inheritdoc cref="Deserialize(Stream)"/>
|
||||
public Models.Hashfile.Hashfile? DeserializeSHA512(Stream? data)
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? DeserializeSHA512(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -490,7 +490,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
|
||||
// Assign the hashes to the hashfile and return
|
||||
if (sha512List.Count > 0)
|
||||
return new Models.Hashfile.Hashfile { SHA512 = [.. sha512List] };
|
||||
return new SabreTools.Serialization.Models.Hashfile.Hashfile { SHA512 = [.. sha512List] };
|
||||
|
||||
return null;
|
||||
}
|
||||
@@ -502,7 +502,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
}
|
||||
|
||||
/// <inheritdoc cref="Deserialize(Stream)"/>
|
||||
public Models.Hashfile.Hashfile? DeserializeSpamSum(Stream? data)
|
||||
public SabreTools.Serialization.Models.Hashfile.Hashfile? DeserializeSpamSum(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -534,7 +534,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
|
||||
// Assign the hashes to the hashfile and return
|
||||
if (spamsumList.Count > 0)
|
||||
return new Models.Hashfile.Hashfile { SpamSum = [.. spamsumList] };
|
||||
return new SabreTools.Serialization.Models.Hashfile.Hashfile { SpamSum = [.. spamsumList] };
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -4,10 +4,10 @@ using SabreTools.IO.Extensions;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
public class IRD : BaseBinaryDeserializer<Models.IRD.File>
|
||||
public class IRD : BaseBinaryDeserializer<SabreTools.Models.IRD.File>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public override Models.IRD.File? Deserialize(Stream? data)
|
||||
public override SabreTools.Models.IRD.File? Deserialize(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -16,7 +16,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
try
|
||||
{
|
||||
// Deserialize the IRD
|
||||
var ird = new Models.IRD.File();
|
||||
var ird = new SabreTools.Models.IRD.File();
|
||||
|
||||
ird.Magic = data.ReadBytes(4);
|
||||
string magic = Encoding.ASCII.GetString(ird.Magic);
|
||||
|
||||
@@ -47,7 +47,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
data.Seek(directoriesOffset, SeekOrigin.Begin);
|
||||
|
||||
// Try to parse the directories
|
||||
var directories = new List<Models.InstallShieldArchiveV3.Directory>();
|
||||
var directories = new List<SabreTools.Models.InstallShieldArchiveV3.Directory>();
|
||||
for (int i = 0; i < header.DirCount; i++)
|
||||
{
|
||||
var directory = ParseDirectory(data);
|
||||
@@ -63,7 +63,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
#region Files
|
||||
|
||||
// Try to parse the files
|
||||
var files = new List<Models.InstallShieldArchiveV3.File>();
|
||||
var files = new List<SabreTools.Models.InstallShieldArchiveV3.File>();
|
||||
for (int i = 0; i < archive.Directories.Length; i++)
|
||||
{
|
||||
var directory = archive.Directories[i];
|
||||
@@ -94,9 +94,9 @@ namespace SabreTools.Serialization.Deserializers
|
||||
/// </summary>
|
||||
/// <param name="data">Stream to parse</param>
|
||||
/// <returns>Filled Directory on success, null on error</returns>
|
||||
public static Models.InstallShieldArchiveV3.Directory ParseDirectory(Stream data)
|
||||
public static SabreTools.Models.InstallShieldArchiveV3.Directory ParseDirectory(Stream data)
|
||||
{
|
||||
var obj = new Models.InstallShieldArchiveV3.Directory();
|
||||
var obj = new SabreTools.Models.InstallShieldArchiveV3.Directory();
|
||||
|
||||
obj.FileCount = data.ReadUInt16LittleEndian();
|
||||
obj.ChunkSize = data.ReadUInt16LittleEndian();
|
||||
@@ -113,9 +113,9 @@ namespace SabreTools.Serialization.Deserializers
|
||||
/// </summary>
|
||||
/// <param name="data">Stream to parse</param>
|
||||
/// <returns>Filled File on success, null on error</returns>
|
||||
public static Models.InstallShieldArchiveV3.File ParseFile(Stream data)
|
||||
public static SabreTools.Models.InstallShieldArchiveV3.File ParseFile(Stream data)
|
||||
{
|
||||
var obj = new Models.InstallShieldArchiveV3.File();
|
||||
var obj = new SabreTools.Models.InstallShieldArchiveV3.File();
|
||||
|
||||
obj.VolumeEnd = data.ReadByteValue();
|
||||
obj.Index = data.ReadUInt16LittleEndian();
|
||||
|
||||
@@ -2,7 +2,7 @@ using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using SabreTools.Models.Listrom;
|
||||
using SabreTools.Serialization.Models.Listrom;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
@@ -76,13 +76,13 @@ namespace SabreTools.Serialization.Deserializers
|
||||
|
||||
// Split the line for the name iteratively
|
||||
#if NETFRAMEWORK || NETCOREAPP3_1 || NETSTANDARD2_0_OR_GREATER
|
||||
string[] lineParts = line.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries);
|
||||
string[] lineParts = line.Split([" "], StringSplitOptions.RemoveEmptyEntries);
|
||||
if (lineParts.Length == 1)
|
||||
lineParts = line.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries);
|
||||
lineParts = line.Split([" "], StringSplitOptions.RemoveEmptyEntries);
|
||||
if (lineParts.Length == 1)
|
||||
lineParts = line.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries);
|
||||
lineParts = line.Split([" "], StringSplitOptions.RemoveEmptyEntries);
|
||||
if (lineParts.Length == 1)
|
||||
lineParts = line.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries);
|
||||
lineParts = line.Split([" "], StringSplitOptions.RemoveEmptyEntries);
|
||||
#else
|
||||
string[] lineParts = line.Split(" ", StringSplitOptions.RemoveEmptyEntries | StringSplitOptions.TrimEntries);
|
||||
if (lineParts.Length == 1)
|
||||
@@ -100,7 +100,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
continue;
|
||||
|
||||
#if NETFRAMEWORK || NETCOREAPP3_1 || NETSTANDARD2_0_OR_GREATER
|
||||
lineParts = trimmedLine.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
|
||||
lineParts = trimmedLine.Split([' '], StringSplitOptions.RemoveEmptyEntries);
|
||||
#else
|
||||
lineParts = trimmedLine.Split(' ', StringSplitOptions.RemoveEmptyEntries | StringSplitOptions.TrimEntries);
|
||||
#endif
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
using SabreTools.Serialization.Models.Listxml;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
public class Listxml : XmlFile<Models.Listxml.Mame>
|
||||
public class Listxml : XmlFile<Mame>
|
||||
{
|
||||
// All logic taken care of in the base class
|
||||
}
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
using SabreTools.Serialization.Models.Logiqx;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
public class Logiqx : XmlFile<Models.Logiqx.Datafile>
|
||||
public class Logiqx : XmlFile<Datafile>
|
||||
{
|
||||
// All logic taken care of in the base class
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
public class M1 : XmlFile<Models.Listxml.M1>
|
||||
public class M1 : XmlFile<SabreTools.Serialization.Models.Listxml.M1>
|
||||
{
|
||||
// All logic taken care of in the base class
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
public class Mess : XmlFile<Models.Listxml.Mess>
|
||||
public class Mess : XmlFile<SabreTools.Serialization.Models.Listxml.Mess>
|
||||
{
|
||||
// All logic taken care of in the base class
|
||||
}
|
||||
|
||||
@@ -227,12 +227,12 @@ namespace SabreTools.Serialization.Deserializers
|
||||
file.FolderIndex = (FolderIndex)data.ReadUInt16LittleEndian();
|
||||
file.Date = data.ReadUInt16LittleEndian();
|
||||
file.Time = data.ReadUInt16LittleEndian();
|
||||
file.Attributes = (Models.MicrosoftCabinet.FileAttributes)data.ReadUInt16LittleEndian();
|
||||
file.Attributes = (SabreTools.Models.MicrosoftCabinet.FileAttributes)data.ReadUInt16LittleEndian();
|
||||
|
||||
#if NET20 || NET35
|
||||
if ((file.Attributes & Models.MicrosoftCabinet.FileAttributes.NAME_IS_UTF) != 0)
|
||||
if ((file.Attributes & SabreTools.Models.MicrosoftCabinet.FileAttributes.NAME_IS_UTF) != 0)
|
||||
#else
|
||||
if (file.Attributes.HasFlag(Models.MicrosoftCabinet.FileAttributes.NAME_IS_UTF))
|
||||
if (file.Attributes.HasFlag(SabreTools.Models.MicrosoftCabinet.FileAttributes.NAME_IS_UTF))
|
||||
#endif
|
||||
file.Name = data.ReadNullTerminatedUnicodeString();
|
||||
else
|
||||
|
||||
@@ -6,10 +6,10 @@ using SabreTools.Models.NCF;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
public class NCF : BaseBinaryDeserializer<Models.NCF.File>
|
||||
public class NCF : BaseBinaryDeserializer<SabreTools.Models.NCF.File>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
public override Models.NCF.File? Deserialize(Stream? data)
|
||||
public override SabreTools.Models.NCF.File? Deserialize(Stream? data)
|
||||
{
|
||||
// If the data is invalid
|
||||
if (data == null || !data.CanRead)
|
||||
@@ -21,7 +21,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
long initialOffset = data.Position;
|
||||
|
||||
// Create a new Half-Life No Cache to fill
|
||||
var file = new Models.NCF.File();
|
||||
var file = new SabreTools.Models.NCF.File();
|
||||
|
||||
#region Header
|
||||
|
||||
|
||||
@@ -253,7 +253,7 @@ namespace SabreTools.Serialization.Deserializers
|
||||
obj.MovableEntriesCount = data.ReadUInt16LittleEndian();
|
||||
obj.SegmentAlignmentShiftCount = data.ReadUInt16LittleEndian();
|
||||
obj.ResourceEntriesCount = data.ReadUInt16LittleEndian();
|
||||
obj.TargetOperatingSystem = (Models.NewExecutable.OperatingSystem)data.ReadByteValue();
|
||||
obj.TargetOperatingSystem = (SabreTools.Models.NewExecutable.OperatingSystem)data.ReadByteValue();
|
||||
obj.AdditionalFlags = (OS2Flag)data.ReadByteValue();
|
||||
obj.ReturnThunkOffset = data.ReadUInt16LittleEndian();
|
||||
obj.SegmentReferenceThunkOffset = data.ReadUInt16LittleEndian();
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
using SabreTools.Serialization.Models.OfflineList;
|
||||
|
||||
namespace SabreTools.Serialization.Deserializers
|
||||
{
|
||||
public class OfflineList : XmlFile<Models.OfflineList.Dat>
|
||||
public class OfflineList : XmlFile<Dat>
|
||||
{
|
||||
// All logic taken care of in the base class
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user