b-tree-plus-alpha
Loading...
Searching...
No Matches
stool::bptree::PermutationContainer Class Reference

The container stored in the BPTree of DynamicPermutation. More...

#include <permutation_container.hpp>

Classes

class  PermutationIterator
 The forward iterator of values stored in PermutationContainer. More...
 

Public Types

using Tree = bptree::BPTree< PermutationContainer, PermutationItem, true, false, bptree::DEFAULT_MAX_DEGREE_OF_INTERNAL_NODE, ___PermutationLeafSize >
 

Public Member Functions

PermutationIterator begin () const
 
PermutationIterator end () const
 
uint64_t size () const
 
uint64_t size_in_bytes (bool only_extra_bytes) const
 
uint64_t unused_size_in_bytes () const
 
PermutationItem at (uint64_t pos) const
 
void print () const
 
void clear ()
 
void swap (PermutationContainer &item)
 
uint64_t psum (uint64_t i) const noexcept
 
uint64_t psum () const noexcept
 
int64_t search (uint64_t x) const noexcept
 
int64_t get_index (const PermutationItem &&item) const
 
std::string to_string () const
 
std::vector< PermutationItemto_value_vector () const
 
void insert (uint64_t pos, PermutationItem value)
 
void remove (uint64_t pos)
 
void push_front (const std::vector< PermutationItem > &new_items)
 
void push_front (const PermutationItem &new_item)
 
void push_back (const std::vector< PermutationItem > &new_items)
 
void push_back (PermutationItem value)
 
PermutationItem pop_front ()
 
std::vector< PermutationItempop_front (uint64_t len)
 
PermutationItem pop_back ()
 
std::vector< PermutationItempop_back (uint64_t len)
 
uint64_t reverse_psum (uint64_t i) const
 
uint64_t psum (uint64_t i, uint64_t j) const
 
uint8_t get_new_key (uint64_t pointer_to_linked_container) const
 
void update_linked_tree (uint64_t ith, uint64_t leaf_index_of_this_container, uint64_t previous_leaf_index, Tree &linked_tree)
 
void set_value (uint64_t ith, const PermutationItem &&item)
 

Static Public Member Functions

static std::string name ()
 
static uint64_t get_byte_size (const PermutationContainer &item)
 
static uint64_t get_byte_size (const std::vector< PermutationContainer > &items)
 
static void save (const PermutationContainer &item, std::vector< uint8_t > &output, uint64_t &pos)
 
static void save (const PermutationContainer &item, std::ofstream &os)
 
static void save (const std::vector< PermutationContainer > &items, std::vector< uint8_t > &output, uint64_t &pos)
 
static void save (const std::vector< PermutationContainer > &items, std::ofstream &os)
 
static PermutationContainer load (const std::vector< uint8_t > &data, uint64_t &pos)
 
static PermutationContainer load (std::ifstream &ifs)
 
static std::vector< PermutationContainerload_vector (const std::vector< uint8_t > &data, uint64_t &pos)
 
static std::vector< PermutationContainerload_vector (std::ifstream &ifs)
 

Static Public Attributes

static constexpr uint64_t ___PermutationLeafSize = 252
 

Detailed Description

The container stored in the BPTree of DynamicPermutation.


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