15#ifndef OC_APFS_INTERNAL_H
16#define OC_APFS_INTERNAL_H
20#include <Protocol/BlockIo.h>
23#define APFS_PRIVATE_DATA_SIGNATURE SIGNATURE_32 ('A', 'F', 'J', 'S')
31#define APFS_MOD_MAX_UINT32(Value, Result) do { *(Result) = ((Value) % MAX_UINT32); } while (0)
33#define APFS_MOD_MAX_UINT32(Value, Result) do { DivU64x32Remainder ((Value), MAX_UINT32, (Result)); } while (0)
103 IN EFI_BLOCK_IO_PROTOCOL *BlockIo,
110 OUT UINT32 *DriverSize,
111 OUT VOID **DriverBuffer
120EFI_BLOCK_IO_PROTOCOL *
LIST_ENTRY mApfsPrivateDataList
EFI_BLOCK_IO_PROTOCOL * InternalApfsTranslateBlock(IN APFS_PRIVATE_DATA *PrivateData, IN UINT64 Block, OUT EFI_LBA *Lba)
VOID InternalApfsInitFusionData(IN APFS_NX_SUPERBLOCK *SuperBlock, OUT APFS_PRIVATE_DATA *PrivateData)
EFI_STATUS InternalApfsReadDriver(IN APFS_PRIVATE_DATA *PrivateData, OUT UINT32 *DriverSize, OUT VOID **DriverBuffer)
EFI_STATUS InternalApfsReadSuperBlock(IN EFI_BLOCK_IO_PROTOCOL *BlockIo, OUT APFS_NX_SUPERBLOCK **SuperBlockPtr)
struct APFS_PRIVATE_DATA_ APFS_PRIVATE_DATA
APFS_PRIVATE_DATA * FusionSibling
APFS_EFIBOOTRECORD_LOCATION_INFO LocationInfo
EFI_BLOCK_IO_PROTOCOL * BlockIo