libaaruformat 1.0 Aaru Data Preservation Suite - Format Library

Loading...
Searching...
No Matches
enums.h File Reference

Go to the source code of this file.

## Enumerations
enum | CompressionType { None = 0 , Lzma = 1 , Flac = 2 , LzmaClauniaSubchannelTransform = 3 }
| List of known compression types. More...
enum | DataType { NoData = 0 , UserData = 1 , CompactDiscPartialToc = 2 , CompactDiscSessionInfo = 3 , CompactDiscToc = 4 , CompactDiscPma = 5 , CompactDiscAtip = 6 , CompactDiscLeadInCdText = 7 , DvdPfi = 8 , DvdLeadInCmi = 9 , DvdDiscKey = 10 , DvdBca = 11 , DvdDmi = 12 , DvdMediaIdentifier = 13 , DvdMediaKeyBlock = 14 , DvdRamDds = 15 , DvdRamMediumStatus = 16 , DvdRamSpareArea = 17 , DvdRRmd = 18 , DvdRPrerecordedInfo = 19 , DvdRMediaIdentifier = 20 , DvdRPfi = 21 , DvdAdip = 22 , HdDvdCpi = 23 , HdDvdMediumStatus = 24 , DvdDlLayerCapacity = 25 , DvdDlMiddleZoneAddress = 26 , DvdDlJumpIntervalSize = 27 , DvdDlManualLayerJumpLba = 28 , BlurayDi = 29 , BlurayBca = 30 , BlurayDds = 31 , BlurayCartridgeStatus = 32 , BluraySpareArea = 33 , AacsVolumeIdentifier = 34 , AacsSerialNumber = 35 , AacsMediaIdentifier = 36 , AacsMediaKeyBlock = 37 , AacsDataKeys = 38 , AacsLbaExtents = 39 , CprmMediaKeyBlock = 40 , HybridRecognizedLayers = 41 , ScsiMmcWriteProtection = 42 , ScsiMmcDiscInformation = 43 , ScsiMmcTrackResourcesInformation = 44 , ScsiMmcPowResourcesInformation = 45 , ScsiInquiry = 46 , ScsiModePage2A = 47 , AtaIdentify = 48 , AtapiIdentify = 49 , PcmciaCis = 50 , SecureDigitalCid = 51 , SecureDigitalCsd = 52 , SecureDigitalScr = 53 , SecureDigitalOcr = 54 , MultiMediaCardCid = 55 , MultiMediaCardCsd = 56 , MultiMediaCardOcr = 57 , MultiMediaCardExtendedCsd = 58 , XboxSecuritySector = 59 , FloppyLeadOut = 60 , DvdDiscControlBlock = 61 , CompactDiscFirstTrackPregap = 62 , CompactDiscLeadOut = 63 , ScsiModeSense6 = 64 , ScsiModeSense10 = 65 , UsbDescriptors = 66 , XboxDmi = 67 , XboxPfi = 68 , CdSectorPrefix = 69 , CdSectorSuffix = 70 , CdSectorSubchannel = 71 , AppleProfileTag = 72 , AppleSonyTag = 73 , PriamDataTowerTag = 74 , CompactDiscMediaCatalogueNumber = 75 , CdSectorPrefixCorrected = 76 , CdSectorSuffixCorrected = 77 , CompactDiscMode2Subheader = 78 , CompactDiscLeadIn = 79 , DvdDiscKeyDecrypted = 80 , DvdSectorCprMai = 81 , DvdSectorTitleKeyDecrypted = 82 , DvdSectorId = 83 , DvdSectorIed = 84 , DvdSectorEdc = 85 , DvdSectorEccPi = 86 , DvdEccBlockPo = 87 }
| List of known data types stored within an Aaru image. More...
enum | BlockType { DataBlock = 0x4B4C4244 , DeDuplicationTable = 0x2A544444 , DeDuplicationTable2 = 0x32544444 , DeDuplicationTableSecondary = 0x53545444 , IndexBlock = 0x58444E49 , IndexBlock2 = 0x32584449 , IndexBlock3 = 0x33584449 , GeometryBlock = 0x4D4F4547 , MetadataBlock = 0x4154454D , TracksBlock = 0x534B5254 , CicmBlock = 0x4D434943 , ChecksumBlock = 0x4D534B43 , DataPositionMeasurementBlock = 0x2A4D5044 , SnapshotBlock = 0x50414E53 , ParentBlock = 0x50524E54 , DumpHardwareBlock = 0x2A504D44 , TapeFileBlock = 0x454C4654 , TapePartitionBlock = 0x54425054 , AaruMetadataJsonBlock = 0x444D534A }
| List of known block types contained in an Aaru image. More...
enum | ChecksumAlgorithm { Invalid = 0 , Md5 = 1 , Sha1 = 2 , Sha256 = 3 , SpamSum = 4 , Blake3 = 5 }
| Supported checksum / hash algorithms. More...
enum | CdFixFlags { NotDumped = 0x10000000 , Correct = 0x20000000 , Mode2Form1Ok = 0x30000000 , Mode2Form2Ok = 0x40000000 , Mode2Form2NoCrc = 0x50000000 }
| Flags describing Compact Disc sector fix-up status. More...
enum | TrackType { Audio = 0 , Data = 1 , CdMode1 = 2 , CdMode2Formless = 3 , CdMode2Form1 = 4 , CdMode2Form2 = 5 }
| Track (partitioning element) types for optical media. More...
enum | AaruformatStatus { AARUF_STATUS_INVALID_CONTEXT = -1 }
| Status / error codes specific to libaaruformat. More...
enum | XmlMediaType { OpticalDisc = 0 , BlockMedia = 1 , LinearMedia = 2 , AudioMedia = 3 }
| Enumeration of media types defined in CICM metadata. More...
enum | SectorStatus { SectorStatusNotDumped = 0x0 , SectorStatusDumped = 0x1 , SectorStatusErrored = 0x2 , SectorStatusMode1Correct = 0x3 , SectorStatusMode2Form1Ok = 0x4 , SectorStatusMode2Form2Ok = 0x5 , SectorStatusMode2Form2NoCrc = 0x6 , SectorStatusTwin = 0x7 , SectorStatusUnrecorded = 0x8 , SectorStatusEncrypted = 0x9 , SectorStatusUnencrypted = 0xA }
| Acquisition / content status for one or more sectors. More...
enum | FeaturesCompatible { AARU_FEATURE_RW_BLAKE3 = 0x1 }
| Bit-mask of optional, backward-compatible features stored in an image. More...

