|
PST File Format SDK v0.4
|
Contains references to other bth_node allocations. More...
#include <heap.h>
Inheritance diagram for pstsdk::bth_nonleaf_node< K, V >:
Collaboration diagram for pstsdk::bth_nonleaf_node< K, V >:Public Member Functions | |
| bth_nonleaf_node (const heap_ptr &h, heap_id id, ushort level, std::vector< std::pair< K, heap_id > > bth_info) | |
| Construct a bth_nonleaf_node. | |
| const K & | get_key (uint pos) const |
| Returns the key at the specified position. | |
| bth_node< K, V > * | get_child (uint pos) |
| Returns the child btree_node at the requested location. | |
| const bth_node< K, V > * | get_child (uint pos) const |
| Returns the child btree_node at the requested location. | |
| uint | num_values () const |
| Returns the number of entries in this btree_node. | |
Public Member Functions inherited from pstsdk::bth_node< K, V > | |
| bth_node (const heap_ptr &h, heap_id id, ushort level) | |
| Construct a bth_node object. | |
| virtual | ~bth_node () |
| heap_id | get_id () const |
| Return the heap_id of this bth_node. | |
| ushort | get_level () const |
| Return the leve of this bth_node. | |
| size_t | get_key_size () const |
| Return the key size of this bth. | |
| size_t | get_value_size () const |
| Return the value size of this bth. | |
| const heap_ptr | get_heap_ptr () const |
| Returns the heap this bth_node is in. | |
| heap_ptr | get_heap_ptr () |
| Returns the heap this bth_node is in. | |
| const node & | get_node () const |
| Get the node underlying this BTH. | |
| node & | get_node () |
| Get the node underlying this BTH. | |
Public Member Functions inherited from pstsdk::btree_node< K, V > | |
| virtual | ~btree_node () |
| const_iterator | begin () const |
| Returns a STL style iterator positioned at the first entry. | |
| const_iterator | end () const |
| Returns a STL style iterator positioned at the "end" entry. | |
| int | binary_search (const K &key) const |
| Performs a binary search over the keys of this btree_node. | |
Public Member Functions inherited from pstsdk::btree_node_nonleaf< K, V > | |
| virtual | ~btree_node_nonleaf () |
| const V & | lookup (const K &key) const |
| Looks up the associated value for a given key. | |
Additional Inherited Members | |
Public Types inherited from pstsdk::btree_node< K, V > | |
| typedef const_btree_node_iter< K, V > | const_iterator |
Static Public Member Functions inherited from pstsdk::bth_node< K, V > | |
| static std::shared_ptr< bth_node< K, V > > | open_root (const heap_ptr &h, heap_id bth_root) |
| Opens a BTH node from the specified heap at the given root. | |
| static std::shared_ptr< bth_nonleaf_node< K, V > > | open_nonleaf (const heap_ptr &h, heap_id id, ushort level) |
| Open a non-leaf BTH node. | |
| static std::shared_ptr< bth_leaf_node< K, V > > | open_leaf (const heap_ptr &h, heap_id id) |
| Open a leaf BTH node. | |
Protected Member Functions inherited from pstsdk::btree_node_nonleaf< K, V > | |
| void | first (btree_iter_impl< K, V > &iter) const |
| Positions the iterator at the first element on this tree. | |
| void | last (btree_iter_impl< K, V > &iter) const |
| Positions the iterator at the "end" element. | |
| void | next (btree_iter_impl< K, V > &iter) const |
| Moves the iterator to the next element. | |
| void | prev (btree_iter_impl< K, V > &iter) const |
| Moves the iterator to the previous element. | |
Protected Attributes inherited from pstsdk::bth_node< K, V > | |
| heap_ptr | m_heap |
Contains references to other bth_node allocations.
| K | The key type for this BTH |
| V | The value type for this BTH |
|
inline |
Construct a bth_nonleaf_node.
| [in] | h | The heap to open out of |
| [in] | id | The id to interpret as a non-leaf BTH node |
| [in] | level | The level of this bth_nonleaf_node (non-zero) |
| [in] | bth_info | The info about child bth_node allocations |
|
inlinevirtual |
Returns the child btree_node at the requested location.
| [in] | i | The position at which to get the child |
Implements pstsdk::btree_node_nonleaf< K, V >.
|
inlinevirtual |
Returns the child btree_node at the requested location.
| [in] | i | The position at which to get the child |
Implements pstsdk::btree_node_nonleaf< K, V >.
|
inlinevirtual |
Returns the key at the specified position.
This is specific to this btree_node, not the entire tree
| [in] | pos | The position to retrieve the key for |
Implements pstsdk::btree_node< K, V >.
|
inlinevirtual |
Returns the number of entries in this btree_node.
This is specific to this btree_node, not the entire tree
Implements pstsdk::btree_node< K, V >.