// /*************************************************************************** // The Disc Image Chef // ---------------------------------------------------------------------------- // // Filename : Enums.cs // Author(s) : Natalia Portillo // // Component : Disk image plugins. // // --[ Description ] ---------------------------------------------------------- // // Contains enumerations for DiscImageChef format disk images. // // --[ License ] -------------------------------------------------------------- // // This library is free software; you can redistribute it and/or modify // it under the terms of the GNU Lesser General Public License as // published by the Free Software Foundation; either version 2.1 of the // License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, but // WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU // Lesser General Public License for more details. // // You should have received a copy of the GNU Lesser General Public // License along with this library; if not, see . // // ---------------------------------------------------------------------------- // Copyright © 2011-2018 Natalia Portillo // ****************************************************************************/ namespace DiscImageChef.DiscImages { public partial class DiscImageChef { /// List of known compression types enum CompressionType : ushort { /// Not compressed None = 0, /// LZMA Lzma = 1, /// FLAC Flac = 2, /// LZMA in Claunia Subchannel Transform processed data LzmaClauniaSubchannelTransform = 3 } /// List of known data types enum DataType : ushort { /// No data NoData = 0, /// User data UserData = 1, /// CompactDisc partial Table of Contents CompactDiscPartialToc = 2, /// CompactDisc session information CompactDiscSessionInfo = 3, /// CompactDisc Table of Contents CompactDiscToc = 4, /// CompactDisc Power Management Area CompactDiscPma = 5, /// CompactDisc Absolute Time In Pregroove CompactDiscAtip = 6, /// CompactDisc Lead-in's CD-Text CompactDiscLeadInCdText = 7, /// DVD Physical Format Information DvdPfi = 8, /// DVD Lead-in's Copyright Management Information DvdLeadInCmi = 9, /// DVD Disc Key DvdDiscKey = 10, /// DVD Burst Cutting Area DvdBca = 11, /// DVD DMI DvdDmi = 12, /// DVD Media Identifier DvdMediaIdentifier = 13, /// DVD Media Key Block DvdMediaKeyBlock = 14, /// DVD-RAM Disc Definition Structure DvdRamDds = 15, /// DVD-RAM Medium Status DvdRamMediumStatus = 16, /// DVD-RAM Spare Area Information DvdRamSpareArea = 17, /// DVD-R RMD DvdRRmd = 18, /// DVD-R Pre-recorded Information DvdRPrerecordedInfo = 19, /// DVD-R Media Identifier DvdRMediaIdentifier = 20, /// DVD-R Physical Format Information DvdRPfi = 21, /// DVD ADress In Pregroove DvdAdip = 22, /// HD DVD Copy Protection Information HdDvdCpi = 23, /// HD DVD Medium Status HdDvdMediumStatus = 24, /// DVD DL Layer Capacity DvdDlLayerCapacity = 25, /// DVD DL Middle Zone Address DvdDlMiddleZoneAddress = 26, /// DVD DL Jump Interval Size DvdDlJumpIntervalSize = 27, /// DVD DL Manual Layer Jump LBA DvdDlManualLayerJumpLba = 28, /// Bluray Disc Information BlurayDi = 29, /// Bluray Burst Cutting Area BlurayBca = 30, /// Bluray Disc Definition Structure BlurayDds = 31, /// Bluray Cartridge Status BlurayCartridgeStatus = 32, /// Bluray Spare Area Information BluraySpareArea = 33, /// AACS Volume Identifier AacsVolumeIdentifier = 34, /// AACS Serial Number AacsSerialNumber = 35, /// AACS Media Identifier AacsMediaIdentifier = 36, /// AACS Media Key Block AacsMediaKeyBlock = 37, /// AACS Data Keys AacsDataKeys = 38, /// AACS LBA Extents AacsLbaExtents = 39, /// CPRM Media Key Block CprmMediaKeyBlock = 40, /// Recognized Layers HybridRecognizedLayers = 41, /// MMC Write Protection ScsiMmcWriteProtection = 42, /// MMC Disc Information ScsiMmcDiscInformation = 43, /// MMC Track Resources Information ScsiMmcTrackResourcesInformation = 44, /// MMC POW Resources Information ScsiMmcPowResourcesInformation = 45, /// SCSI INQUIRY RESPONSE ScsiInquiry = 46, /// SCSI MODE PAGE 2Ah ScsiModePage2A = 47, /// ATA IDENTIFY response AtaIdentify = 48, /// ATAPI IDENTIFY response AtapiIdentify = 49, /// PCMCIA CIS PcmciaCis = 50, /// SecureDigital CID SecureDigitalCid = 51, /// SecureDigital CSD SecureDigitalCsd = 52, /// SecureDigital SCR SecureDigitalScr = 53, /// SecureDigital OCR SecureDigitalOcr = 54, /// MultiMediaCard CID MultiMediaCardCid = 55, /// MultiMediaCard CSD MultiMediaCardCsd = 56, /// MultiMediaCard OCR MultiMediaCardOcr = 57, /// MultiMediaCard Extended CSD MultiMediaCardExtendedCsd = 58, /// Xbox Security Sector XboxSecuritySector = 59, /// Floppy Lead-out FloppyLeadOut = 60, /// Dvd Disc Control Block DvdDiscControlBlock = 61, /// CompactDisc Lead-in CompactDiscLeadIn = 62, /// CompactDisc Lead-out CompactDiscLeadOut = 63, /// SCSI MODE SENSE (6) response ScsiModeSense6 = 64, /// SCSI MODE SENSE (10) response ScsiModeSense10 = 65, /// USB descriptors UsbDescriptors = 66, /// Xbox DMI XboxDmi = 67, /// Xbox Physical Format Information XboxPfi = 68, /// CompactDisc sector prefix (sync, header CdSectorPrefix = 69, /// CompactDisc sector suffix (edc, ecc p, ecc q) CdSectorSuffix = 70, /// CompactDisc subchannel CdSectorSubchannel = 71, /// Apple Profile (20 byte) tag AppleProfileTag = 72, /// Apple Sony (12 byte) tag AppleSonyTag = 73, /// Priam Data Tower (24 byte) tag PriamDataTowerTag = 74, /// CompactDisc Media Catalogue Number (as in Lead-in), 13 bytes, ASCII CompactDiscMediaCatalogueNumber = 75, /// CompactDisc sector prefix (sync, header), only incorrect stored CdSectorPrefixCorrected = 76, /// CompactDisc sector suffix (edc, ecc p, ecc q), only incorrect stored CdSectorSuffixCorrected = 77, /// CompactDisc MODE 2 subheader CompactDiscMode2Subheader = 78 } /// List of known blocks types enum BlockType : uint { /// Block containing data DataBlock = 0x4B4C4244, /// Block containing a deduplication table DeDuplicationTable = 0X2A544444, /// Block containing the index Index = 0X58444E49, /// Block containing logical geometry GeometryBlock = 0x4D4F4547, /// Block containing metadata MetadataBlock = 0x4154454D, /// Block containing optical disc tracks TracksBlock = 0x534B5254, /// Block containing CICM XML metadata CicmBlock = 0x4D434943, /// Block containing contents checksums ChecksumBlock = 0x4D534B43, /// TODO: Block containing data position measurements DataPositionMeasurementBlock = 0x2A4D5044, /// TODO: Block containing a snapshot index SnapshotBlock = 0x50414E53, /// TODO: Block containing how to locate the parent image ParentBlock = 0x50524E54, /// Block containing an array of hardware used to create the image DumpHardwareBlock = 0x2A504D44, /// TODO: Block containing list of files for a tape image TapeFileBlock = 0x454C4654 } enum ChecksumAlgorithm : byte { Invalid = 0, Md5 = 1, Sha1 = 2, Sha256 = 3, SpamSum = 4 } enum CdFixFlags : uint { NotDumped = 0x10000000, Correct = 0x20000000 } } }