## Enumeration Type Documentation

## ◆ AaruformatStatus

enum AaruformatStatus

Status / error codes specific to libaaruformat.

Enumerator
AARUF_STATUS_INVALID_CONTEXT | Provided context/handle is invalid.

Definition at line 207 of file enums.h.

## ◆ BlockType

enum BlockType

List of known block types contained in an Aaru image.

Enumerator
DataBlock | Block containing data.
DeDuplicationTable | Block containing a deduplication table (v1).
DeDuplicationTable2 | Block containing a deduplication table v2.
DeDuplicationTableSecondary | Block containing a secondary deduplication table (v2).
IndexBlock | Block containing the index (v1).
IndexBlock2 | Block containing the index v2.
IndexBlock3 | Block containing the index v3.
GeometryBlock | Block containing logical geometry.
MetadataBlock | Block containing metadata.
TracksBlock | Block containing optical disc tracks.
CicmBlock | Block containing CICM XML metadata.
ChecksumBlock | Block containing contents checksums.
DataPositionMeasurementBlock | Block containing data position measurements (reserved / TODO).
SnapshotBlock | Block containing a snapshot index (reserved / TODO).
ParentBlock | Block describing how to locate the parent image (reserved / TODO).
DumpHardwareBlock | Block containing an array of hardware used to create the image.
TapeFileBlock | Block containing list of files for a tape image.
TapePartitionBlock | Block containing list of partitions for a tape image.
AaruMetadataJsonBlock | Block containing JSON version of Aaru Metadata.

Definition at line 139 of file enums.h.

## ◆ CdFixFlags

enum CdFixFlags

Flags describing Compact Disc sector fix-up status.

Enumerator
NotDumped | Sector(s) have not yet been dumped.
Correct | Sector(s) contain valid MODE 1 data with regenerable suffix/prefix.
Mode2Form1Ok | Sector suffix valid for MODE 2 Form 1; regenerable.
Mode2Form2Ok | Sector suffix valid for MODE 2 Form 2 with correct CRC.
Mode2Form2NoCrc | Sector suffix valid for MODE 2 Form 2 but CRC absent/empty.

Definition at line 180 of file enums.h.

## ◆ ChecksumAlgorithm

enum ChecksumAlgorithm

Supported checksum / hash algorithms.

Enumerator
Invalid | Invalid / unspecified algorithm.
Md5 | MD5 hash.
Sha1 | SHA-1 hash.
Sha256 | SHA-256 hash.
SpamSum | SpamSum (context-triggered piecewise hash).
Blake3 | BLAKE3 hash.

Definition at line 166 of file enums.h.

## ◆ CompressionType

enum CompressionType

List of known compression types.

