Fairport  v1.0.38
fairport::bt_nonleaf_page< K, V > Class Template Reference

Contains references to other bt_pages. More...

#include <page.h>

+ Inheritance diagram for fairport::bt_nonleaf_page< K, V >:
+ Collaboration diagram for fairport::bt_nonleaf_page< K, V >:

List of all members.

Public Member Functions

 bt_nonleaf_page (const shared_db_ptr &db, const page_info &pi, ushort level, std::vector< std::pair< K, page_info > > subpi)
 Construct a bt_nonleaf_page from disk.
const K & get_key (uint pos) const
 Returns the key at the specified position.
bt_page< K, V > * get_child (uint pos)
 Returns the child btree_node at the requested location.
const bt_page< 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.

Detailed Description

template<typename K, typename V>
class fairport::bt_nonleaf_page< K, V >

Contains references to other bt_pages.

A bt_nonleaf_page makes up the body of the NBT and BBT (which differ only at the leaf).

Template Parameters:
Kkey type
Vvalue type
See also:
[MS-PST] 2.2.2.7.7.2

Definition at line 119 of file page.h.


Constructor & Destructor Documentation

template<typename K , typename V >
fairport::bt_nonleaf_page< K, V >::bt_nonleaf_page ( const shared_db_ptr db,
const page_info pi,
ushort  level,
std::vector< std::pair< K, page_info > >  subpi 
) [inline]

Construct a bt_nonleaf_page from disk.

Parameters:
[in]dbThe database context
[in]piInformation about this page
[in]levelDistance from leaf
[in]subpiInformation about the child pages

Definition at line 131 of file page.h.


Member Function Documentation

template<typename K , typename V >
bt_page<K,V>* fairport::bt_nonleaf_page< K, V >::get_child ( uint  i) [virtual]

Returns the child btree_node at the requested location.

Parameters:
[in]iThe position at which to get the child
Returns:
a non-owning pointer of the child btree_node

Implements fairport::btree_node_nonleaf< K, V >.

template<typename K , typename V >
const bt_page<K,V>* fairport::bt_nonleaf_page< K, V >::get_child ( uint  i) const [virtual]

Returns the child btree_node at the requested location.

Parameters:
[in]iThe position at which to get the child
Returns:
a non-owning pointer of the child btree_node

Implements fairport::btree_node_nonleaf< K, V >.

template<typename K , typename V >
const K& fairport::bt_nonleaf_page< K, V >::get_key ( uint  pos) const [inline, virtual]

Returns the key at the specified position.

This is specific to this btree_node, not the entire tree

Parameters:
[in]posThe position to retrieve the key for
Returns:
The key at the requested position

Implements fairport::btree_node< K, V >.

Definition at line 139 of file page.h.

template<typename K , typename V >
uint fairport::bt_nonleaf_page< K, V >::num_values ( ) const [inline, virtual]

Returns the number of entries in this btree_node.

This is specific to this btree_node, not the entire tree

Returns:
The number of keys in this btree_node

Implements fairport::btree_node< K, V >.

Definition at line 142 of file page.h.


The documentation for this class was generated from the following file: