PST File Format SDK v0.4
Loading...
Searching...
No Matches
btree.h File Reference

Generic BTree implementation. More...

#include <iterator>
#include <vector>
#include <boost/iterator/iterator_facade.hpp>
#include "pstsdk/util/primitives.h"
#include "pstsdk/util/errors.h"
+ Include dependency graph for btree.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  pstsdk::btree_node< K, V >
 A BTree Node. More...
 
class  pstsdk::btree_node_leaf< K, V >
 Represents a leaf node in a BTree structure. More...
 
class  pstsdk::btree_node_nonleaf< K, V >
 Represents a non-leaf node in a BTree structure. More...
 
struct  pstsdk::btree_iter_impl< K, V >
 BTree iterator helper class. More...
 
class  pstsdk::const_btree_node_iter< K, V >
 The actual iterator type used by the btree_node class hierarchy. More...
 

Namespaces

namespace  pstsdk
 Contains the definition of all in memory representations of disk structures.
 

Detailed Description

Generic BTree implementation.

Author
Terry Mahaffey

BTrees show up three times in the PST file format - the NBT/BBT, in sub_blocks, and in the BTH. It is useful to have some generic BTree hierarchy setup to centralize some common BTree logic such as iteration, lookups, etc. This file lays out that structure. Specific BTree implementations will inherit and minimic this class hierarchy, and only provide implementations of a few virtual functions.

Definition in file btree.h.