mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
[SabreTools] Add undocumented links to SimpleSort
This commit is contained in:
@@ -128,7 +128,7 @@ namespace SabreTools.Helper
|
|||||||
helptext.Add(" -osl, --output-sl Output in Softwarelist format");
|
helptext.Add(" -osl, --output-sl Output in Softwarelist format");
|
||||||
helptext.Add(" -otsv, --output-tsv Output in TSV format");
|
helptext.Add(" -otsv, --output-tsv Output in TSV format");
|
||||||
helptext.Add(" -ox, --output-xml Output in Logiqx XML format");
|
helptext.Add(" -ox, --output-xml Output in Logiqx XML format");
|
||||||
helptext.Add(" -gz, --gz-files Allow reading of GZIP files as archives");
|
helptext.Add(" -gzf, --gz-files Allow reading of GZIP files as archives");
|
||||||
helptext.Add(" -ro, --romba Read files from a Romba input");
|
helptext.Add(" -ro, --romba Read files from a Romba input");
|
||||||
helptext.Add(" -f=, --filename= Set the external name of the DAT");
|
helptext.Add(" -f=, --filename= Set the external name of the DAT");
|
||||||
helptext.Add(" -n=, --name= Set the internal name of the DAT");
|
helptext.Add(" -n=, --name= Set the internal name of the DAT");
|
||||||
|
|||||||
@@ -1006,7 +1006,7 @@ Below are originally from SabreTools / DATabase -
|
|||||||
-ox, -output-xml Output in Logiqx XML format (default)
|
-ox, -output-xml Output in Logiqx XML format (default)
|
||||||
Add outputting the created DAT to Logiqx XML format
|
Add outputting the created DAT to Logiqx XML format
|
||||||
|
|
||||||
-gz, -gz-files Allow reading of GZIP files as archives
|
-gzf, -gz-files Allow reading of GZIP files as archives
|
||||||
Since GZip files are not commonly used for file storage, this flag allows for
|
Since GZip files are not commonly used for file storage, this flag allows for
|
||||||
any GZip archives to have their contents hashed instead.
|
any GZip archives to have their contents hashed instead.
|
||||||
|
|
||||||
|
|||||||
@@ -24,27 +24,26 @@ namespace SabreTools
|
|||||||
/// <param name="gz">Integer representing the archive handling level for GZip</param>
|
/// <param name="gz">Integer representing the archive handling level for GZip</param>
|
||||||
/// <param name="rar">Integer representing the archive handling level for RAR</param>
|
/// <param name="rar">Integer representing the archive handling level for RAR</param>
|
||||||
/// <param name="zip">Integer representing the archive handling level for Zip</param>
|
/// <param name="zip">Integer representing the archive handling level for Zip</param>
|
||||||
/// <param name="logger">Logger object for file and console output</param>
|
|
||||||
public static bool InitConvertFolder(List<string> datfiles, List<string> inputs, string outDir, string tempDir, bool delete,
|
public static bool InitConvertFolder(List<string> datfiles, List<string> inputs, string outDir, string tempDir, bool delete,
|
||||||
bool tgz, bool romba, int sevenzip, int gz, int rar, int zip, Logger logger)
|
bool tgz, bool romba, int sevenzip, int gz, int rar, int zip)
|
||||||
{
|
{
|
||||||
// Get the archive scanning level
|
// Get the archive scanning level
|
||||||
ArchiveScanLevel asl = ArchiveTools.GetArchiveScanLevelFromNumbers(sevenzip, gz, rar, zip);
|
ArchiveScanLevel asl = ArchiveTools.GetArchiveScanLevelFromNumbers(sevenzip, gz, rar, zip);
|
||||||
|
|
||||||
DateTime start = DateTime.Now;
|
DateTime start = DateTime.Now;
|
||||||
logger.User("Populating internal DAT...");
|
_logger.User("Populating internal DAT...");
|
||||||
|
|
||||||
// Add all of the input DATs into one huge internal DAT
|
// Add all of the input DATs into one huge internal DAT
|
||||||
DatFile datdata = new DatFile();
|
DatFile datdata = new DatFile();
|
||||||
foreach (string datfile in datfiles)
|
foreach (string datfile in datfiles)
|
||||||
{
|
{
|
||||||
datdata.Parse(datfile, 99, 99, logger, keep: true, softlist: true);
|
datdata.Parse(datfile, 99, 99, _logger, keep: true, softlist: true);
|
||||||
}
|
}
|
||||||
logger.User("Populating complete in " + DateTime.Now.Subtract(start).ToString(@"hh\:mm\:ss\.fffff"));
|
_logger.User("Populating complete in " + DateTime.Now.Subtract(start).ToString(@"hh\:mm\:ss\.fffff"));
|
||||||
|
|
||||||
// Get all individual files from the inputs
|
// Get all individual files from the inputs
|
||||||
start = DateTime.Now;
|
start = DateTime.Now;
|
||||||
logger.User("Organizing input files...");
|
_logger.User("Organizing input files...");
|
||||||
List<string> newinputs = new List<string>();
|
List<string> newinputs = new List<string>();
|
||||||
foreach (string input in inputs)
|
foreach (string input in inputs)
|
||||||
{
|
{
|
||||||
@@ -60,10 +59,10 @@ namespace SabreTools
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
logger.User("Organizing complete in " + DateTime.Now.Subtract(start).ToString(@"hh\:mm\:ss\.fffff"));
|
_logger.User("Organizing complete in " + DateTime.Now.Subtract(start).ToString(@"hh\:mm\:ss\.fffff"));
|
||||||
|
|
||||||
SimpleSort ss = new SimpleSort(datdata, newinputs, outDir, tempDir, false, false,
|
SimpleSort ss = new SimpleSort(datdata, newinputs, outDir, tempDir, false, false,
|
||||||
false, false, delete, tgz, romba, asl, false, null, logger);
|
false, false, delete, tgz, romba, asl, false, null, _logger);
|
||||||
return ss.Convert();
|
return ss.Convert();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -310,26 +309,25 @@ namespace SabreTools
|
|||||||
/// <param name="zip">Integer representing the archive handling level for Zip</param>
|
/// <param name="zip">Integer representing the archive handling level for Zip</param>
|
||||||
/// <param name="updateDat">True if the updated DAT should be output, false otherwise</param>
|
/// <param name="updateDat">True if the updated DAT should be output, false otherwise</param>
|
||||||
/// <param name="headerToCheckAgainst">Populated string representing the name of the skipper to use, a blank string to use the first available checker, null otherwise</param>
|
/// <param name="headerToCheckAgainst">Populated string representing the name of the skipper to use, a blank string to use the first available checker, null otherwise</param>
|
||||||
/// <param name="logger">Logger object for file and console output</param>
|
|
||||||
private static void InitSortVerify(List<string> datfiles, List<string> inputs, string outDir, string tempDir, bool quickScan, bool date,
|
private static void InitSortVerify(List<string> datfiles, List<string> inputs, string outDir, string tempDir, bool quickScan, bool date,
|
||||||
bool toFolder, bool verify, bool delete, bool tgz, bool romba, int sevenzip, int gz, int rar, int zip, bool updateDat, string headerToCheckAgainst, Logger logger)
|
bool toFolder, bool verify, bool delete, bool tgz, bool romba, int sevenzip, int gz, int rar, int zip, bool updateDat, string headerToCheckAgainst)
|
||||||
{
|
{
|
||||||
// Get the archive scanning level
|
// Get the archive scanning level
|
||||||
ArchiveScanLevel asl = ArchiveTools.GetArchiveScanLevelFromNumbers(sevenzip, gz, rar, zip);
|
ArchiveScanLevel asl = ArchiveTools.GetArchiveScanLevelFromNumbers(sevenzip, gz, rar, zip);
|
||||||
|
|
||||||
DateTime start = DateTime.Now;
|
DateTime start = DateTime.Now;
|
||||||
logger.User("Populating internal DAT...");
|
_logger.User("Populating internal DAT...");
|
||||||
|
|
||||||
// Add all of the input DATs into one huge internal DAT
|
// Add all of the input DATs into one huge internal DAT
|
||||||
DatFile datdata = new DatFile();
|
DatFile datdata = new DatFile();
|
||||||
foreach (string datfile in datfiles)
|
foreach (string datfile in datfiles)
|
||||||
{
|
{
|
||||||
datdata.Parse(datfile, 99, 99, logger, keep: true, softlist: true);
|
datdata.Parse(datfile, 99, 99, _logger, keep: true, softlist: true);
|
||||||
}
|
}
|
||||||
logger.User("Populating complete in " + DateTime.Now.Subtract(start).ToString(@"hh\:mm\:ss\.fffff"));
|
_logger.User("Populating complete in " + DateTime.Now.Subtract(start).ToString(@"hh\:mm\:ss\.fffff"));
|
||||||
|
|
||||||
SimpleSort ss = new SimpleSort(datdata, inputs, outDir, tempDir, quickScan, date,
|
SimpleSort ss = new SimpleSort(datdata, inputs, outDir, tempDir, quickScan, date,
|
||||||
toFolder, verify, delete, tgz, romba, asl, updateDat, headerToCheckAgainst, logger);
|
toFolder, verify, delete, tgz, romba, asl, updateDat, headerToCheckAgainst, _logger);
|
||||||
ss.StartProcessing();
|
ss.StartProcessing();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -48,13 +48,16 @@ namespace SabreTools
|
|||||||
|
|
||||||
// Feature flags
|
// Feature flags
|
||||||
bool help = false,
|
bool help = false,
|
||||||
|
convert = false, // SimpleSort
|
||||||
datFromDir = false,
|
datFromDir = false,
|
||||||
headerer = false,
|
headerer = false,
|
||||||
|
sort = false, // SimpleSort
|
||||||
splitByExt = false,
|
splitByExt = false,
|
||||||
splitByHash = false,
|
splitByHash = false,
|
||||||
splitByType = false,
|
splitByType = false,
|
||||||
stats = false,
|
stats = false,
|
||||||
update = false;
|
update = false,
|
||||||
|
verify = false; // SimpleSort
|
||||||
|
|
||||||
// User flags
|
// User flags
|
||||||
bool addBlankFilesForEmptyFolder = false,
|
bool addBlankFilesForEmptyFolder = false,
|
||||||
@@ -63,6 +66,7 @@ namespace SabreTools
|
|||||||
copyFiles = false,
|
copyFiles = false,
|
||||||
datPrefix = false,
|
datPrefix = false,
|
||||||
dedup = false,
|
dedup = false,
|
||||||
|
delete = false, // SimpleSort
|
||||||
enableGzip = false,
|
enableGzip = false,
|
||||||
excludeOf = false,
|
excludeOf = false,
|
||||||
inplace = false,
|
inplace = false,
|
||||||
@@ -70,6 +74,7 @@ namespace SabreTools
|
|||||||
noMD5 = false,
|
noMD5 = false,
|
||||||
noSHA1 = false,
|
noSHA1 = false,
|
||||||
parseArchivesAsFiles = false,
|
parseArchivesAsFiles = false,
|
||||||
|
quickScan = false, // SimpleSort
|
||||||
quotes = false,
|
quotes = false,
|
||||||
remext = false,
|
remext = false,
|
||||||
removeDateFromAutomaticName = false,
|
removeDateFromAutomaticName = false,
|
||||||
@@ -80,15 +85,22 @@ namespace SabreTools
|
|||||||
single = false,
|
single = false,
|
||||||
softlist = false,
|
softlist = false,
|
||||||
superdat = false,
|
superdat = false,
|
||||||
|
tgz = false, // SimpleSort
|
||||||
|
toFolder = false, // SimpleSort
|
||||||
trim = false,
|
trim = false,
|
||||||
skip = false,
|
skip = false,
|
||||||
|
updateDat = false, // SimpleSort
|
||||||
usegame = true;
|
usegame = true;
|
||||||
DiffMode diffMode = 0x0;
|
DiffMode diffMode = 0x0;
|
||||||
OutputFormat outputFormat = 0x0;
|
OutputFormat outputFormat = 0x0;
|
||||||
StatOutputFormat statOutputFormat = StatOutputFormat.None;
|
StatOutputFormat statOutputFormat = StatOutputFormat.None;
|
||||||
|
|
||||||
// User inputs
|
// User inputs
|
||||||
int maxParallelism = 4;
|
int gz = 2, // SimpleSort
|
||||||
|
maxParallelism = 4,
|
||||||
|
rar = 2, // SimpleSort
|
||||||
|
sevenzip = 0, // SimpleSort
|
||||||
|
zip = 0; // SimpleSort
|
||||||
long sgt = -1,
|
long sgt = -1,
|
||||||
slt = -1,
|
slt = -1,
|
||||||
seq = -1;
|
seq = -1;
|
||||||
@@ -124,6 +136,7 @@ namespace SabreTools
|
|||||||
tempDir = "",
|
tempDir = "",
|
||||||
url = null,
|
url = null,
|
||||||
version = null;
|
version = null;
|
||||||
|
List<string> datfiles = new List<string>(); // SimpleSort
|
||||||
List<string> inputs = new List<string>();
|
List<string> inputs = new List<string>();
|
||||||
|
|
||||||
// Determine which switches are enabled (with values if necessary)
|
// Determine which switches are enabled (with values if necessary)
|
||||||
@@ -137,6 +150,10 @@ namespace SabreTools
|
|||||||
case "--help":
|
case "--help":
|
||||||
help = true;
|
help = true;
|
||||||
break;
|
break;
|
||||||
|
case "-cv":
|
||||||
|
case "--convert":
|
||||||
|
convert = true;
|
||||||
|
break;
|
||||||
case "-d":
|
case "-d":
|
||||||
case "--d2d":
|
case "--d2d":
|
||||||
case "--dfd":
|
case "--dfd":
|
||||||
@@ -154,6 +171,10 @@ namespace SabreTools
|
|||||||
case "--hash-split":
|
case "--hash-split":
|
||||||
splitByHash = true;
|
splitByHash = true;
|
||||||
break;
|
break;
|
||||||
|
case "-ss":
|
||||||
|
case "--sort":
|
||||||
|
sort = true;
|
||||||
|
break;
|
||||||
case "-st":
|
case "-st":
|
||||||
case "--stats":
|
case "--stats":
|
||||||
stats = true;
|
stats = true;
|
||||||
@@ -162,6 +183,10 @@ namespace SabreTools
|
|||||||
case "--type-split":
|
case "--type-split":
|
||||||
splitByType = true;
|
splitByType = true;
|
||||||
break;
|
break;
|
||||||
|
case "-ve":
|
||||||
|
case "--verify":
|
||||||
|
verify = true;
|
||||||
|
break;
|
||||||
|
|
||||||
// User flags
|
// User flags
|
||||||
case "-ab":
|
case "-ab":
|
||||||
@@ -200,6 +225,10 @@ namespace SabreTools
|
|||||||
case "--dedup":
|
case "--dedup":
|
||||||
dedup = true;
|
dedup = true;
|
||||||
break;
|
break;
|
||||||
|
case "-del":
|
||||||
|
case "--delete":
|
||||||
|
delete = true;
|
||||||
|
break;
|
||||||
case "-di":
|
case "-di":
|
||||||
case "--diff":
|
case "--diff":
|
||||||
diffMode |= DiffMode.All;
|
diffMode |= DiffMode.All;
|
||||||
@@ -216,6 +245,10 @@ namespace SabreTools
|
|||||||
case "--diff-nd":
|
case "--diff-nd":
|
||||||
diffMode |= DiffMode.NoDupes;
|
diffMode |= DiffMode.NoDupes;
|
||||||
break;
|
break;
|
||||||
|
case "-do":
|
||||||
|
case "--directory":
|
||||||
|
toFolder = true;
|
||||||
|
break;
|
||||||
case "-f":
|
case "-f":
|
||||||
case "--files":
|
case "--files":
|
||||||
parseArchivesAsFiles = true;
|
parseArchivesAsFiles = true;
|
||||||
@@ -224,7 +257,7 @@ namespace SabreTools
|
|||||||
case "--game-prefix":
|
case "--game-prefix":
|
||||||
datPrefix = true;
|
datPrefix = true;
|
||||||
break;
|
break;
|
||||||
case "-gz":
|
case "-gzf":
|
||||||
case "--gz-files":
|
case "--gz-files":
|
||||||
enableGzip = true;
|
enableGzip = true;
|
||||||
break;
|
break;
|
||||||
@@ -312,6 +345,10 @@ namespace SabreTools
|
|||||||
case "--quotes":
|
case "--quotes":
|
||||||
quotes = true;
|
quotes = true;
|
||||||
break;
|
break;
|
||||||
|
case "-qs":
|
||||||
|
case "--quick":
|
||||||
|
quickScan = true;
|
||||||
|
break;
|
||||||
case "-r":
|
case "-r":
|
||||||
case "--roms":
|
case "--roms":
|
||||||
usegame = false;
|
usegame = false;
|
||||||
@@ -348,6 +385,10 @@ namespace SabreTools
|
|||||||
case "--softlist":
|
case "--softlist":
|
||||||
softlist = true;
|
softlist = true;
|
||||||
break;
|
break;
|
||||||
|
case "-tgz":
|
||||||
|
case "--tgz":
|
||||||
|
tgz = true;
|
||||||
|
break;
|
||||||
case "-trim":
|
case "-trim":
|
||||||
case "--trim":
|
case "--trim":
|
||||||
trim = true;
|
trim = true;
|
||||||
@@ -360,12 +401,24 @@ namespace SabreTools
|
|||||||
case "--update":
|
case "--update":
|
||||||
update = true;
|
update = true;
|
||||||
break;
|
break;
|
||||||
|
case "-upd":
|
||||||
|
case "--updated-dat":
|
||||||
|
updateDat = true;
|
||||||
|
break;
|
||||||
case "-xof":
|
case "-xof":
|
||||||
case "--exclude-of":
|
case "--exclude-of":
|
||||||
excludeOf = true;
|
excludeOf = true;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
// User inputs
|
// User inputs
|
||||||
|
case "-7z":
|
||||||
|
case "--7z":
|
||||||
|
i++;
|
||||||
|
if (!Int32.TryParse(args[i], out sevenzip))
|
||||||
|
{
|
||||||
|
sevenzip = 0;
|
||||||
|
}
|
||||||
|
break;
|
||||||
case "-ae":
|
case "-ae":
|
||||||
case "--add-ext":
|
case "--add-ext":
|
||||||
i++;
|
i++;
|
||||||
@@ -396,6 +449,19 @@ namespace SabreTools
|
|||||||
i++;
|
i++;
|
||||||
date = args[i];
|
date = args[i];
|
||||||
break;
|
break;
|
||||||
|
case "-dat":
|
||||||
|
case "--dat":
|
||||||
|
i++;
|
||||||
|
if (!File.Exists(args[i]))
|
||||||
|
{
|
||||||
|
_logger.Error("DAT must be a valid file: " + args[i]);
|
||||||
|
Console.WriteLine();
|
||||||
|
Build.Help();
|
||||||
|
_logger.Close();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
datfiles.Add(args[i]);
|
||||||
|
break;
|
||||||
case "-de":
|
case "-de":
|
||||||
case "--desc":
|
case "--desc":
|
||||||
i++;
|
i++;
|
||||||
@@ -441,6 +507,14 @@ namespace SabreTools
|
|||||||
i++;
|
i++;
|
||||||
gamename = args[i];
|
gamename = args[i];
|
||||||
break;
|
break;
|
||||||
|
case "-gz":
|
||||||
|
case "--gz":
|
||||||
|
i++;
|
||||||
|
if (!Int32.TryParse(args[i], out gz))
|
||||||
|
{
|
||||||
|
gz = 2;
|
||||||
|
}
|
||||||
|
break;
|
||||||
case "-he":
|
case "-he":
|
||||||
case "--header":
|
case "--header":
|
||||||
i++;
|
i++;
|
||||||
@@ -504,6 +578,14 @@ namespace SabreTools
|
|||||||
i++;
|
i++;
|
||||||
prefix = args[i];
|
prefix = args[i];
|
||||||
break;
|
break;
|
||||||
|
case "-rar":
|
||||||
|
case "--rar":
|
||||||
|
i++;
|
||||||
|
if (!Int32.TryParse(args[i], out rar))
|
||||||
|
{
|
||||||
|
rar = 2;
|
||||||
|
}
|
||||||
|
break;
|
||||||
case "-rd":
|
case "-rd":
|
||||||
case "--root-dir":
|
case "--root-dir":
|
||||||
i++;
|
i++;
|
||||||
@@ -565,6 +647,14 @@ namespace SabreTools
|
|||||||
i++;
|
i++;
|
||||||
version = args[i];
|
version = args[i];
|
||||||
break;
|
break;
|
||||||
|
case "-zip":
|
||||||
|
case "--zip":
|
||||||
|
i++;
|
||||||
|
if (!Int32.TryParse(args[i], out zip))
|
||||||
|
{
|
||||||
|
zip = 0;
|
||||||
|
}
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
string temparg = args[i].Replace("\"", "").Replace("file://", "");
|
string temparg = args[i].Replace("\"", "").Replace("file://", "");
|
||||||
|
|
||||||
@@ -579,6 +669,13 @@ namespace SabreTools
|
|||||||
|
|
||||||
switch (split[0])
|
switch (split[0])
|
||||||
{
|
{
|
||||||
|
case "-7z":
|
||||||
|
case "--7z":
|
||||||
|
if (!Int32.TryParse(split[1], out sevenzip))
|
||||||
|
{
|
||||||
|
sevenzip = 0;
|
||||||
|
}
|
||||||
|
break;
|
||||||
case "-ae":
|
case "-ae":
|
||||||
case "--add-ext":
|
case "--add-ext":
|
||||||
addext = split[1];
|
addext = split[1];
|
||||||
@@ -603,6 +700,18 @@ namespace SabreTools
|
|||||||
case "--date":
|
case "--date":
|
||||||
date = split[1];
|
date = split[1];
|
||||||
break;
|
break;
|
||||||
|
case "-dat":
|
||||||
|
case "--dat":
|
||||||
|
if (!File.Exists(split[1]))
|
||||||
|
{
|
||||||
|
_logger.Error("DAT must be a valid file: " + split[1]);
|
||||||
|
Console.WriteLine();
|
||||||
|
Build.Help();
|
||||||
|
_logger.Close();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
datfiles.Add(split[1]);
|
||||||
|
break;
|
||||||
case "-de":
|
case "-de":
|
||||||
case "--desc":
|
case "--desc":
|
||||||
description = split[1];
|
description = split[1];
|
||||||
@@ -639,6 +748,13 @@ namespace SabreTools
|
|||||||
case "--game-name":
|
case "--game-name":
|
||||||
gamename = split[1];
|
gamename = split[1];
|
||||||
break;
|
break;
|
||||||
|
case "-gz":
|
||||||
|
case "--gz":
|
||||||
|
if (!Int32.TryParse(split[1], out gz))
|
||||||
|
{
|
||||||
|
gz = 2;
|
||||||
|
}
|
||||||
|
break;
|
||||||
case "-h":
|
case "-h":
|
||||||
case "--header":
|
case "--header":
|
||||||
header = split[1];
|
header = split[1];
|
||||||
@@ -696,6 +812,13 @@ namespace SabreTools
|
|||||||
case "--root":
|
case "--root":
|
||||||
rootdir = split[1];
|
rootdir = split[1];
|
||||||
break;
|
break;
|
||||||
|
case "-rar":
|
||||||
|
case "--rar":
|
||||||
|
if (!Int32.TryParse(split[1], out rar))
|
||||||
|
{
|
||||||
|
rar = 2;
|
||||||
|
}
|
||||||
|
break;
|
||||||
case "-rd":
|
case "-rd":
|
||||||
case "--root-dir":
|
case "--root-dir":
|
||||||
root = split[1];
|
root = split[1];
|
||||||
@@ -741,6 +864,13 @@ namespace SabreTools
|
|||||||
case "--version":
|
case "--version":
|
||||||
version = split[1];
|
version = split[1];
|
||||||
break;
|
break;
|
||||||
|
case "-zip":
|
||||||
|
case "--zip":
|
||||||
|
if (!Int32.TryParse(split[1], out zip))
|
||||||
|
{
|
||||||
|
zip = 0;
|
||||||
|
}
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
if (File.Exists(temparg) || Directory.Exists(temparg))
|
if (File.Exists(temparg) || Directory.Exists(temparg))
|
||||||
{
|
{
|
||||||
@@ -806,8 +936,15 @@ namespace SabreTools
|
|||||||
|
|
||||||
// Now take care of each mode in succesion
|
// Now take care of each mode in succesion
|
||||||
|
|
||||||
|
// Convert a folder to TGZ or TorrentZip
|
||||||
|
if (convert)
|
||||||
|
{
|
||||||
|
InitConvertFolder(datfiles, inputs, outDir, tempDir, delete, tgz, romba, sevenzip,
|
||||||
|
gz, rar, zip);
|
||||||
|
}
|
||||||
|
|
||||||
// Create a DAT from a directory or set of directories
|
// Create a DAT from a directory or set of directories
|
||||||
if (datFromDir)
|
else if (datFromDir)
|
||||||
{
|
{
|
||||||
InitDatFromDir(inputs,
|
InitDatFromDir(inputs,
|
||||||
filename,
|
filename,
|
||||||
@@ -841,6 +978,13 @@ namespace SabreTools
|
|||||||
InitHeaderer(inputs, restore, outDir);
|
InitHeaderer(inputs, restore, outDir);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// If we're using the sorter
|
||||||
|
else if (sort)
|
||||||
|
{
|
||||||
|
InitSortVerify(datfiles, inputs, outDir, tempDir, quickScan, addFileDates, toFolder,
|
||||||
|
verify, delete, tgz, romba, sevenzip, gz, rar, zip, updateDat, header);
|
||||||
|
}
|
||||||
|
|
||||||
// Split a DAT by extension
|
// Split a DAT by extension
|
||||||
else if (splitByExt)
|
else if (splitByExt)
|
||||||
{
|
{
|
||||||
@@ -853,18 +997,18 @@ namespace SabreTools
|
|||||||
InitHashSplit(inputs, outDir);
|
InitHashSplit(inputs, outDir);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get statistics on input files
|
|
||||||
else if (stats)
|
|
||||||
{
|
|
||||||
InitStats(inputs, filename, single, showBaddumpColumn, showNodumpColumn, statOutputFormat);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Split a DAT by item type
|
// Split a DAT by item type
|
||||||
else if (splitByType)
|
else if (splitByType)
|
||||||
{
|
{
|
||||||
InitTypeSplit(inputs, outDir);
|
InitTypeSplit(inputs, outDir);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Get statistics on input files
|
||||||
|
else if (stats)
|
||||||
|
{
|
||||||
|
InitStats(inputs, filename, single, showBaddumpColumn, showNodumpColumn, statOutputFormat);
|
||||||
|
}
|
||||||
|
|
||||||
// Convert, update, merge, diff, and filter a DAT or folder of DATs
|
// Convert, update, merge, diff, and filter a DAT or folder of DATs
|
||||||
else if (update)
|
else if (update)
|
||||||
{
|
{
|
||||||
@@ -874,6 +1018,13 @@ namespace SabreTools
|
|||||||
romtype, sgt, slt, seq, crc, md5, sha1, status, trim, single, root, outDir, cleanGameNames, softlist, dedup, maxParallelism);
|
romtype, sgt, slt, seq, crc, md5, sha1, status, trim, single, root, outDir, cleanGameNames, softlist, dedup, maxParallelism);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// If we're using the verifier
|
||||||
|
else if (verify)
|
||||||
|
{
|
||||||
|
InitSortVerify(datfiles, inputs, outDir, tempDir, quickScan, addFileDates, toFolder,
|
||||||
|
verify, delete, tgz, romba, sevenzip, gz, rar, zip, updateDat, header);
|
||||||
|
}
|
||||||
|
|
||||||
// If nothing is set, show the help
|
// If nothing is set, show the help
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -42,18 +42,18 @@ namespace SabreTools
|
|||||||
|
|
||||||
// Feature flags
|
// Feature flags
|
||||||
bool help = false,
|
bool help = false,
|
||||||
simpleSort = true;
|
convert = false,
|
||||||
|
sort = true,
|
||||||
|
verify = false;
|
||||||
|
|
||||||
// User flags
|
// User flags
|
||||||
bool convert = false,
|
bool date = false,
|
||||||
date = false,
|
|
||||||
delete = false,
|
delete = false,
|
||||||
quickScan = false,
|
quickScan = false,
|
||||||
romba = false,
|
romba = false,
|
||||||
toFolder = false,
|
toFolder = false,
|
||||||
tgz = false,
|
tgz = false,
|
||||||
updateDat = false,
|
updateDat = false;
|
||||||
verify = false;
|
|
||||||
|
|
||||||
// User inputs
|
// User inputs
|
||||||
int sevenzip = 0,
|
int sevenzip = 0,
|
||||||
@@ -63,8 +63,8 @@ namespace SabreTools
|
|||||||
string header = "",
|
string header = "",
|
||||||
outDir = "",
|
outDir = "",
|
||||||
tempDir = "";
|
tempDir = "";
|
||||||
List<string> inputs = new List<string>();
|
|
||||||
List<string> datfiles = new List<string>();
|
List<string> datfiles = new List<string>();
|
||||||
|
List<string> inputs = new List<string>();
|
||||||
|
|
||||||
// Determine which switches are enabled (with values if necessary)
|
// Determine which switches are enabled (with values if necessary)
|
||||||
for (int i = 0; i < args.Length; i++)
|
for (int i = 0; i < args.Length; i++)
|
||||||
@@ -77,9 +77,17 @@ namespace SabreTools
|
|||||||
case "--help":
|
case "--help":
|
||||||
help = true;
|
help = true;
|
||||||
break;
|
break;
|
||||||
|
case "-c":
|
||||||
|
case "--convert":
|
||||||
|
convert = true;
|
||||||
|
break;
|
||||||
case "-ss":
|
case "-ss":
|
||||||
case "--sort":
|
case "--sort":
|
||||||
simpleSort = true;
|
sort = true;
|
||||||
|
break;
|
||||||
|
case "-v":
|
||||||
|
case "--verify":
|
||||||
|
verify = true;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
// User flags
|
// User flags
|
||||||
@@ -87,10 +95,6 @@ namespace SabreTools
|
|||||||
case "--add-date":
|
case "--add-date":
|
||||||
date = true;
|
date = true;
|
||||||
break;
|
break;
|
||||||
case "-c":
|
|
||||||
case "--convert":
|
|
||||||
convert = true;
|
|
||||||
break;
|
|
||||||
case "-d":
|
case "-d":
|
||||||
case "--delete":
|
case "--delete":
|
||||||
delete = true;
|
delete = true;
|
||||||
@@ -115,10 +119,6 @@ namespace SabreTools
|
|||||||
case "--updated-dat":
|
case "--updated-dat":
|
||||||
updateDat = true;
|
updateDat = true;
|
||||||
break;
|
break;
|
||||||
case "-v":
|
|
||||||
case "--verify":
|
|
||||||
verify = true;
|
|
||||||
break;
|
|
||||||
|
|
||||||
// User inputs
|
// User inputs
|
||||||
case "-7z":
|
case "-7z":
|
||||||
@@ -292,7 +292,7 @@ namespace SabreTools
|
|||||||
}
|
}
|
||||||
|
|
||||||
// If a switch that requires a filename is set and no file is, show the help screen
|
// If a switch that requires a filename is set and no file is, show the help screen
|
||||||
if (inputs.Count == 0 && ((simpleSort && !verify) || convert))
|
if (inputs.Count == 0 && ((sort && !verify) || convert))
|
||||||
{
|
{
|
||||||
logger.Error("This feature requires at least one input");
|
logger.Error("This feature requires at least one input");
|
||||||
Build.Help();
|
Build.Help();
|
||||||
@@ -308,7 +308,7 @@ namespace SabreTools
|
|||||||
}
|
}
|
||||||
|
|
||||||
// If we are doing a simple sort
|
// If we are doing a simple sort
|
||||||
else if (simpleSort)
|
else if (sort)
|
||||||
{
|
{
|
||||||
if (datfiles.Count > 0)
|
if (datfiles.Count > 0)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user