using System; namespace SabreTools.Metadata.DatItems { /// /// Determines which type of duplicate a file is /// [Flags] public enum DupeType { // Type of match Hash = 1 << 0, All = 1 << 1, // Location of match Internal = 1 << 2, External = 1 << 3, } /// /// A subset of fields that can be used as keys /// public enum ItemKey { NULL = 0, Machine, CRC16, CRC, CRC64, MD2, MD4, MD5, RIPEMD128, RIPEMD160, SHA1, SHA256, SHA384, SHA512, SpamSum, } /// /// Determine what type of file an item is /// public enum ItemType { /// /// This is a fake flag that is used for filter only /// NULL = 0, // "Actionable" item types /// "rom" Rom, /// "disk" Disk, /// "file" File, /// "media" Media, // "Auxiliary" item types /// "adjuster" Adjuster, /// "analog" Analog, /// "archive" Archive, /// "biosset" BiosSet, /// "chip" Chip, /// "condition" Condition, /// "configuration" Configuration, /// "conflocation" ConfLocation, /// "confsetting" ConfSetting, /// "control" Control, /// "dataarea" DataArea, /// "device" Device, /// "device_ref", "deviceref" DeviceRef, /// "diplocation" DipLocation, /// "dipswitch" DipSwitch, /// "dipvalue" DipValue, /// "diskarea" DiskArea, /// "display" Display, /// "driver" Driver, /// "extension" Extension, /// "feature" Feature, /// "info" Info, /// "input" Input, /// "instance" Instance, /// "original" Original, /// "part" Part, /// "part_feature", "partfeature" PartFeature, /// "port" Port, /// "ramoption", "ram_option" RamOption, /// "release" Release, /// "release_details", "releasedetails" ReleaseDetails, /// "sample" Sample, /// "serials" Serials, /// "sharedfeat", "shared_feat", "sharedfeature", "shared_feature" SharedFeat, /// "slot" Slot, /// "slotoption", "slot_option" SlotOption, /// "softwarelist", "software_list" SoftwareList, /// "sound" Sound, /// "source_details", "sourcedetails" SourceDetails, /// "blank" Blank = 99, // This is not a real type, only used internally } /// /// Determine what type of machine it is /// [Flags] public enum MachineType { /// "none" None = 0, /// "bios" Bios = 1 << 0, /// "device", "dev" Device = 1 << 1, /// "mechanical", "mech" Mechanical = 1 << 2, } }