libaaruformat 1.0
Aaru Data Preservation Suite - Format Library
Loading...
Searching...
No Matches
enums.h
Go to the documentation of this file.
1/*
2 * This file is part of the Aaru Data Preservation Suite.
3 * Copyright (c) 2019-2025 Natalia Portillo.
4 *
5 * This library is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU Lesser General Public License as
7 * published by the Free Software Foundation; either version 2.1 of the
8 * License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, see <http://www.gnu.org/licenses/>.
17 */
18
19#ifndef LIBAARUFORMAT_ENUMS_H
20#define LIBAARUFORMAT_ENUMS_H
21
22#ifndef _MSC_VER
23#pragma clang diagnostic push
24#pragma ide diagnostic ignored "OCUnusedGlobalDeclarationInspection"
25#endif
26
38
43typedef enum
44{
45 NoData = 0,
53 DvdPfi = 8,
56 DvdBca = 11,
57 DvdDmi = 12,
60 DvdRamDds = 15,
63 DvdRRmd = 18,
66 DvdRPfi = 21,
67 DvdAdip = 22,
68 HdDvdCpi = 23,
74 BlurayDi = 29,
75 BlurayBca = 30,
76 BlurayDds = 31,
95 PcmciaCis = 50,
112 XboxDmi = 67,
113 XboxPfi = 68,
134} DataType;
135
140typedef enum
141{
142 DataBlock = 0x4B4C4244,
143 DeDuplicationTable = 0x2A544444,
144 DeDuplicationTable2 = 0x32544444,
146 IndexBlock = 0x58444E49,
147 IndexBlock2 = 0x32584449,
148 IndexBlock3 = 0x33584449,
149 GeometryBlock = 0x4D4F4547,
150 MetadataBlock = 0x4154454D,
151 TracksBlock = 0x534B5254,
152 CicmBlock = 0x4D434943,
153 ChecksumBlock = 0x4D534B43,
155 SnapshotBlock = 0x50414E53,
156 ParentBlock = 0x50524E54,
157 DumpHardwareBlock = 0x2A504D44,
158 TapeFileBlock = 0x454C4654,
159 TapePartitionBlock = 0x54425054,
161} BlockType;
162
167typedef enum
168{
170 Md5 = 1,
171 Sha1 = 2,
172 Sha256 = 3,
174 Blake3 = 5,
176
181typedef enum
182{
183 NotDumped = 0x10000000,
184 Correct = 0x20000000,
185 Mode2Form1Ok = 0x30000000,
186 Mode2Form2Ok = 0x40000000,
187 Mode2Form2NoCrc = 0x50000000
188} CdFixFlags;
189
203
212
224
243
264typedef enum
265{
268
269#ifndef _MSC_VER
270#pragma clang diagnostic pop
271#endif
272
273#endif // LIBAARUFORMAT_ENUMS_H
BlockType
List of known block types contained in an Aaru image.
Definition enums.h:141
@ IndexBlock3
Block containing the index v3.
Definition enums.h:148
@ ChecksumBlock
Block containing contents checksums.
Definition enums.h:153
@ DataBlock
Block containing data.
Definition enums.h:142
@ TapePartitionBlock
Block containing list of partitions for a tape image.
Definition enums.h:159
@ IndexBlock2
Block containing the index v2.
Definition enums.h:147
@ GeometryBlock
Block containing logical geometry.
Definition enums.h:149
@ DeDuplicationTableSecondary
Block containing a secondary deduplication table (v2).
Definition enums.h:145
@ SnapshotBlock
Block containing a snapshot index (reserved / TODO).
Definition enums.h:155
@ AaruMetadataJsonBlock
Block containing JSON version of Aaru Metadata.
Definition enums.h:160
@ CicmBlock
Block containing CICM XML metadata.
Definition enums.h:152
@ ParentBlock
Block describing how to locate the parent image (reserved / TODO).
Definition enums.h:156
@ IndexBlock
Block containing the index (v1).
Definition enums.h:146
@ DeDuplicationTable2
Block containing a deduplication table v2.
Definition enums.h:144
@ TapeFileBlock
Block containing list of files for a tape image.
Definition enums.h:158
@ DeDuplicationTable
Block containing a deduplication table (v1).
Definition enums.h:143
@ DumpHardwareBlock
Block containing an array of hardware used to create the image.
Definition enums.h:157
@ MetadataBlock
Block containing metadata.
Definition enums.h:150
@ DataPositionMeasurementBlock
Block containing data position measurements (reserved / TODO).
Definition enums.h:154
@ TracksBlock
Block containing optical disc tracks.
Definition enums.h:151
SectorStatus
Acquisition / content status for one or more sectors.
Definition enums.h:230
@ SectorStatusDumped
Sector(s) successfully dumped without error.
Definition enums.h:232
@ SectorStatusNotDumped
Sector(s) not yet acquired during image dumping.
Definition enums.h:231
@ SectorStatusTwin
Pointer references a twin sector table.
Definition enums.h:238
@ SectorStatusUnrecorded
Sector physically unrecorded; repeated reads non-deterministic.
Definition enums.h:239
@ SectorStatusUnencrypted
Content originally encrypted but stored decrypted in image.
Definition enums.h:241
@ SectorStatusEncrypted
Content encrypted and stored encrypted in image.
Definition enums.h:240
@ SectorStatusMode2Form2NoCrc
Suffix matches MODE 2 Form 2 but CRC empty/missing.
Definition enums.h:237
@ SectorStatusMode1Correct
Valid MODE 1 data with regenerable suffix/prefix.
Definition enums.h:234
@ SectorStatusMode2Form2Ok
Suffix matches MODE 2 Form 2 with valid CRC.
Definition enums.h:236
@ SectorStatusErrored
Error during dumping; data may be incomplete or corrupt.
Definition enums.h:233
@ SectorStatusMode2Form1Ok
Suffix verified/regenerable for MODE 2 Form 1.
Definition enums.h:235
CdFixFlags
Flags describing Compact Disc sector fix-up status.
Definition enums.h:182
@ Correct
Sector(s) contain valid MODE 1 data with regenerable suffix/prefix.
Definition enums.h:184
@ Mode2Form2Ok
Sector suffix valid for MODE 2 Form 2 with correct CRC.
Definition enums.h:186
@ Mode2Form1Ok
Sector suffix valid for MODE 2 Form 1; regenerable.
Definition enums.h:185
@ NotDumped
Sector(s) have not yet been dumped.
Definition enums.h:183
@ Mode2Form2NoCrc
Sector suffix valid for MODE 2 Form 2 but CRC absent/empty.
Definition enums.h:187
XmlMediaType
Enumeration of media types defined in CICM metadata.
Definition enums.h:218
@ AudioMedia
Media that can only store data when modulated to audio.
Definition enums.h:222
@ OpticalDisc
Purely optical discs.
Definition enums.h:219
@ BlockMedia
Media that is physically block-based or abstracted like that.
Definition enums.h:220
@ LinearMedia
Media that can be accessed by-byte or by-bit, like chips.
Definition enums.h:221
ChecksumAlgorithm
Supported checksum / hash algorithms.
Definition enums.h:168
@ Blake3
BLAKE3 hash.
Definition enums.h:174
@ Sha1
SHA-1 hash.
Definition enums.h:171
@ Md5
MD5 hash.
Definition enums.h:170
@ Sha256
SHA-256 hash.
Definition enums.h:172
@ SpamSum
SpamSum (context-triggered piecewise hash).
Definition enums.h:173
@ Invalid
Invalid / unspecified algorithm.
Definition enums.h:169
TrackType
Track (partitioning element) types for optical media.
Definition enums.h:195
@ CdMode1
Compact Disc Mode 1 data track.
Definition enums.h:198
@ Data
Generic data track (not further specified).
Definition enums.h:197
@ CdMode2Form2
Compact Disc Mode 2 Form 2 data track.
Definition enums.h:201
@ Audio
Audio track.
Definition enums.h:196
@ CdMode2Form1
Compact Disc Mode 2 Form 1 data track.
Definition enums.h:200
@ CdMode2Formless
Compact Disc Mode 2 (formless) data track.
Definition enums.h:199
DataType
List of known data types stored within an Aaru image.
Definition enums.h:44
@ DvdDiscKey
DVD disc key.
Definition enums.h:55
@ DvdPfi2ndLayer
DVD Physical Format Information for the second layer.
Definition enums.h:133
@ CompactDiscSessionInfo
Compact Disc session information.
Definition enums.h:48
@ DvdRPfi
DVD-R Physical Format Information.
Definition enums.h:66
@ ScsiMmcTrackResourcesInformation
MMC track resources information.
Definition enums.h:89
@ DvdPfi
DVD Physical Format Information.
Definition enums.h:53
@ CdSectorSubchannel
Compact Disc subchannel data.
Definition enums.h:116
@ AppleProfileTag
Apple Profile (20‑byte) tag.
Definition enums.h:117
@ HdDvdCpi
HD DVD Copy Protection Information (CPI).
Definition enums.h:68
@ DvdDlLayerCapacity
DVD dual-layer capacity.
Definition enums.h:70
@ CompactDiscAtip
Compact Disc Absolute Time In Pregroove (ATIP).
Definition enums.h:51
@ CompactDiscLeadOut
Compact Disc lead‑out.
Definition enums.h:108
@ MultiMediaCardOcr
MultiMediaCard OCR register.
Definition enums.h:102
@ ScsiMmcDiscInformation
MMC disc information.
Definition enums.h:88
@ DvdRamDds
DVD-RAM Disc Definition Structure (DDS).
Definition enums.h:60
@ DvdRamMediumStatus
DVD-RAM medium status.
Definition enums.h:61
@ AacsMediaIdentifier
AACS media identifier.
Definition enums.h:81
@ DvdSectorIed
DVD ID Error Detection Code (IED)
Definition enums.h:129
@ CdSectorPrefixCorrected
Compact Disc sector prefix (sync, header) corrected-only stored.
Definition enums.h:121
@ AacsMediaKeyBlock
AACS Media Key Block (MKB).
Definition enums.h:82
@ DvdSectorCprMai
DVD Copyright Management Information (CPR_MAI)
Definition enums.h:126
@ CompactDiscLeadInCdText
Compact Disc lead-in CD-Text.
Definition enums.h:52
@ ScsiModePage2A
SCSI MODE PAGE 2Ah.
Definition enums.h:92
@ AppleSonyTag
Apple Sony (12‑byte) tag.
Definition enums.h:118
@ SecureDigitalOcr
Secure Digital OCR register.
Definition enums.h:99
@ MultiMediaCardCsd
MultiMediaCard CSD register.
Definition enums.h:101
@ CdSectorPrefix
Compact Disc sector prefix (sync, header).
Definition enums.h:114
@ CompactDiscPartialToc
Compact Disc partial Table of Contents.
Definition enums.h:47
@ CprmMediaKeyBlock
CPRM Media Key Block (MKB).
Definition enums.h:85
@ ScsiMmcPowResourcesInformation
MMC POW (Persistent Optical Write?) resources information.
Definition enums.h:90
@ CdSectorSuffixCorrected
Compact Disc sector suffix (EDC, ECC P, ECC Q) corrected-only stored.
Definition enums.h:122
@ SecureDigitalCid
Secure Digital CID register.
Definition enums.h:96
@ CompactDiscMediaCatalogueNumber
Compact Disc Media Catalogue Number (lead‑in, 13 ASCII bytes).
Definition enums.h:120
@ XboxSecuritySector
Xbox Security Sector.
Definition enums.h:104
@ PriamDataTowerTag
Priam Data Tower (24‑byte) tag.
Definition enums.h:119
@ AacsVolumeIdentifier
AACS volume identifier.
Definition enums.h:79
@ UserData
User (main) data.
Definition enums.h:46
@ DvdDmi
DVD Disc Manufacturing Information (DMI).
Definition enums.h:57
@ ScsiInquiry
SCSI INQUIRY response.
Definition enums.h:91
@ CompactDiscToc
Compact Disc full Table of Contents.
Definition enums.h:49
@ NoData
No data.
Definition enums.h:45
@ DvdLeadInCmi
DVD lead-in Copyright Management Information (CMI).
Definition enums.h:54
@ HdDvdMediumStatus
HD DVD medium status.
Definition enums.h:69
@ DvdAdip
DVD Address In Pregroove (ADIP).
Definition enums.h:67
@ AacsLbaExtents
AACS LBA extents.
Definition enums.h:84
@ AtaIdentify
ATA IDENTIFY DEVICE data.
Definition enums.h:93
@ AacsDataKeys
AACS data keys.
Definition enums.h:83
@ BlurayDi
Blu-ray Disc Information (DI).
Definition enums.h:74
@ SecureDigitalCsd
Secure Digital CSD register.
Definition enums.h:97
@ DvdSectorEdc
DVD Error Detection Code (EDC)
Definition enums.h:130
@ DvdEccBlockPo
DVD Error Correction Code (ECC) Parity of Outer Code (PO)
Definition enums.h:132
@ BluraySpareArea
Blu-ray spare area information.
Definition enums.h:78
@ DvdDiscKeyDecrypted
Decrypted DVD Disc Key.
Definition enums.h:125
@ AtapiIdentify
ATAPI IDENTIFY PACKET DEVICE data.
Definition enums.h:94
@ SecureDigitalScr
Secure Digital SCR register.
Definition enums.h:98
@ DvdRPrerecordedInfo
DVD-R pre‑recorded information.
Definition enums.h:64
@ CompactDiscLeadIn
Compact Disc lead‑in.
Definition enums.h:124
@ PcmciaCis
PCMCIA Card Information Structure (CIS).
Definition enums.h:95
@ DvdBca
DVD Burst Cutting Area (BCA).
Definition enums.h:56
@ DvdRamSpareArea
DVD-RAM spare area information.
Definition enums.h:62
@ MultiMediaCardCid
MultiMediaCard CID register.
Definition enums.h:100
@ XboxDmi
Xbox DMI.
Definition enums.h:112
@ DvdRMediaIdentifier
DVD-R media identifier.
Definition enums.h:65
@ DvdSectorTitleKeyDecrypted
Decrypted DVD Title Key.
Definition enums.h:127
@ HybridRecognizedLayers
Recognized layers (hybrid media).
Definition enums.h:86
@ DvdSectorEccPi
DVD Error Correction Code (ECC) Parity of Inner Code (PI)
Definition enums.h:131
@ ScsiMmcWriteProtection
MMC write-protection data.
Definition enums.h:87
@ DvdDlMiddleZoneAddress
DVD dual-layer middle zone address.
Definition enums.h:71
@ DvdSectorId
DVD Identification Data (ID)
Definition enums.h:128
@ BlurayCartridgeStatus
Blu-ray cartridge status.
Definition enums.h:77
@ BlurayBca
Blu-ray Burst Cutting Area (BCA).
Definition enums.h:75
@ CompactDiscFirstTrackPregap
Compact Disc first track pre-gap.
Definition enums.h:107
@ DvdMediaIdentifier
DVD media identifier.
Definition enums.h:58
@ ScsiModeSense6
SCSI MODE SENSE (6) response.
Definition enums.h:109
@ UsbDescriptors
USB descriptors set.
Definition enums.h:111
@ AacsSerialNumber
AACS serial number.
Definition enums.h:80
@ DvdDiscControlBlock
DVD Disc Control Block.
Definition enums.h:106
@ FloppyLeadOut
Floppy lead‑out data.
Definition enums.h:105
@ ScsiModeSense10
SCSI MODE SENSE (10) response.
Definition enums.h:110
@ CompactDiscPma
Compact Disc Power Management Area (PMA).
Definition enums.h:50
@ XboxPfi
Xbox Physical Format Information (PFI).
Definition enums.h:113
@ MultiMediaCardExtendedCsd
MultiMediaCard Extended CSD register.
Definition enums.h:103
@ DvdDlManualLayerJumpLba
DVD dual-layer manual layer jump LBA.
Definition enums.h:73
@ CdSectorSuffix
Compact Disc sector suffix (EDC, ECC P, ECC Q).
Definition enums.h:115
@ DvdMediaKeyBlock
DVD Media Key Block (MKB).
Definition enums.h:59
@ DvdDlJumpIntervalSize
DVD dual-layer jump interval size.
Definition enums.h:72
@ BlurayDds
Blu-ray Disc Definition Structure (DDS).
Definition enums.h:76
@ DvdRRmd
DVD-R RMD (Recording Management Data).
Definition enums.h:63
@ CompactDiscMode2Subheader
Compact Disc MODE 2 subheader.
Definition enums.h:123
FeaturesCompatible
Bit-mask of optional, backward-compatible features stored in an image.
Definition enums.h:265
@ AARU_FEATURE_RW_BLAKE3
BLAKE3 checksum is present (read/write support for BLAKE3 hashes).
Definition enums.h:266
AaruformatStatus
Status / error codes specific to libaaruformat.
Definition enums.h:209
@ AARUF_STATUS_INVALID_CONTEXT
Provided context/handle is invalid.
Definition enums.h:210
CompressionType
List of known compression types.
Definition enums.h:32
@ Lzma
LZMA compression.
Definition enums.h:34
@ LzmaClauniaSubchannelTransform
LZMA applied to Claunia Subchannel Transform processed data.
Definition enums.h:36
@ None
Not compressed.
Definition enums.h:33
@ Flac
FLAC compression.
Definition enums.h:35