tlx
SSTreeBuilderPreAndLevelOrder< key_type, num_splitters > Class Template Reference

Recursive TreeBuilder for full-descent and unrolled variants, constructs a both a pre-order and level-order array of splitters and the corresponding LCPs. More...

#include <sample_sort_tools.hpp>

Public Member Functions

 SSTreeBuilderPreAndLevelOrder (key_type splitter[num_splitters], key_type tree[num_splitters+1], unsigned char splitter_lcp[num_splitters+1], const key_type *samples, size_t samplesize)
 
ptrdiff_t snum (const key_type *s) const
 
key_type recurse (const key_type *lo, const key_type *hi, unsigned int treeidx, key_type &rec_prevkey)
 

Private Attributes

key_type * splitter_
 
key_type * tree_
 
unsigned char * lcp_iter_
 
const key_type * samples_
 

Static Private Attributes

static const bool debug_splitter
 

Detailed Description

template<typename key_type, size_t num_splitters>
class tlx::sort_strings_detail::SSTreeBuilderPreAndLevelOrder< key_type, num_splitters >

Recursive TreeBuilder for full-descent and unrolled variants, constructs a both a pre-order and level-order array of splitters and the corresponding LCPs.

Definition at line 122 of file sample_sort_tools.hpp.

Constructor & Destructor Documentation

SSTreeBuilderPreAndLevelOrder ( key_type  splitter[num_splitters],
key_type  tree[num_splitters+1],
unsigned char  splitter_lcp[num_splitters+1],
const key_type *  samples,
size_t  samplesize 
)
inline

Definition at line 129 of file sample_sort_tools.hpp.

Member Function Documentation

key_type recurse ( const key_type *  lo,
const key_type *  hi,
unsigned int  treeidx,
key_type &  rec_prevkey 
)
inline

Definition at line 150 of file sample_sort_tools.hpp.

ptrdiff_t snum ( const key_type *  s) const
inline

Definition at line 146 of file sample_sort_tools.hpp.

Member Data Documentation

const bool debug_splitter
staticprivate

Definition at line 124 of file sample_sort_tools.hpp.

unsigned char* lcp_iter_
private

Definition at line 225 of file sample_sort_tools.hpp.

const key_type* samples_
private

Definition at line 226 of file sample_sort_tools.hpp.

key_type* splitter_
private

Definition at line 223 of file sample_sort_tools.hpp.

key_type* tree_
private

Definition at line 224 of file sample_sort_tools.hpp.


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