b-tree-plus-alpha
Loading...
Searching...
No Matches
stool::bptree::BPInternalNode< LEAF_CONTAINER, VALUE, MAX_DEGREE, USE_PSUM > Class Template Reference

The internal node of BPTree [Unchecked AI's Comment]. More...

#include <bp_internal_node.hpp>

Public Member Functions

Initializers

Initializers

void initialize (const std::vector< InternalNode * > &_children, bool _is_parent_of_leaves, const std::vector< LEAF_CONTAINER > &_leaf_container_vec)
 
void initialize (BPInternalNode *_left_node, BPInternalNode *_right_node, const std::vector< LEAF_CONTAINER > &_leaf_container_vec)
 
void initialize (uint64_t _left_node, uint64_t _right_node, const std::vector< LEAF_CONTAINER > &leaf_container_vec)
 
void initialize (bool _is_parent_of_leaves, const std::vector< LEAF_CONTAINER > &_leaf_container_vec)
 
void set_parent (InternalNode *_parent)
 
Operations on the count deque
int64_t search_query_on_count_deque (uint64_t value, uint64_t &sum) const
 
uint64_t psum_on_count_deque (uint64_t pos) const
 
uint64_t access_count_deque (uint64_t pos) const
 
uint64_t psum_on_count_deque () const
 
void pop_back_many_on_count_deque (uint64_t len)
 
void pop_front_many_on_count_deque (uint64_t len)
 
void push_front_many_on_count_deque (std::vector< uint64_t > values)
 
void push_back_many_on_count_deque (std::vector< uint64_t > values)
 
void increment_on_count_deque (uint64_t pos, int64_t value)
 
void decrement_on_count_deque (uint64_t pos, int64_t value)
 
Operations on the sum deque
int64_t search_query_on_sum_deque (uint64_t value, uint64_t &sum) const
 
void pop_back_on_sum_deque ()
 
void pop_front_on_sum_deque ()
 
void push_front_on_sum_deque (uint64_t value)
 
void push_back_on_sum_deque (uint64_t value)
 
void increment_on_sum_deque (uint64_t pos, int64_t value)
 
void decrement_on_sum_deque (uint64_t pos, int64_t value)
 
uint64_t access_last_item_on_sum_deque () const
 
uint64_t psum_on_sum_deque () const
 
uint64_t access_sum_deque (uint64_t pos) const
 
uint64_t psum_on_sum_deque (uint64_t pos) const
 
Properties

Properties

const stool::SimpleDeque16< InternalNode * > & get_children () const
 
stool::SimpleDeque16< InternalNode * > & get_children ()
 
bool has_parent_pointer_field () const
 
bool is_parent_of_leaves () const
 
uint64_t children_count () const
 
InternalNodeget_child (uint64_t ith) const
 
uint64_t get_degree () const
 
uint64_t get_height () const
 
uint64_t size_in_bytes () const
 
int64_t get_index (InternalNode *node) const
 
InternalNodeget_parent () const
 
Print and verification functions

Print and verification functions

void print_info (int message_paragraph=stool::Message::SHOW_MESSAGE) const
 
Non-const functions

Non-const functions

void clear ()
 
void increment (uint64_t child_index, int64_t count_delta, int64_t sum_delta)
 
void move_container_index (uint64_t child_index, uint64_t new_leaf_index, std::vector< LEAF_CONTAINER > &leaf_container_vec)
 
void insert_child (uint64_t pos, InternalNode *child, uint64_t child_count, uint64_t child_sum)
 
void append_child (InternalNode *child, uint64_t child_count, uint64_t child_sum)
 
void remove_child (uint64_t pos)
 
std::string to_string () const
 

Detailed Description

template<typename LEAF_CONTAINER, typename VALUE, uint64_t MAX_DEGREE, bool USE_PSUM>
class stool::bptree::BPInternalNode< LEAF_CONTAINER, VALUE, MAX_DEGREE, USE_PSUM >

The internal node of BPTree [Unchecked AI's Comment].


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