Inner node structure of the B-tree inner pages. More...
#include <stx-cbtreedb.h>
Public Member Functions | |
InnerNode (uint16_t level_) | |
Initializes structure with zero. | |
bool | IsFull () const |
Returns true if no more keys can be added. | |
const key_type & | LastKey () const |
Returns the currently last key in the node. | |
Public Attributes | |
uint16_t | level |
level of this inner node, always > 0. | |
uint16_t | slots |
number of used slots in the arrays. | |
uint32_t | childrenoffset |
base offset of child B-tree nodes enumerated by keys. | |
union { | |
key_type keys [InnerNodeNumKeys] | |
key array of ascending keys in this inner node. | |
char filler [BTreePageSize-InnerNodeHead] | |
union with filler char array to assure page size. | |
}; |
Inner node structure of the B-tree inner pages.
Each inner node has n+1 children nodes, where n is the number of keys in the node. The n+1 children nodes are stored consecutively starting at childrenoffset.
Definition at line 264 of file stx-cbtreedb.h.
stx::CBTreeDB< _Key, _Compare, _BTreePageSize, _AppVersionId >::InnerNode::InnerNode | ( | uint16_t | level_ | ) | [inline, explicit] |
Initializes structure with zero.
Definition at line 285 of file stx-cbtreedb.h.
bool stx::CBTreeDB< _Key, _Compare, _BTreePageSize, _AppVersionId >::InnerNode::IsFull | ( | ) | const [inline] |
Returns true if no more keys can be added.
Definition at line 292 of file stx-cbtreedb.h.
const key_type& stx::CBTreeDB< _Key, _Compare, _BTreePageSize, _AppVersionId >::InnerNode::LastKey | ( | ) | const [inline] |
Returns the currently last key in the node.
Definition at line 298 of file stx-cbtreedb.h.
union { ... } |
uint32_t stx::CBTreeDB< _Key, _Compare, _BTreePageSize, _AppVersionId >::InnerNode::childrenoffset |
base offset of child B-tree nodes enumerated by keys.
Definition at line 273 of file stx-cbtreedb.h.
char stx::CBTreeDB< _Key, _Compare, _BTreePageSize, _AppVersionId >::InnerNode::filler[BTreePageSize-InnerNodeHead] |
union with filler char array to assure page size.
Definition at line 281 of file stx-cbtreedb.h.
key_type stx::CBTreeDB< _Key, _Compare, _BTreePageSize, _AppVersionId >::InnerNode::keys[InnerNodeNumKeys] |
key array of ascending keys in this inner node.
Definition at line 278 of file stx-cbtreedb.h.
uint16_t stx::CBTreeDB< _Key, _Compare, _BTreePageSize, _AppVersionId >::InnerNode::level |
level of this inner node, always > 0.
Definition at line 267 of file stx-cbtreedb.h.
uint16_t stx::CBTreeDB< _Key, _Compare, _BTreePageSize, _AppVersionId >::InnerNode::slots |
number of used slots in the arrays.
Definition at line 270 of file stx-cbtreedb.h.