Enumerator
None | Not compressed.
Lzma | LZMA compression.
Flac | FLAC compression.
LzmaClauniaSubchannelTransform | LZMA applied to Claunia Subchannel Transform processed data.

Definition at line 31 of file enums.h.

## ◆ DataType

enum DataType

List of known data types stored within an Aaru image.

Enumerator
NoData | No data.
UserData | User (main) data.
CompactDiscPartialToc | Compact Disc partial Table of Contents.
CompactDiscSessionInfo | Compact Disc session information.
CompactDiscToc | Compact Disc full Table of Contents.
CompactDiscPma | Compact Disc Power Management Area (PMA).
CompactDiscAtip | Compact Disc Absolute Time In Pregroove (ATIP).
CompactDiscLeadInCdText | Compact Disc lead-in CD-Text.
DvdPfi | DVD Physical Format Information.
DvdLeadInCmi | DVD lead-in Copyright Management Information (CMI).
DvdDiscKey | DVD disc key.
DvdBca | DVD Burst Cutting Area (BCA).
DvdDmi | DVD Disc Manufacturing Information (DMI).
DvdMediaIdentifier | DVD media identifier.
DvdMediaKeyBlock | DVD Media Key Block (MKB).
DvdRamDds | DVD-RAM Disc Definition Structure (DDS).
DvdRamMediumStatus | DVD-RAM medium status.
DvdRamSpareArea | DVD-RAM spare area information.
DvdRRmd | DVD-R RMD (Recording Management Data).
DvdRPrerecordedInfo | DVD-R pre‑recorded information.
DvdRMediaIdentifier | DVD-R media identifier.
DvdRPfi | DVD-R Physical Format Information.
DvdAdip | DVD Address In Pregroove (ADIP).
HdDvdCpi | HD DVD Copy Protection Information (CPI).
HdDvdMediumStatus | HD DVD medium status.
DvdDlLayerCapacity | DVD dual-layer capacity.
DvdDlMiddleZoneAddress | DVD dual-layer middle zone address.
DvdDlJumpIntervalSize | DVD dual-layer jump interval size.
DvdDlManualLayerJumpLba | DVD dual-layer manual layer jump LBA.
BlurayDi | Blu-ray Disc Information (DI).
BlurayBca | Blu-ray Burst Cutting Area (BCA).
BlurayDds | Blu-ray Disc Definition Structure (DDS).
BlurayCartridgeStatus | Blu-ray cartridge status.
BluraySpareArea | Blu-ray spare area information.
AacsVolumeIdentifier | AACS volume identifier.
AacsSerialNumber | AACS serial number.
AacsMediaIdentifier | AACS media identifier.
AacsMediaKeyBlock | AACS Media Key Block (MKB).
AacsDataKeys | AACS data keys.
AacsLbaExtents | AACS LBA extents.
CprmMediaKeyBlock | CPRM Media Key Block (MKB).
HybridRecognizedLayers | Recognized layers (hybrid media).
ScsiMmcWriteProtection | MMC write-protection data.
ScsiMmcDiscInformation | MMC disc information.
ScsiMmcTrackResourcesInformation | MMC track resources information.
ScsiMmcPowResourcesInformation | MMC POW (Persistent Optical Write?) resources information.
ScsiInquiry | SCSI INQUIRY response.
ScsiModePage2A | SCSI MODE PAGE 2Ah.
AtaIdentify | ATA IDENTIFY DEVICE data.
AtapiIdentify | ATAPI IDENTIFY PACKET DEVICE data.
PcmciaCis | PCMCIA Card Information Structure (CIS).
SecureDigitalCid | Secure Digital CID register.
SecureDigitalCsd | Secure Digital CSD register.
SecureDigitalScr | Secure Digital SCR register.
SecureDigitalOcr | Secure Digital OCR register.
MultiMediaCardCid | MultiMediaCard CID register.
MultiMediaCardCsd | MultiMediaCard CSD register.
MultiMediaCardOcr | MultiMediaCard OCR register.
MultiMediaCardExtendedCsd | MultiMediaCard Extended CSD register.
XboxSecuritySector | Xbox Security Sector.
FloppyLeadOut | Floppy lead‑out data.
DvdDiscControlBlock | DVD Disc Control Block.
CompactDiscFirstTrackPregap | Compact Disc first track pre-gap.
CompactDiscLeadOut | Compact Disc lead‑out.
ScsiModeSense6 | SCSI MODE SENSE (6) response.
ScsiModeSense10 | SCSI MODE SENSE (10) response.
UsbDescriptors | USB descriptors set.
XboxDmi | Xbox DMI.
XboxPfi | Xbox Physical Format Information (PFI).
CdSectorPrefix | Compact Disc sector prefix (sync, header).
CdSectorSuffix | Compact Disc sector suffix (EDC, ECC P, ECC Q).
CdSectorSubchannel | Compact Disc subchannel data.
AppleProfileTag | Apple Profile (20‑byte) tag.
AppleSonyTag | Apple Sony (12‑byte) tag.
PriamDataTowerTag | Priam Data Tower (24‑byte) tag.
CompactDiscMediaCatalogueNumber | Compact Disc Media Catalogue Number (lead‑in, 13 ASCII bytes).
CdSectorPrefixCorrected | Compact Disc sector prefix (sync, header) corrected-only stored.
CdSectorSuffixCorrected | Compact Disc sector suffix (EDC, ECC P, ECC Q) corrected-only stored.
CompactDiscMode2Subheader | Compact Disc MODE 2 subheader.
CompactDiscLeadIn | Compact Disc lead‑in.
DvdDiscKeyDecrypted | Decrypted DVD Disc Key.
DvdSectorCprMai | DVD Copyright Management Information (CPR_MAI)
DvdSectorTitleKeyDecrypted | Decrypted DVD Title Key.
DvdSectorId | DVD Identification Data (ID)
DvdSectorIed | DVD ID Error Detection Code (IED)
DvdSectorEdc | DVD Error Detection Code (EDC)
DvdSectorEccPi | DVD Error Correction Code (ECC) Parity of Inner Code (PI)
DvdEccBlockPo | DVD Error Correction Code (ECC) Parity of Outer Code (PO)

