Fairport  v1.0.38
fairport/util/btree.h File Reference

Generic BTree implementation. More...

#include <iterator>
#include <vector>
#include <boost/iterator/iterator_facade.hpp>
#include "fairport/util/primitives.h"
#include "fairport/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  fairport::btree_node< K, V >
 A BTree Node. More...
class  fairport::btree_node_leaf< K, V >
 Represents a leaf node in a BTree structure. More...
class  fairport::btree_node_nonleaf< K, V >
 Represents a non-leaf node in a BTree structure. More...
struct  fairport::btree_iter_impl< K, V >
 BTree iterator helper class. More...
class  fairport::const_btree_node_iter< K, V >
 The actual iterator type used by the btree_node class hierarchy. More...

Namespaces

namespace  fairport
 

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.