21#define APFS_OBJECT_TYPE_NX_SUPERBLOCK 0x00000001U
22#define APFS_OBJECT_TYPE_BTREE 0x00000002U
23#define APFS_OBJECT_TYPE_BTREE_NODE 0x00000003U
24#define APFS_OBJECT_TYPE_SPACEMAN 0x00000005U
25#define APFS_OBJECT_TYPE_SPACEMAN_CAB 0x00000006U
26#define APFS_OBJECT_TYPE_SPACEMAN_CIB 0x00000007U
27#define APFS_OBJECT_TYPE_SPACEMAN_BITMAP 0x00000008U
28#define APFS_OBJECT_TYPE_SPACEMAN_FREE_QUEUE 0x00000009U
29#define APFS_OBJECT_TYPE_EXTENT_LIST_TREE 0x0000000aU
30#define APFS_OBJECT_TYPE_OMAP 0x0000000bU
31#define APFS_OBJECT_TYPE_CHECKPOINT_MAP 0x0000000cU
32#define APFS_OBJECT_TYPE_FS 0x0000000dU
33#define APFS_OBJECT_TYPE_FSTREE 0x0000000eU
34#define APFS_OBJECT_TYPE_BLOCKREFTREE 0x0000000fU
35#define APFS_OBJECT_TYPE_SNAPMETATREE 0x00000010U
36#define APFS_OBJECT_TYPE_NX_REAPER 0x00000011U
37#define APFS_OBJECT_TYPE_NX_REAP_LIST 0x00000012U
38#define APFS_OBJECT_TYPE_OMAP_SNAPSHOT 0x00000013U
39#define APFS_OBJECT_TYPE_EFI_JUMPSTART 0x00000014U
40#define APFS_OBJECT_TYPE_FUSION_MIDDLE_TREE 0x00000015U
41#define APFS_OBJECT_TYPE_NX_FUSION_WBC 0x00000016U
42#define APFS_OBJECT_TYPE_NX_FUSION_WBC_LIST 0x00000017U
43#define APFS_OBJECT_TYPE_ER_STATE 0x00000018U
44#define APFS_OBJECT_TYPE_GBITMAP 0x00000019U
45#define APFS_OBJECT_TYPE_GBITMAP_TREE 0x0000001aU
46#define APFS_OBJECT_TYPE_GBITMAP_BLOCK 0x0000001bU
47#define APFS_OBJECT_TYPE_INVALID 0x00000000U
48#define APFS_OBJECT_TYPE_TEST 0x000000ffU
53#define APFS_OBJ_VIRTUAL 0x00000000U
54#define APFS_OBJ_EPHEMERAL 0x80000000U
55#define APFS_OBJ_PHYSICAL 0x40000000U
56#define APFS_OBJ_NOHEADER 0x20000000U
57#define APFS_OBJ_ENCRYPTED 0x10000000U
58#define APFS_OBJ_NONPERSISTENT 0x08000000U
63#define APFS_NX_SIGNATURE SIGNATURE_32 ('N', 'X', 'S', 'B')
64#define APFS_NX_MAX_FILE_SYSTEMS 100
65#define APFS_NX_EPH_INFO_COUNT 4
66#define APFS_NX_EPH_MIN_BLOCK_COUNT 8
67#define APFS_NX_MAX_FILE_SYSTEM_EPH_STRUCTS 4
68#define APFS_NX_TX_MIN_CHECKPOINT_COUNT 4
69#define APFS_NX_EPH_INFO_VERSION_1 1
70#define APFS_NX_NUM_COUNTERS 32
71#define APFS_NX_MINIMUM_BLOCK_SIZE BASE_4KB
72#define APFS_NX_DEFAULT_BLOCK_SIZE BASE_4KB
73#define APFS_NX_MAXIMUM_BLOCK_SIZE BASE_64KB
78#define APFS_NX_EFI_JUMPSTART_MAGIC SIGNATURE_32 ('J', 'S', 'D', 'R')
79#define APFS_NX_EFI_JUMPSTART_VERSION 1
81#define APFS_MAX_HIST 8
82#define APFS_MODIFIED_NAMELEN 32
83#define APFS_VOLNAME_LEN 256
88#define APFS_FUSION_TIER2_DEVICE_BYTE_ADDR 0x4000000000000000ULL
93#define APFS_DRIVER_VERSION_MAGIC SIGNATURE_32 ('A', 'P', 'F', 'S')
#define APFS_NX_MAX_FILE_SYSTEMS
#define APFS_NX_EPH_INFO_COUNT
#define APFS_NX_NUM_COUNTERS
struct APFS_DRIVER_VERSION_ APFS_DRIVER_VERSION
STATIC_ASSERT(sizeof(APFS_NX_SUPERBLOCK)==1384, "APFS_NX_SUPERBLOCK has unexpected size")
struct APFS_OBJ_PHYS_ APFS_OBJ_PHYS
struct APFS_APFS_SUPERBLOCK_ APFS_APFS_SUPERBLOCK
struct PhysicalRange_ APFS_PHYSICAL_RANGE
struct APFS_NX_SUPERBLOCK_ APFS_NX_SUPERBLOCK
struct APFS_NX_EFI_JUMPSTART_ APFS_NX_EFI_JUMPSTART
#define APFS_MODIFIED_NAMELEN
UINT64 TotalBlocksAllocated
UINT64 ReadOnlyCompatibleFeatures
APFS_MODIFIED_BY FormattedBy
UINT8 VolumeName[APFS_VOLNAME_LEN]
UINT64 FsReserveBlockCount
APFS_MODIFIED_BY ModifiedBy[APFS_MAX_HIST]
APFS_WRAPPED_CRYPTO_STATE MetaCrypto
UINT64 IncompatibleFeatures
APFS_OBJ_PHYS BlockHeader
APFS_PHYSICAL_RANGE RecordExtents[]
APFS_OBJ_PHYS BlockHeader
UINT64 Counters[APFS_NX_NUM_COUNTERS]
APFS_PHYSICAL_RANGE BlockedOutPhysicalRange
APFS_PHYSICAL_RANGE FusionWbc
UINT64 IncompatibleFeatures
UINT64 ReadOnlyCompatibleFeatures
APFS_OBJ_PHYS BlockHeader
UINT64 EphermalInfo[APFS_NX_EPH_INFO_COUNT]
UINT64 FileSystemOid[APFS_NX_MAX_FILE_SYSTEMS]
UINT64 EvictMappingTreeOid
APFS_PHYSICAL_RANGE KeyLocker