mirror of
https://github.com/aaru-dps/libaaruformat.git
synced 2025-12-16 19:24:40 +00:00
Enhance documentation for enums with detailed descriptions and formatting improvements
This commit is contained in:
@@ -24,304 +24,218 @@
|
||||
#pragma ide diagnostic ignored "OCUnusedGlobalDeclarationInspection"
|
||||
#endif
|
||||
|
||||
/** List of known compression types */
|
||||
typedef enum
|
||||
{
|
||||
/** Not compressed */
|
||||
None = 0, /** LZMA */
|
||||
Lzma = 1, /** FLAC */
|
||||
Flac = 2, /** LZMA in Claunia Subchannel Transform processed data */
|
||||
LzmaClauniaSubchannelTransform = 3
|
||||
} CompressionType;
|
||||
|
||||
/** List of known data types */
|
||||
typedef enum
|
||||
{
|
||||
/** 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 First track pregap */
|
||||
CompactDiscFirstTrackPregap = 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,
|
||||
/** CompactDisc Lead-in */
|
||||
CompactDiscLeadIn = 79
|
||||
} DataType;
|
||||
|
||||
/** List of known blocks types */
|
||||
typedef enum
|
||||
{
|
||||
/** Block containing data */
|
||||
DataBlock = 0x4B4C4244,
|
||||
/** Block containing a deduplication table */
|
||||
DeDuplicationTable = 0x2A544444,
|
||||
/** Block containing a deduplication table v2 */
|
||||
DeDuplicationTable2 = 0x32544444,
|
||||
/** Block containing the index */
|
||||
IndexBlock = 0x58444E49,
|
||||
/** Block containing the index v2 */
|
||||
IndexBlock2 = 0x32584449,
|
||||
/** Block containing the index v3 */
|
||||
IndexBlock3 = 0x33584449,
|
||||
/** 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
|
||||
} BlockType;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
Invalid = 0,
|
||||
Md5 = 1,
|
||||
Sha1 = 2,
|
||||
Sha256 = 3,
|
||||
SpamSum = 4
|
||||
} ChecksumAlgorithm;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
NotDumped = 0x10000000,
|
||||
Correct = 0x20000000,
|
||||
Mode2Form1Ok = 0x30000000,
|
||||
Mode2Form2Ok = 0x40000000,
|
||||
Mode2Form2NoCrc = 0x50000000
|
||||
} CdFixFlags;
|
||||
|
||||
/** Track (as partitioning element) types. */
|
||||
typedef enum
|
||||
{
|
||||
/** Audio track */
|
||||
Audio = 0, /** Data track (not any of the below defined ones) */
|
||||
Data = 1, /** Data track, compact disc mode 1 */
|
||||
CdMode1 = 2, /** Data track, compact disc mode 2, formless */
|
||||
CdMode2Formless = 3, /** Data track, compact disc mode 2, form 1 */
|
||||
CdMode2Form1 = 4, /** Data track, compact disc mode 2, form 2 */
|
||||
CdMode2Form2 = 5
|
||||
} TrackType;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
AARUF_STATUS_INVALID_CONTEXT = -1,
|
||||
} AaruformatStatus;
|
||||
|
||||
/**
|
||||
* Enumeration of media types defined in CICM metadata
|
||||
* \enum CompressionType
|
||||
* \brief List of known compression types.
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
/**
|
||||
* Purely optical discs
|
||||
*/
|
||||
OpticalDisc = 0, /**
|
||||
* Media that is physically block-based or abstracted like that
|
||||
None = 0, ///< Not compressed.
|
||||
Lzma = 1, ///< LZMA compression.
|
||||
Flac = 2, ///< FLAC compression.
|
||||
LzmaClauniaSubchannelTransform = 3 ///< LZMA applied to Claunia Subchannel Transform processed data.
|
||||
} CompressionType;
|
||||
|
||||
*/
|
||||
BlockMedia = 1, /**
|
||||
* Media that can be accessed by-byte or by-bit, like chips
|
||||
*/
|
||||
LinearMedia = 2, /**
|
||||
* Media that can only store data when it is modulated to audio
|
||||
*/
|
||||
AudioMedia = 3
|
||||
/**
|
||||
* \enum DataType
|
||||
* \brief List of known data types stored within an Aaru image.
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
NoData = 0, ///< No data.
|
||||
UserData = 1, ///< User (main) data.
|
||||
CompactDiscPartialToc = 2, ///< Compact Disc partial Table of Contents.
|
||||
CompactDiscSessionInfo = 3, ///< Compact Disc session information.
|
||||
CompactDiscToc = 4, ///< Compact Disc full Table of Contents.
|
||||
CompactDiscPma = 5, ///< Compact Disc Power Management Area (PMA).
|
||||
CompactDiscAtip = 6, ///< Compact Disc Absolute Time In Pregroove (ATIP).
|
||||
CompactDiscLeadInCdText = 7, ///< Compact Disc lead-in CD-Text.
|
||||
DvdPfi = 8, ///< DVD Physical Format Information.
|
||||
DvdLeadInCmi = 9, ///< DVD lead-in Copyright Management Information (CMI).
|
||||
DvdDiscKey = 10, ///< DVD disc key.
|
||||
DvdBca = 11, ///< DVD Burst Cutting Area (BCA).
|
||||
DvdDmi = 12, ///< DVD Disc Manufacturing Information (DMI).
|
||||
DvdMediaIdentifier = 13, ///< DVD media identifier.
|
||||
DvdMediaKeyBlock = 14, ///< DVD Media Key Block (MKB).
|
||||
DvdRamDds = 15, ///< DVD-RAM Disc Definition Structure (DDS).
|
||||
DvdRamMediumStatus = 16, ///< DVD-RAM medium status.
|
||||
DvdRamSpareArea = 17, ///< DVD-RAM spare area information.
|
||||
DvdRRmd = 18, ///< DVD-R RMD (Recording Management Data).
|
||||
DvdRPrerecordedInfo = 19, ///< DVD-R pre‑recorded information.
|
||||
DvdRMediaIdentifier = 20, ///< DVD-R media identifier.
|
||||
DvdRPfi = 21, ///< DVD-R Physical Format Information.
|
||||
DvdAdip = 22, ///< DVD Address In Pregroove (ADIP).
|
||||
HdDvdCpi = 23, ///< HD DVD Copy Protection Information (CPI).
|
||||
HdDvdMediumStatus = 24, ///< HD DVD medium status.
|
||||
DvdDlLayerCapacity = 25, ///< DVD dual-layer capacity.
|
||||
DvdDlMiddleZoneAddress = 26, ///< DVD dual-layer middle zone address.
|
||||
DvdDlJumpIntervalSize = 27, ///< DVD dual-layer jump interval size.
|
||||
DvdDlManualLayerJumpLba = 28, ///< DVD dual-layer manual layer jump LBA.
|
||||
BlurayDi = 29, ///< Blu-ray Disc Information (DI).
|
||||
BlurayBca = 30, ///< Blu-ray Burst Cutting Area (BCA).
|
||||
BlurayDds = 31, ///< Blu-ray Disc Definition Structure (DDS).
|
||||
BlurayCartridgeStatus = 32, ///< Blu-ray cartridge status.
|
||||
BluraySpareArea = 33, ///< Blu-ray spare area information.
|
||||
AacsVolumeIdentifier = 34, ///< AACS volume identifier.
|
||||
AacsSerialNumber = 35, ///< AACS serial number.
|
||||
AacsMediaIdentifier = 36, ///< AACS media identifier.
|
||||
AacsMediaKeyBlock = 37, ///< AACS Media Key Block (MKB).
|
||||
AacsDataKeys = 38, ///< AACS data keys.
|
||||
AacsLbaExtents = 39, ///< AACS LBA extents.
|
||||
CprmMediaKeyBlock = 40, ///< CPRM Media Key Block (MKB).
|
||||
HybridRecognizedLayers = 41, ///< Recognized layers (hybrid media).
|
||||
ScsiMmcWriteProtection = 42, ///< MMC write-protection data.
|
||||
ScsiMmcDiscInformation = 43, ///< MMC disc information.
|
||||
ScsiMmcTrackResourcesInformation= 44, ///< MMC track resources information.
|
||||
ScsiMmcPowResourcesInformation = 45, ///< MMC POW (Persistent Optical Write?) resources information.
|
||||
ScsiInquiry = 46, ///< SCSI INQUIRY response.
|
||||
ScsiModePage2A = 47, ///< SCSI MODE PAGE 2Ah.
|
||||
AtaIdentify = 48, ///< ATA IDENTIFY DEVICE data.
|
||||
AtapiIdentify = 49, ///< ATAPI IDENTIFY PACKET DEVICE data.
|
||||
PcmciaCis = 50, ///< PCMCIA Card Information Structure (CIS).
|
||||
SecureDigitalCid = 51, ///< Secure Digital CID register.
|
||||
SecureDigitalCsd = 52, ///< Secure Digital CSD register.
|
||||
SecureDigitalScr = 53, ///< Secure Digital SCR register.
|
||||
SecureDigitalOcr = 54, ///< Secure Digital OCR register.
|
||||
MultiMediaCardCid = 55, ///< MultiMediaCard CID register.
|
||||
MultiMediaCardCsd = 56, ///< MultiMediaCard CSD register.
|
||||
MultiMediaCardOcr = 57, ///< MultiMediaCard OCR register.
|
||||
MultiMediaCardExtendedCsd = 58, ///< MultiMediaCard Extended CSD register.
|
||||
XboxSecuritySector = 59, ///< Xbox Security Sector.
|
||||
FloppyLeadOut = 60, ///< Floppy lead‑out data.
|
||||
DvdDiscControlBlock = 61, ///< DVD Disc Control Block.
|
||||
CompactDiscFirstTrackPregap = 62, ///< Compact Disc first track pre-gap.
|
||||
CompactDiscLeadOut = 63, ///< Compact Disc lead‑out.
|
||||
ScsiModeSense6 = 64, ///< SCSI MODE SENSE (6) response.
|
||||
ScsiModeSense10 = 65, ///< SCSI MODE SENSE (10) response.
|
||||
UsbDescriptors = 66, ///< USB descriptors set.
|
||||
XboxDmi = 67, ///< Xbox DMI.
|
||||
XboxPfi = 68, ///< Xbox Physical Format Information (PFI).
|
||||
CdSectorPrefix = 69, ///< Compact Disc sector prefix (sync, header).
|
||||
CdSectorSuffix = 70, ///< Compact Disc sector suffix (EDC, ECC P, ECC Q).
|
||||
CdSectorSubchannel = 71, ///< Compact Disc subchannel data.
|
||||
AppleProfileTag = 72, ///< Apple Profile (20‑byte) tag.
|
||||
AppleSonyTag = 73, ///< Apple Sony (12‑byte) tag.
|
||||
PriamDataTowerTag = 74, ///< Priam Data Tower (24‑byte) tag.
|
||||
CompactDiscMediaCatalogueNumber = 75, ///< Compact Disc Media Catalogue Number (lead‑in, 13 ASCII bytes).
|
||||
CdSectorPrefixCorrected = 76, ///< Compact Disc sector prefix (sync, header) corrected-only stored.
|
||||
CdSectorSuffixCorrected = 77, ///< Compact Disc sector suffix (EDC, ECC P, ECC Q) corrected-only stored.
|
||||
CompactDiscMode2Subheader = 78, ///< Compact Disc MODE 2 subheader.
|
||||
CompactDiscLeadIn = 79 ///< Compact Disc lead‑in.
|
||||
} DataType;
|
||||
|
||||
/**
|
||||
* \enum BlockType
|
||||
* \brief List of known block types contained in an Aaru image.
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
DataBlock = 0x4B4C4244, ///< Block containing data.
|
||||
DeDuplicationTable = 0x2A544444, ///< Block containing a deduplication table (v1).
|
||||
DeDuplicationTable2 = 0x32544444, ///< Block containing a deduplication table v2.
|
||||
IndexBlock = 0x58444E49, ///< Block containing the index (v1).
|
||||
IndexBlock2 = 0x32584449, ///< Block containing the index v2.
|
||||
IndexBlock3 = 0x33584449, ///< Block containing the index v3.
|
||||
GeometryBlock = 0x4D4F4547, ///< Block containing logical geometry.
|
||||
MetadataBlock = 0x4154454D, ///< Block containing metadata.
|
||||
TracksBlock = 0x534B5254, ///< Block containing optical disc tracks.
|
||||
CicmBlock = 0x4D434943, ///< Block containing CICM XML metadata.
|
||||
ChecksumBlock = 0x4D534B43, ///< Block containing contents checksums.
|
||||
DataPositionMeasurementBlock = 0x2A4D5044, ///< Block containing data position measurements (reserved / TODO).
|
||||
SnapshotBlock = 0x50414E53, ///< Block containing a snapshot index (reserved / TODO).
|
||||
ParentBlock = 0x50524E54, ///< Block describing how to locate the parent image (reserved / TODO).
|
||||
DumpHardwareBlock = 0x2A504D44, ///< Block containing an array of hardware used to create the image.
|
||||
TapeFileBlock = 0x454C4654 ///< Block containing list of files for a tape image (reserved / TODO).
|
||||
} BlockType;
|
||||
|
||||
/**
|
||||
* \enum ChecksumAlgorithm
|
||||
* \brief Supported checksum / hash algorithms.
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
Invalid = 0, ///< Invalid / unspecified algorithm.
|
||||
Md5 = 1, ///< MD5 hash.
|
||||
Sha1 = 2, ///< SHA-1 hash.
|
||||
Sha256 = 3, ///< SHA-256 hash.
|
||||
SpamSum = 4 ///< SpamSum (context-triggered piecewise hash).
|
||||
} ChecksumAlgorithm;
|
||||
|
||||
/**
|
||||
* \enum CdFixFlags
|
||||
* \brief Flags describing Compact Disc sector fix-up status.
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
NotDumped = 0x10000000, ///< Sector(s) have not yet been dumped.
|
||||
Correct = 0x20000000, ///< Sector(s) contain valid MODE 1 data with regenerable suffix/prefix.
|
||||
Mode2Form1Ok = 0x30000000, ///< Sector suffix valid for MODE 2 Form 1; regenerable.
|
||||
Mode2Form2Ok = 0x40000000, ///< Sector suffix valid for MODE 2 Form 2 with correct CRC.
|
||||
Mode2Form2NoCrc = 0x50000000 ///< Sector suffix valid for MODE 2 Form 2 but CRC absent/empty.
|
||||
} CdFixFlags;
|
||||
|
||||
/**
|
||||
* \enum TrackType
|
||||
* \brief Track (partitioning element) types for optical media.
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
Audio = 0, ///< Audio track.
|
||||
Data = 1, ///< Generic data track (not further specified).
|
||||
CdMode1 = 2, ///< Compact Disc Mode 1 data track.
|
||||
CdMode2Formless = 3, ///< Compact Disc Mode 2 (formless) data track.
|
||||
CdMode2Form1 = 4, ///< Compact Disc Mode 2 Form 1 data track.
|
||||
CdMode2Form2 = 5 ///< Compact Disc Mode 2 Form 2 data track.
|
||||
} TrackType;
|
||||
|
||||
/**
|
||||
* \enum AaruformatStatus
|
||||
* \brief Status / error codes specific to libaaruformat.
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
AARUF_STATUS_INVALID_CONTEXT = -1 ///< Provided context/handle is invalid.
|
||||
} AaruformatStatus;
|
||||
|
||||
/**
|
||||
* \enum XmlMediaType
|
||||
* \brief Enumeration of media types defined in CICM metadata.
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
OpticalDisc = 0, ///< Purely optical discs.
|
||||
BlockMedia = 1, ///< Media that is physically block-based or abstracted like that.
|
||||
LinearMedia = 2, ///< Media that can be accessed by-byte or by-bit, like chips.
|
||||
AudioMedia = 3 ///< Media that can only store data when modulated to audio.
|
||||
} XmlMediaType;
|
||||
|
||||
/**
|
||||
* \enum DdtSizeType
|
||||
* \brief Size type for Deduplication Data Table (DDT) entries.
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
SmallDdtSizeType = 0,
|
||||
BigDdtSizeType = 1
|
||||
SmallDdtSizeType = 0, ///< Small sized DDT entries.
|
||||
BigDdtSizeType = 1 ///< Large sized DDT entries.
|
||||
} DdtSizeType;
|
||||
|
||||
/**
|
||||
* \enum SectorStatus
|
||||
* \brief Acquisition / content status for one or more sectors.
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
/**Sector(s) have not yet been acquired during image dumping.*/
|
||||
SectorStatusNotDumped = 0x0,
|
||||
/**Sector(s) have been successfully dumped without error.*/
|
||||
SectorStatusDumped = 0x1,
|
||||
/**Sector(s) encountered an error during dumping and may be incomplete or corrupt.*/
|
||||
SectorStatusErrored = 0x2,
|
||||
/**Sector contains valid MODE 1 data with regenerable suffix or prefix.*/
|
||||
SectorStatusMode1Correct = 0x3,
|
||||
/**Sector suffix is verified and regenerable, corresponding to MODE 2 Form 1.*/
|
||||
SectorStatusMode2Form1Ok = 0x4,
|
||||
/**Sector suffix matches MODE 2 Form 2 format with a valid CRC.*/
|
||||
SectorStatusMode2Form2Ok = 0x5,
|
||||
/**Sector suffix matches MODE 2 Form 2 format but contains an empty or missing CRC.*/
|
||||
SectorStatusMode2Form2NoCrc = 0x6,
|
||||
/**Pointer references a twin sector table.*/
|
||||
SectorStatusTwin = 0x7,
|
||||
/**Sector is physically unrecorded; repeated reads return non-deterministic or random data.*/
|
||||
SectorStatusUnrecorded = 0x8,
|
||||
/**Sector content is encrypted and stored in its original encrypted form within the image.*/
|
||||
SectorStatusEncrypted = 0x9,
|
||||
/**Sector content was originally encrypted on media but is stored decrypted in the image.*/
|
||||
SectorStatusUnencrypted = 0xA
|
||||
SectorStatusNotDumped = 0x0, ///< Sector(s) not yet acquired during image dumping.
|
||||
SectorStatusDumped = 0x1, ///< Sector(s) successfully dumped without error.
|
||||
SectorStatusErrored = 0x2, ///< Error during dumping; data may be incomplete or corrupt.
|
||||
SectorStatusMode1Correct = 0x3, ///< Valid MODE 1 data with regenerable suffix/prefix.
|
||||
SectorStatusMode2Form1Ok = 0x4, ///< Suffix verified/regenerable for MODE 2 Form 1.
|
||||
SectorStatusMode2Form2Ok = 0x5, ///< Suffix matches MODE 2 Form 2 with valid CRC.
|
||||
SectorStatusMode2Form2NoCrc = 0x6, ///< Suffix matches MODE 2 Form 2 but CRC empty/missing.
|
||||
SectorStatusTwin = 0x7, ///< Pointer references a twin sector table.
|
||||
SectorStatusUnrecorded = 0x8, ///< Sector physically unrecorded; repeated reads non-deterministic.
|
||||
SectorStatusEncrypted = 0x9, ///< Content encrypted and stored encrypted in image.
|
||||
SectorStatusUnencrypted = 0xA ///< Content originally encrypted but stored decrypted in image.
|
||||
} SectorStatus;
|
||||
|
||||
#ifndef _MSC_VER
|
||||
|
||||
Reference in New Issue
Block a user