Definition at line 43 of file enums.h.

## ◆ FeaturesCompatible

enum FeaturesCompatible

Bit-mask of optional, backward-compatible features stored in an image.

These flags advertise additional data structures or capabilities embedded in the image that older readers MAY safely ignore. An unknown bit MUST be treated as "feature unsupported" without failing to open the image. Writers set the bits for features they included; readers test them to enable extended behaviors.

Usage example:

uint64_t features = header->featuresCompatible; // value read from on-disk header
if(features & AARU_FEATURE_RW_BLAKE3)
{
// Image contains BLAKE3 checksums; enable BLAKE3 verification path.
}
AARU_FEATURE_RW_BLAKE3
@ AARU_FEATURE_RW_BLAKE3
BLAKE3 checksum is present (read/write support for BLAKE3 hashes).
Definition enums.h:265

Future compatible features SHALL use the next available bit (1ULL << n).

Enumerator
AARU_FEATURE_RW_BLAKE3 | BLAKE3 checksum is present (read/write support for BLAKE3 hashes).

Definition at line 263 of file enums.h.

## ◆ SectorStatus

enum SectorStatus

Acquisition / content status for one or more sectors.

Enumerator
SectorStatusNotDumped | Sector(s) not yet acquired during image dumping.
SectorStatusDumped | Sector(s) successfully dumped without error.
SectorStatusErrored | Error during dumping; data may be incomplete or corrupt.
SectorStatusMode1Correct | Valid MODE 1 data with regenerable suffix/prefix.
SectorStatusMode2Form1Ok | Suffix verified/regenerable for MODE 2 Form 1.
SectorStatusMode2Form2Ok | Suffix matches MODE 2 Form 2 with valid CRC.
SectorStatusMode2Form2NoCrc | Suffix matches MODE 2 Form 2 but CRC empty/missing.
SectorStatusTwin | Pointer references a twin sector table.
SectorStatusUnrecorded | Sector physically unrecorded; repeated reads non-deterministic.
SectorStatusEncrypted | Content encrypted and stored encrypted in image.
SectorStatusUnencrypted | Content originally encrypted but stored decrypted in image.

Definition at line 228 of file enums.h.

## ◆ TrackType

enum TrackType

Track (partitioning element) types for optical media.

Enumerator
Audio | Audio track.
Data | Generic data track (not further specified).
CdMode1 | Compact Disc Mode 1 data track.
CdMode2Formless | Compact Disc Mode 2 (formless) data track.
CdMode2Form1 | Compact Disc Mode 2 Form 1 data track.
CdMode2Form2 | Compact Disc Mode 2 Form 2 data track.

Definition at line 193 of file enums.h.

## ◆ XmlMediaType

enum XmlMediaType

Enumeration of media types defined in CICM metadata.

Enumerator
OpticalDisc | Purely optical discs.
BlockMedia | Media that is physically block-based or abstracted like that.
LinearMedia | Media that can be accessed by-byte or by-bit, like chips.
AudioMedia | Media that can only store data when modulated to audio.

Definition at line 216 of file enums.h.