|
PST File Format SDK v0.4
|
Collaboration diagram for Block Structures:Classes | |
| struct | pstsdk::disk::block_trailer< ulonglong > |
| Unicode store version of the block trailer. More... | |
| struct | pstsdk::disk::block_trailer< ulong > |
| ANSI store version of the block trailer. More... | |
| struct | pstsdk::disk::external_block< T > |
| External block definition. More... | |
| struct | pstsdk::disk::extended_block< ulonglong > |
| Unicode store version of the extended block. More... | |
| struct | pstsdk::disk::extended_block< ulong > |
| ANSI store version of the extended block. More... | |
| struct | pstsdk::disk::sub_leaf_entry< T > |
| Entries on a leaf sub_block. More... | |
| struct | pstsdk::disk::sub_nonleaf_entry< T > |
| Entries on a nonleaf sub_block. More... | |
| struct | pstsdk::disk::sub_block< T, EntryType > |
| Subnode Blocks. More... | |
| struct | pstsdk::disk::sub_nonleaf_block< T > |
| Subnode non-leaf block. More... | |
| struct | pstsdk::disk::sub_leaf_block< T > |
| Subnode leaf block. More... | |
Enumerations | |
| enum | pstsdk::disk::block_types { pstsdk::disk::block_type_external = 0x00 , pstsdk::disk::block_type_extended = 0x01 , pstsdk::disk::block_type_sub = 0x02 } |
| The different block types. More... | |
Functions | |
| template<typename T > | |
| size_t | pstsdk::disk::align_disk (size_t size) |
| Aligns a block size to the size on disk. | |
| size_t | pstsdk::disk::align_slot (size_t size) |
| Aligns a block size to the slot size. | |
| template<typename T > | |
| bool | pstsdk::disk::bid_is_external (T bid) |
| Determines if a block is external or not. | |
| template<typename T > | |
| bool | pstsdk::disk::bid_is_internal (T bid) |
| Determines if a block is internal or not. | |
Variables | |
| const size_t | pstsdk::disk::max_block_disk_size = 8 * 1024 |
| The maximum individual block size. | |
| const uint | pstsdk::disk::block_id_internal_bit = 0x2 |
| The internal bit indicates a block is an extended_block or a subnode_block. | |
| const uint | pstsdk::disk::block_id_increment = 0x4 |
| The block id counter in the header is incremented by this amount for each block. | |
|
inline |
Aligns a block size to the size on disk.
Adds the block trailer and slot alignment to the data size
| [in] | size | Block size |
|
inline |
Aligns a block size to the slot size.
Round size up to the next largest multiple of bytes_per_slot
| [in] | size | Block size |
| bool pstsdk::disk::bid_is_external | ( | T | bid | ) |
| bool pstsdk::disk::bid_is_internal | ( | T | bid | ) |
The internal bit indicates a block is an extended_block or a subnode_block.