mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
[Structs, Enums] Add ItemType enum
This commit is contained in:
@@ -59,6 +59,19 @@ namespace SabreTools.Helper
|
||||
ExternalAll = 4,
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Determine what type of file an item is
|
||||
/// </summary>
|
||||
public enum ItemType
|
||||
{
|
||||
Rom = 0,
|
||||
Disk = 1,
|
||||
Sample = 2,
|
||||
Release = 3,
|
||||
BiosSet = 4,
|
||||
Archive = 5,
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Determines forcemerging tag for DAT output
|
||||
/// </summary>
|
||||
|
||||
@@ -48,7 +48,7 @@ namespace SabreTools.Helper
|
||||
{
|
||||
public Machine Machine;
|
||||
public string Name;
|
||||
public string Type;
|
||||
public ItemType Type;
|
||||
public HashData HashData;
|
||||
public DupeType Dupe;
|
||||
public bool Nodump;
|
||||
|
||||
@@ -536,7 +536,7 @@ namespace SabreTools.Helper
|
||||
|
||||
roms.Add(new Rom
|
||||
{
|
||||
Type = "rom",
|
||||
Type = ItemType.Rom,
|
||||
Name = reader.Entry.Key,
|
||||
Machine = new Machine
|
||||
{
|
||||
@@ -620,7 +620,7 @@ namespace SabreTools.Helper
|
||||
|
||||
Rom rom = new Rom
|
||||
{
|
||||
Type = "rom",
|
||||
Type = ItemType.Rom,
|
||||
Machine = new Machine
|
||||
{
|
||||
Name = Path.GetFileNameWithoutExtension(input).ToLowerInvariant(),
|
||||
|
||||
@@ -177,7 +177,7 @@ namespace SabreTools.Helper
|
||||
Name = gamename,
|
||||
Description = gamedesc,
|
||||
},
|
||||
Type = (line.Trim().StartsWith("disk (") ? "disk" : "rom"),
|
||||
Type = (line.Trim().StartsWith("disk (") ? ItemType.Disk : ItemType.Rom),
|
||||
Metadata = new SourceMetadata { SystemID = sysid, SourceID = srcid },
|
||||
};
|
||||
|
||||
@@ -300,7 +300,7 @@ namespace SabreTools.Helper
|
||||
rom.HashData.SHA1 = RomTools.CleanHashData(rom.HashData.SHA1, Constants.SHA1Length);
|
||||
|
||||
// If we have a rom and it's missing size AND the hashes match a 0-byte file, fill in the rest of the info
|
||||
if (rom.Type == "rom" && (rom.HashData.Size == 0 || rom.HashData.Size == -1) && ((rom.HashData.CRC == Constants.CRCZero || rom.HashData.CRC == "") || rom.HashData.MD5 == Constants.MD5Zero || rom.HashData.SHA1 == Constants.SHA1Zero))
|
||||
if (rom.Type == ItemType.Rom && (rom.HashData.Size == 0 || rom.HashData.Size == -1) && ((rom.HashData.CRC == Constants.CRCZero || rom.HashData.CRC == "") || rom.HashData.MD5 == Constants.MD5Zero || rom.HashData.SHA1 == Constants.SHA1Zero))
|
||||
{
|
||||
rom.HashData.Size = Constants.SizeZero;
|
||||
rom.HashData.CRC = Constants.CRCZero;
|
||||
@@ -308,14 +308,14 @@ namespace SabreTools.Helper
|
||||
rom.HashData.SHA1 = Constants.SHA1Zero;
|
||||
}
|
||||
// If the file has no size and it's not the above case, skip and log
|
||||
else if (rom.Type == "rom" && (rom.HashData.Size == 0 || rom.HashData.Size == -1))
|
||||
else if (rom.Type == ItemType.Rom && (rom.HashData.Size == 0 || rom.HashData.Size == -1))
|
||||
{
|
||||
logger.Warning("Incomplete entry for \"" + rom.Name + "\" will be output as nodump");
|
||||
rom.Nodump = true;
|
||||
}
|
||||
|
||||
// If we have a disk, make sure that the value for size is -1
|
||||
if (rom.Type == "disk")
|
||||
if (rom.Type == ItemType.Disk)
|
||||
{
|
||||
rom.HashData.Size = -1;
|
||||
}
|
||||
@@ -334,8 +334,8 @@ namespace SabreTools.Helper
|
||||
}
|
||||
|
||||
// Add statistical data
|
||||
datdata.RomCount += (rom.Type == "rom" ? 1 : 0);
|
||||
datdata.DiskCount += (rom.Type == "disk" ? 1 : 0);
|
||||
datdata.RomCount += (rom.Type == ItemType.Rom ? 1 : 0);
|
||||
datdata.DiskCount += (rom.Type == ItemType.Disk ? 1 : 0);
|
||||
datdata.TotalSize += (rom.Nodump ? 0 : rom.HashData.Size);
|
||||
datdata.CRCCount += (String.IsNullOrEmpty(rom.HashData.CRC) ? 0 : 1);
|
||||
datdata.MD5Count += (String.IsNullOrEmpty(rom.HashData.MD5) ? 0 : 1);
|
||||
@@ -588,7 +588,7 @@ namespace SabreTools.Helper
|
||||
rom.HashData.SHA1 = RomTools.CleanHashData(rom.HashData.SHA1, Constants.SHA1Length);
|
||||
|
||||
// If we have a rom and it's missing size AND the hashes match a 0-byte file, fill in the rest of the info
|
||||
if (rom.Type == "rom" && (rom.HashData.Size == 0 || rom.HashData.Size == -1) && ((rom.HashData.CRC == Constants.CRCZero || rom.HashData.CRC == "") || rom.HashData.MD5 == Constants.MD5Zero || rom.HashData.SHA1 == Constants.SHA1Zero))
|
||||
if (rom.Type == ItemType.Rom && (rom.HashData.Size == 0 || rom.HashData.Size == -1) && ((rom.HashData.CRC == Constants.CRCZero || rom.HashData.CRC == "") || rom.HashData.MD5 == Constants.MD5Zero || rom.HashData.SHA1 == Constants.SHA1Zero))
|
||||
{
|
||||
rom.HashData.Size = Constants.SizeZero;
|
||||
rom.HashData.CRC = Constants.CRCZero;
|
||||
@@ -596,14 +596,14 @@ namespace SabreTools.Helper
|
||||
rom.HashData.SHA1 = Constants.SHA1Zero;
|
||||
}
|
||||
// If the file has no size and it's not the above case, skip and log
|
||||
else if (rom.Type == "rom" && (rom.HashData.Size == 0 || rom.HashData.Size == -1))
|
||||
else if (rom.Type == ItemType.Rom && (rom.HashData.Size == 0 || rom.HashData.Size == -1))
|
||||
{
|
||||
logger.Warning("Incomplete entry for \"" + rom.Name + "\" will be output as nodump");
|
||||
rom.Nodump = true;
|
||||
}
|
||||
|
||||
// If we have a disk, make sure that the value for size is -1
|
||||
if (rom.Type == "disk")
|
||||
if (rom.Type == ItemType.Disk)
|
||||
{
|
||||
rom.HashData.Size = -1;
|
||||
}
|
||||
@@ -622,8 +622,8 @@ namespace SabreTools.Helper
|
||||
}
|
||||
|
||||
// Add statistical data
|
||||
datdata.RomCount += (rom.Type == "rom" ? 1 : 0);
|
||||
datdata.DiskCount += (rom.Type == "disk" ? 1 : 0);
|
||||
datdata.RomCount += (rom.Type == ItemType.Rom ? 1 : 0);
|
||||
datdata.DiskCount += (rom.Type == ItemType.Disk ? 1 : 0);
|
||||
datdata.TotalSize += (rom.Nodump ? 0 : rom.HashData.Size);
|
||||
datdata.CRCCount += (String.IsNullOrEmpty(rom.HashData.CRC) ? 0 : 1);
|
||||
datdata.MD5Count += (String.IsNullOrEmpty(rom.HashData.MD5) ? 0 : 1);
|
||||
@@ -679,7 +679,7 @@ namespace SabreTools.Helper
|
||||
|
||||
Rom rom = new Rom
|
||||
{
|
||||
Type = "rom",
|
||||
Type = ItemType.Rom,
|
||||
Name = "null",
|
||||
Machine = new Machine
|
||||
{
|
||||
@@ -708,8 +708,8 @@ namespace SabreTools.Helper
|
||||
}
|
||||
|
||||
// Add statistical data
|
||||
datdata.RomCount += (rom.Type == "rom" ? 1 : 0);
|
||||
datdata.DiskCount += (rom.Type == "disk" ? 1 : 0);
|
||||
datdata.RomCount += (rom.Type == ItemType.Rom ? 1 : 0);
|
||||
datdata.DiskCount += (rom.Type == ItemType.Disk ? 1 : 0);
|
||||
datdata.TotalSize += (rom.Nodump ? 0 : rom.HashData.Size);
|
||||
datdata.CRCCount += (String.IsNullOrEmpty(rom.HashData.CRC) ? 0 : 1);
|
||||
datdata.MD5Count += (String.IsNullOrEmpty(rom.HashData.MD5) ? 0 : 1);
|
||||
@@ -1135,7 +1135,7 @@ namespace SabreTools.Helper
|
||||
Description = gamedesc,
|
||||
},
|
||||
Name = subreader.GetAttribute("name"),
|
||||
Type = subreader.Name,
|
||||
Type = (subreader.Name.ToLowerInvariant() == "disk" ? ItemType.Disk : ItemType.Rom),
|
||||
HashData = new HashData
|
||||
{
|
||||
Size = size,
|
||||
@@ -1160,8 +1160,8 @@ namespace SabreTools.Helper
|
||||
}
|
||||
|
||||
// Add statistical data
|
||||
datdata.RomCount += (rom.Type == "rom" ? 1 : 0);
|
||||
datdata.DiskCount += (rom.Type == "disk" ? 1 : 0);
|
||||
datdata.RomCount += (rom.Type == ItemType.Rom ? 1 : 0);
|
||||
datdata.DiskCount += (rom.Type == ItemType.Disk ? 1 : 0);
|
||||
datdata.TotalSize += (rom.Nodump ? 0 : rom.HashData.Size);
|
||||
datdata.CRCCount += (String.IsNullOrEmpty(rom.HashData.CRC) ? 0 : 1);
|
||||
datdata.MD5Count += (String.IsNullOrEmpty(rom.HashData.MD5) ? 0 : 1);
|
||||
@@ -1188,7 +1188,7 @@ namespace SabreTools.Helper
|
||||
|
||||
Rom rom = new Rom
|
||||
{
|
||||
Type = "rom",
|
||||
Type = ItemType.Rom,
|
||||
Name = "null",
|
||||
Machine = new Machine
|
||||
{
|
||||
@@ -1217,8 +1217,8 @@ namespace SabreTools.Helper
|
||||
}
|
||||
|
||||
// Add statistical data
|
||||
datdata.RomCount += (rom.Type == "rom" ? 1 : 0);
|
||||
datdata.DiskCount += (rom.Type == "disk" ? 1 : 0);
|
||||
datdata.RomCount += (rom.Type == ItemType.Rom ? 1 : 0);
|
||||
datdata.DiskCount += (rom.Type == ItemType.Disk ? 1 : 0);
|
||||
datdata.TotalSize += (rom.Nodump ? 0 : rom.HashData.Size);
|
||||
datdata.CRCCount += (String.IsNullOrEmpty(rom.HashData.CRC) ? 0 : 1);
|
||||
datdata.MD5Count += (String.IsNullOrEmpty(rom.HashData.MD5) ? 0 : 1);
|
||||
@@ -1374,7 +1374,7 @@ namespace SabreTools.Helper
|
||||
Name = tempname,
|
||||
},
|
||||
Name = xtr.GetAttribute("name"),
|
||||
Type = xtr.GetAttribute("type"),
|
||||
Type = (xtr.GetAttribute("type").ToLowerInvariant() == "disk" ? ItemType.Disk : ItemType.Rom),
|
||||
HashData = new HashData
|
||||
{
|
||||
Size = size,
|
||||
@@ -1399,8 +1399,8 @@ namespace SabreTools.Helper
|
||||
}
|
||||
|
||||
// Add statistical data
|
||||
datdata.RomCount += (rom.Type == "rom" ? 1 : 0);
|
||||
datdata.DiskCount += (rom.Type == "disk" ? 1 : 0);
|
||||
datdata.RomCount += (rom.Type == ItemType.Rom ? 1 : 0);
|
||||
datdata.DiskCount += (rom.Type == ItemType.Disk ? 1 : 0);
|
||||
datdata.TotalSize += (rom.Nodump ? 0 : rom.HashData.Size);
|
||||
datdata.CRCCount += (String.IsNullOrEmpty(rom.HashData.CRC) ? 0 : 1);
|
||||
datdata.MD5Count += (String.IsNullOrEmpty(rom.HashData.MD5) ? 0 : 1);
|
||||
@@ -1864,7 +1864,7 @@ namespace SabreTools.Helper
|
||||
}
|
||||
|
||||
// Filter on rom type
|
||||
if (romtype != "" && rom.Type.ToLowerInvariant() != romtype.ToLowerInvariant())
|
||||
if (romtype != "" && rom.Type.ToString().ToLowerInvariant() != romtype.ToLowerInvariant())
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -421,7 +421,7 @@ namespace SabreTools.Helper
|
||||
switch (datdata.OutputFormat)
|
||||
{
|
||||
case OutputFormat.ClrMamePro:
|
||||
state += "\t" + rom.Type + " ( name \"" + rom.Name + "\"" +
|
||||
state += "\t" + rom.Type.ToString().ToLowerInvariant() + " ( name \"" + rom.Name + "\"" +
|
||||
(rom.HashData.Size != -1 ? " size " + rom.HashData.Size : "") +
|
||||
(!String.IsNullOrEmpty(rom.HashData.CRC) ? " crc " + rom.HashData.CRC.ToLowerInvariant() : "") +
|
||||
(!String.IsNullOrEmpty(rom.HashData.MD5) ? " md5 " + rom.HashData.MD5.ToLowerInvariant() : "") +
|
||||
@@ -453,7 +453,7 @@ namespace SabreTools.Helper
|
||||
else if (datdata.TSV == true)
|
||||
{
|
||||
string inline = "\"" + datdata.FileName + "\"\t\"" + datdata.Name + "\"\t\"" + datdata.Description + "\"\t\"" + rom.Machine + "\"\t\"" + rom.Machine + "\"\t\"" +
|
||||
rom.Type + "\"\t\"" + (rom.Type == "rom" ? rom.Name : "") + "\"\t\"" + (rom.Type == "disk" ? rom.Name : "") + "\"\t\"" + rom.HashData.Size + "\"\t\"" +
|
||||
rom.Type.ToString().ToLowerInvariant() + "\"\t\"" + (rom.Type == ItemType.Rom ? rom.Name : "") + "\"\t\"" + (rom.Type == ItemType.Disk ? rom.Name : "") + "\"\t\"" + rom.HashData.Size + "\"\t\"" +
|
||||
rom.HashData.CRC + "\"\t\"" + rom.HashData.MD5 + "\"\t\"" + rom.HashData.SHA1 + "\"\t" + (rom.Nodump ? "\"Nodump\"" : "\"\"");
|
||||
state += pre + inline + post + "\n";
|
||||
}
|
||||
@@ -461,7 +461,7 @@ namespace SabreTools.Helper
|
||||
else if (datdata.TSV == false)
|
||||
{
|
||||
string inline = "\"" + datdata.FileName + "\",\"" + datdata.Name + "\",\"" + datdata.Description + "\",\"" + rom.Machine + "\",\"" + rom.Machine + "\",\"" +
|
||||
rom.Type + "\",\"" + (rom.Type == "rom" ? rom.Name : "") + "\",\"" + (rom.Type == "disk" ? rom.Name : "") + "\",\"" + rom.HashData.Size + "\",\"" +
|
||||
rom.Type.ToString().ToLowerInvariant() + "\",\"" + (rom.Type == ItemType.Rom ? rom.Name : "") + "\",\"" + (rom.Type == ItemType.Disk ? rom.Name : "") + "\",\"" + rom.HashData.Size + "\",\"" +
|
||||
rom.HashData.CRC + "\",\"" + rom.HashData.MD5 + "\",\"" + rom.HashData.SHA1 + "\"," + (rom.Nodump ? "\"Nodump\"" : "\"\"");
|
||||
state += pre + inline + post + "\n";
|
||||
}
|
||||
@@ -510,7 +510,7 @@ namespace SabreTools.Helper
|
||||
}
|
||||
|
||||
state += prefix;
|
||||
state += "<file type=\"" + rom.Type + "\" name=\"" + HttpUtility.HtmlEncode(rom.Name) + "\"" +
|
||||
state += "<file type=\"" + rom.Type.ToString().ToLowerInvariant() + "\" name=\"" + HttpUtility.HtmlEncode(rom.Name) + "\"" +
|
||||
(rom.HashData.Size != -1 ? " size=\"" + rom.HashData.Size + "\"" : "") +
|
||||
(!String.IsNullOrEmpty(rom.HashData.CRC) ? " crc=\"" + rom.HashData.CRC.ToLowerInvariant() + "\"" : "") +
|
||||
(!String.IsNullOrEmpty(rom.HashData.MD5) ? " md5=\"" + rom.HashData.MD5.ToLowerInvariant() + "\"" : "") +
|
||||
@@ -523,7 +523,7 @@ namespace SabreTools.Helper
|
||||
"/>\n");
|
||||
break;
|
||||
case OutputFormat.Xml:
|
||||
state += "\t\t<" + rom.Type + " name=\"" + HttpUtility.HtmlEncode(rom.Name) + "\"" +
|
||||
state += "\t\t<" + rom.Type.ToString().ToLowerInvariant() + " name=\"" + HttpUtility.HtmlEncode(rom.Name) + "\"" +
|
||||
(rom.HashData.Size != -1 ? " size=\"" + rom.HashData.Size + "\"" : "") +
|
||||
(!String.IsNullOrEmpty(rom.HashData.CRC) ? " crc=\"" + rom.HashData.CRC.ToLowerInvariant() + "\"" : "") +
|
||||
(!String.IsNullOrEmpty(rom.HashData.MD5) ? " md5=\"" + rom.HashData.MD5.ToLowerInvariant() + "\"" : "") +
|
||||
|
||||
@@ -29,7 +29,7 @@ namespace SabreTools.Helper
|
||||
Rom rom = new Rom
|
||||
{
|
||||
Name = Path.GetFileName(input),
|
||||
Type = "rom",
|
||||
Type = ItemType.Rom,
|
||||
HashData = new HashData
|
||||
{
|
||||
Size = (new FileInfo(input)).Length,
|
||||
@@ -249,11 +249,11 @@ namespace SabreTools.Helper
|
||||
return dupefound;
|
||||
}
|
||||
|
||||
if (rom.Type == "rom" && lastrom.Type == "rom")
|
||||
if (rom.Type == ItemType.Rom && lastrom.Type == ItemType.Rom)
|
||||
{
|
||||
dupefound = rom.HashData.Equals(lastrom.HashData, false);
|
||||
}
|
||||
else if (rom.Type == "disk" && lastrom.Type == "disk")
|
||||
else if (rom.Type == ItemType.Disk && lastrom.Type == ItemType.Disk)
|
||||
{
|
||||
dupefound = rom.HashData.Equals(lastrom.HashData, true);
|
||||
}
|
||||
|
||||
@@ -120,8 +120,8 @@ Please check the log folder if the stats scrolled offscreen");
|
||||
{
|
||||
foreach (Rom rom in roms)
|
||||
{
|
||||
datdata.RomCount += (rom.Type == "rom" ? 1 : 0);
|
||||
datdata.DiskCount += (rom.Type == "disk" ? 1 : 0);
|
||||
datdata.RomCount += (rom.Type == ItemType.Rom ? 1 : 0);
|
||||
datdata.DiskCount += (rom.Type == ItemType.Disk ? 1 : 0);
|
||||
datdata.TotalSize += (rom.Nodump ? 0 : rom.HashData.Size);
|
||||
datdata.CRCCount += (String.IsNullOrEmpty(rom.HashData.CRC) ? 0 : 1);
|
||||
datdata.MD5Count += (String.IsNullOrEmpty(rom.HashData.MD5) ? 0 : 1);
|
||||
|
||||
@@ -267,7 +267,7 @@ namespace SabreTools
|
||||
// If we're in a mode that doesn't allow for actual empty folders, add the blank info
|
||||
if (_datdata.OutputFormat != OutputFormat.SabreDat && _datdata.OutputFormat != OutputFormat.MissFile)
|
||||
{
|
||||
rom.Type = "rom";
|
||||
rom.Type = ItemType.Rom;
|
||||
rom.Name = "-";
|
||||
rom.HashData.Size = Constants.SizeZero;
|
||||
rom.HashData.CRC = Constants.CRCZero;
|
||||
|
||||
Reference in New Issue
Block a user