[ALL] All work items as TODOs

This commit is contained in:
Matt Nadareski
2017-02-27 23:00:57 -08:00
parent d9711ab82c
commit 04f2a5f273
8 changed files with 38 additions and 6 deletions

View File

@@ -40,6 +40,9 @@ namespace SabreTools.Helper.Dats
/// <param name="root">String representing root directory to compare against for length calculation</param> /// <param name="root">String representing root directory to compare against for length calculation</param>
/// <param name="maxDegreeOfParallelism">Integer representing the maximum amount of parallelization to be used</param> /// <param name="maxDegreeOfParallelism">Integer representing the maximum amount of parallelization to be used</param>
/// <param name="logger">Logging object for console and file output</param> /// <param name="logger">Logging object for console and file output</param>
/// <remarks>
/// TODO: Folder-wise output for update (similar to level-split)
/// </remarks>
public void DetermineUpdateType(List<string> inputPaths, string outDir, bool merge, DiffMode diff, bool inplace, bool skip, public void DetermineUpdateType(List<string> inputPaths, string outDir, bool merge, DiffMode diff, bool inplace, bool skip,
bool bare, bool clean, bool descAsName, Filter filter, SplitType splitType, bool trim, bool single, string root, bool bare, bool clean, bool descAsName, Filter filter, SplitType splitType, bool trim, bool single, string root,
int maxDegreeOfParallelism, Logger logger) int maxDegreeOfParallelism, Logger logger)
@@ -102,7 +105,8 @@ namespace SabreTools.Helper.Dats
DateTime start = DateTime.Now; DateTime start = DateTime.Now;
logger.User("Processing individual DATs"); logger.User("Processing individual DATs");
/// BEGIN // TODO: Can parsing headers be separated from parsing content?
// TODO: Can all DATs be parsed into the same structure in one loop?
Parallel.For(0, Parallel.For(0,
inputs.Count, inputs.Count,
new ParallelOptions { MaxDegreeOfParallelism = maxDegreeOfParallelism }, new ParallelOptions { MaxDegreeOfParallelism = maxDegreeOfParallelism },
@@ -132,7 +136,6 @@ namespace SabreTools.Helper.Dats
} }
datHeaders[i].Delete(); datHeaders[i].Delete();
} }
/// END
logger.User("Processing and populating complete in " + DateTime.Now.Subtract(start).ToString(@"hh\:mm\:ss\.fffff")); logger.User("Processing and populating complete in " + DateTime.Now.Subtract(start).ToString(@"hh\:mm\:ss\.fffff"));

View File

@@ -1276,6 +1276,10 @@ namespace SabreTools.Helper.Dats
/// <param name="keep">True if full pathnames are to be kept, false otherwise (default)</param> /// <param name="keep">True if full pathnames are to be kept, false otherwise (default)</param>
/// <param name="clean">True if game names are sanitized, false otherwise (default)</param> /// <param name="clean">True if game names are sanitized, false otherwise (default)</param>
/// <param name="descAsName">True if SL XML names should be kept, false otherwise (default)</param> /// <param name="descAsName">True if SL XML names should be kept, false otherwise (default)</param>
/// <remrks>
/// TODO: Software Lists - sharedfeat tag (read-in, write-out)
/// TODO: If updating softlists, is it possible to update cloneof/romof/sampleof tags as well?
/// </remrks>
private void ParseGenericXML( private void ParseGenericXML(
// Standard Dat parsing // Standard Dat parsing
string filename, string filename,

View File

@@ -16,7 +16,9 @@ using SearchOption = System.IO.SearchOption;
namespace SabreTools.Helper.Dats namespace SabreTools.Helper.Dats
{ {
// TODO: All instances of Hash.DeepHashes should be made into 0x0 eventually /*
* TODO: Delete flags - Remove files from archive if only some are used (rebuild to TZip)
*/
public partial class DatFile public partial class DatFile
{ {
#region Rebuilding and Verifying [MODULAR DONE, FOR NOW] #region Rebuilding and Verifying [MODULAR DONE, FOR NOW]
@@ -481,6 +483,9 @@ namespace SabreTools.Helper.Dats
/// <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> /// <param name="logger">Logger object for file and console output</param>
/// <returns>True if the file was able to be rebuilt, false otherwise</returns> /// <returns>True if the file was able to be rebuilt, false otherwise</returns>
/// <remarks>
/// TODO: If going from a TGZ file to a TGZ file, don't extract, just copy
/// </remarks>
private bool RebuildIndividualFile(Rom rom, string file, string outDir, string tempDir, bool date, private bool RebuildIndividualFile(Rom rom, string file, string outDir, string tempDir, bool date,
bool inverse, OutputFormat outputFormat, bool romba, bool updateDat, bool isZip, string headerToCheckAgainst, Logger logger) bool inverse, OutputFormat outputFormat, bool romba, bool updateDat, bool isZip, string headerToCheckAgainst, Logger logger)
{ {

View File

@@ -19,6 +19,15 @@ using StreamWriter = System.IO.StreamWriter;
namespace SabreTools.Helper.Dats namespace SabreTools.Helper.Dats
{ {
/*
* TODO: Make output standard width (HTML, without making the entire thing a table)
* TODO: Multithreading? Either StringBuilder or locking
* TODO: Deduped size?
* TODO: Sort by size?
* TODO: Fix alignment for stats output (text)
* TODO: Add compressed size (10-50% of total file size based on averages)
* TODO: Add "gain" based on compressed compared to total size
*/
public partial class DatFile public partial class DatFile
{ {
#region Instance Methods #region Instance Methods

View File

@@ -111,6 +111,9 @@ namespace SabreTools.Helper.Dats
// Bucket roms by game name and optionally dedupe // Bucket roms by game name and optionally dedupe
BucketByGame(MergeRoms, norename, logger); BucketByGame(MergeRoms, norename, logger);
// Filter the DAT by 1G1R rules, if we're supposed to
// TODO: Create 1G1R logic before write
// If we are removing hashes, do that now // If we are removing hashes, do that now
if (_stripHash != 0x0) if (_stripHash != 0x0)
{ {

View File

@@ -7,9 +7,9 @@ namespace SabreTools.Helper
/// Log either to file or to the console /// Log either to file or to the console
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Things to do: /// TODO: Allow for "triggerable" logging done on an interval (async)
/// - Allow for "triggerable" logging done on an interval (async) /// TODO: Log filtering? (#if debug?)
/// - Log filtering? (#if debug?) /// TODO: Reduce user-verbosity in later builds
/// </remarks> /// </remarks>
public class Logger public class Logger
{ {

View File

@@ -34,6 +34,9 @@ using SharpCompress.Writers;
namespace SabreTools.Helper.Tools namespace SabreTools.Helper.Tools
{ {
/*
* TODO: Full archive support for: 7-Zip, RAR, XZ, LRZip
*/
public static class ArchiveTools public static class ArchiveTools
{ {
private const int _bufferSize = 4096 * 128; private const int _bufferSize = 4096 * 128;

View File

@@ -18,6 +18,11 @@ namespace SabreTools
/// <summary> /// <summary>
/// Entry class for the DATabase application /// Entry class for the DATabase application
/// </summary> /// </summary>
/// <remarks>
/// TODO: Wrap Parallel.ForEach loops in try/catch
/// TODO: Find more foreach loops that are good candidates for Parallel.ForEach
/// TODO: Look into async read/write to make things quicker. Ask edc for help?
/// </remarks>
public partial class SabreTools public partial class SabreTools
{ {
// Private required variables // Private required variables