|
PST File Format SDK v0.4
|
BTree iterator helper class. More...
#include <btree.h>
Collaboration diagram for pstsdk::btree_iter_impl< K, V >:Public Types | |
| typedef std::vector< std::pair< btree_node_nonleaf< K, V > *, uint > >::iterator | path_iter |
Public Attributes | |
| btree_node_leaf< K, V > * | m_leaf |
| The current leaf btree node this iterator is pointing to. | |
| uint | m_leaf_pos |
| The current position on that leaf. | |
| std::vector< std::pair< btree_node_nonleaf< K, V > *, uint > > | m_path |
| The "path" to this leaf, starting at the root of the btree. | |
BTree iterator helper class.
This is a utility struct, the details of which are known to both the iterator type itself and the various node classes. The iterator class defers to the btree_node classes for the actual iteration logic. It does this by calling into them (private methods, via friendship) and passing in this object.
| K | key type |
| V | value type |
| typedef std::vector<std::pair<btree_node_nonleaf<K,V>*,uint>>::iterator pstsdk::btree_iter_impl< K, V >::path_iter |
| btree_node_leaf<K,V>* pstsdk::btree_iter_impl< K, V >::m_leaf |
| uint pstsdk::btree_iter_impl< K, V >::m_leaf_pos |
| std::vector<std::pair<btree_node_nonleaf<K,V>*, uint> > pstsdk::btree_iter_impl< K, V >::m_path |