using System; namespace SabreTools.DatFiles { /// /// DAT output formats /// [Flags] public enum DatFormat { #region XML Formats /// /// Logiqx XML (using machine) /// Logiqx = 1 << 0, /// /// Logiqx XML (using game) /// LogiqxDeprecated = 1 << 1, /// /// MAME Softare List XML /// SoftwareList = 1 << 2, /// /// MAME Listxml output /// Listxml = 1 << 3, /// /// OfflineList XML /// OfflineList = 1 << 4, /// /// SabreDAT XML /// SabreXML = 1 << 5, /// /// openMSX Software List XML /// OpenMSX = 1 << 6, #endregion #region Propietary Formats /// /// ClrMamePro custom /// ClrMamePro = 1 << 7, /// /// RomCenter INI-based /// RomCenter = 1 << 8, /// /// DOSCenter custom /// DOSCenter = 1 << 9, /// /// AttractMode custom /// AttractMode = 1 << 10, #endregion #region Standardized Text Formats /// /// ClrMamePro missfile /// MissFile = 1 << 11, /// /// Comma-Separated Values (standardized) /// CSV = 1 << 12, /// /// Semicolon-Separated Values (standardized) /// SSV = 1 << 13, /// /// Tab-Separated Values (standardized) /// TSV = 1 << 14, /// /// MAME Listrom output /// Listrom = 1 << 15, /// /// Everdrive Packs SMDB /// EverdriveSMDB = 1 << 16, /// /// SabreJSON /// SabreJSON = 1 << 17, #endregion #region SFV-similar Formats /// /// CRC32 hash list /// RedumpSFV = 1 << 18, /// /// MD5 hash list /// RedumpMD5 = 1 << 19, /// /// SHA-1 hash list /// RedumpSHA1 = 1 << 20, /// /// SHA-256 hash list /// RedumpSHA256 = 1 << 21, /// /// SHA-384 hash list /// RedumpSHA384 = 1 << 22, /// /// SHA-512 hash list /// RedumpSHA512 = 1 << 23, /// /// SpamSum hash list /// RedumpSpamSum = 1 << 24, #endregion // Specialty combinations ALL = Int32.MaxValue, } /// /// Determines the DAT deduplication type /// public enum DedupeType { None = 0, Full, // Force only deduping with certain types Game, CRC, MD5, SHA1, SHA256, SHA384, SHA512, } }