SDSL 3.0.3
Succinct Data Structure Library
|
Namespace for the succinct data structure library. More...
Namespaces | |
namespace | algorithm |
namespace | coder |
Namespace for the different coder of the sdsl. | |
namespace | conf |
namespace | detail |
namespace | k2_treap_ns |
namespace | k2_tree_ns |
Namespace for the k2_tree. | |
namespace | qsufsort |
namespace | ram_fs |
namespace | util |
A namespace for helper functions. |
Classes | |
struct | _balanced_shape |
class | _bwt_sampling |
struct | _byte_tree |
class | _fuzzy_isa_sampling_support |
class | _fuzzy_sa_sampling |
struct | _huff_shape |
struct | _hutu_shape |
struct | _int_tree |
struct | _interval_symbols_wt |
struct | _interval_symbols_wt< t_wt, false > |
class | _isa_sampling |
class | _lcp_support_sada |
A class to represent the LCP array in compressed form. More... | |
class | _lcp_support_tree |
This class composes a virtual LCP array from a LCP arrays which is in suffix array order (e.g. More... | |
class | _lcp_support_tree2 |
An lcp array class for cst_sct3 and cst_sada. More... | |
struct | _node |
class | _sa_order_sampling |
struct | _symbols_calls_wt |
struct | _symbols_calls_wt< t_wt, false > |
class | _text_order_isa_sampling_support |
class | _text_order_sampling |
struct | _trbudget_t |
struct | alphabet_tag |
struct | alphabet_trait |
struct | alphabet_trait< int_alphabet_tag > |
struct | balanced_shape |
struct | bfoot |
class | binomial15_impl |
struct | binomial_coefficients |
A struct for the binomial coefficients ![]() | |
struct | binomial_coefficients_trait |
Trait struct for the binomial coefficient struct to handle different type of integers. More... | |
struct | binomial_coefficients_trait< 7 > |
Specialization of binomial_coefficients_trait for 128-bit integers. More... | |
struct | binomial_coefficients_trait< 8 > |
Specialization of binomial_coefficients_trait for 256-bit integers. More... | |
struct | binomial_table |
class | bit_vector_il |
A bit vector which interleaves the original bit_vector with rank information. More... | |
struct | bits_impl |
A helper class for bitwise tricks on 64 bit words. More... | |
struct | bp_interval |
class | bp_support_g |
A class that provides support for bit_vectors that represent a BP sequence. More... | |
class | bp_support_gg |
A class that provides support for bit_vectors that represent a BP sequence. More... | |
class | bp_support_sada |
A class that provides support for bit_vectors that represent a BP sequence. More... | |
class | buffered_char_queue |
struct | bv_tag |
class | bwt_of_csa_psi |
A wrapper for the bwt of a compressed suffix array that is based on the ![]() | |
class | bwt_of_csa_wt |
class | byte_alphabet |
A simple space greedy representation for byte alphabets. More... | |
struct | byte_alphabet_tag |
struct | byte_tree |
struct | cache_config |
Helper class for construction process. More... | |
struct | construct_config_data |
class | csa_bitcompressed |
A class for the uncompressed suffix array (SA). More... | |
struct | csa_member_tag |
class | csa_sada |
A class for the Compressed Suffix Array (CSA) proposed by Sadakane for practical implementation. More... | |
struct | csa_tag |
class | csa_wt |
A class for the Compressed Suffix Array (CSA) based on a Wavelet Tree (WT) of the Burrow Wheeler Transform of the original text. More... | |
class | cst_bfs_iterator |
A forward iterator for a breath first traversal of a tree. More... | |
class | cst_bottom_up_const_forward_iterator |
A forward iterator for a bottom up traversal of a suffix tree. More... | |
class | cst_dfs_const_forward_iterator |
An forward iterator for (compressed) suffix trees. More... | |
class | cst_fully |
A class for the Fully-Compressed Suffix Tree (FCST) proposed by Russo et al. More... | |
class | cst_node_child_proxy |
class | cst_node_child_proxy_iterator |
class | cst_sada |
A class for the Compressed Suffix Tree (CST) proposed by Sadakane. More... | |
class | cst_sct3 |
A class for the Compressed Suffix Tree (CST) proposed by Ohlebusch and Gog. More... | |
struct | cst_tag |
class | dac_vector |
A generic immutable space-saving vector class for unsigned integers. More... | |
struct | default_sentinel |
struct | default_sentinel< t_csx, byte_alphabet_tag > |
struct | default_sentinel< t_csx, int_alphabet_tag > |
struct | enable_if_type |
class | enc_vector |
A generic immutable space-saving vector class for unsigned integers. More... | |
struct | enc_vector_trait |
struct | enc_vector_trait< 32 > |
struct | enc_vector_trait< 64 > |
struct | excess |
struct | fast_cache |
class | first_row_of_csa |
struct | fuzzy_isa_sampling_support |
struct | fuzzy_sa_sampling |
struct | has_expand |
struct | has_expand< t_wt, t_ret(t_args...)> |
struct | has_id |
struct | has_interval_symbols |
struct | has_load |
struct | has_node_type |
struct | has_node_type< t_wt, typename void_< typename t_wt::node_type >::type > |
struct | has_range_search_2d |
struct | has_serialize |
struct | has_symbols_wt |
struct | huff_shape |
class | hugepage_allocator |
struct | hutu_shape |
class | hyb_vector |
A hybrid-encoded compressed bitvector representation. More... | |
struct | index_tag |
struct | index_tag< t_idx, typename enable_if_type< typename t_idx::index_category >::type > |
class | int_alphabet |
A space-efficient representation for byte alphabets. More... | |
struct | int_alphabet_tag |
struct | int_tree |
struct | int_vec_category_trait |
struct | int_vec_category_trait< 1 > |
class | int_vector |
A generic vector class for integers of width ![]() | |
class | int_vector_buffer |
class | int_vector_const_iterator |
class | int_vector_iterator |
class | int_vector_iterator_base |
class | int_vector_load_vbyte_wrapper |
class | int_vector_load_vlen_wrapper |
class | int_vector_load_wrapper |
class | int_vector_mapper |
class | int_vector_reference |
A proxy class that acts as a reference to an integer of length len bits in a int_vector. More... | |
class | int_vector_reference< bit_vector > |
class | int_vector_serialize_min_overhead |
class | int_vector_serialize_vbyte_wrapper |
class | int_vector_serialize_vlen_wrapper |
class | int_vector_serialize_wrapper |
struct | int_vector_trait |
struct | int_vector_trait< 16 > |
struct | int_vector_trait< 32 > |
struct | int_vector_trait< 64 > |
struct | int_vector_trait< 8 > |
class | inv_multi_perm_support |
Class inv_multi_perm_support adds access to the inverse of permutations. More... | |
class | inv_perm_support |
Class inv_perm_support adds access to the inverse of a permutation. More... | |
struct | is_alphabet |
struct | is_alphabet< t_alphabet, typename enable_if_type< typename t_alphabet::alphabet_category >::type > |
struct | is_enc_vec |
struct | is_enc_vec< t_enc_vec, typename enable_if_type< typename t_enc_vec::enc_vec_type >::type > |
class | isa_of_csa_psi |
class | isa_of_csa_wt |
struct | isa_sampling |
struct | isa_sampling_tag |
class | isfstream |
struct | iv_tag |
class | k2_treap |
A k^2-treap. More... | |
class | k2_tree |
A k^2-tree. More... | |
struct | key_bwt_trait_impl |
Helper classes to transform width=0 and width=8 to corresponding bwt key. More... | |
struct | key_bwt_trait_impl< 0, T > |
struct | key_bwt_trait_impl< 8, T > |
struct | key_text_trait_impl |
Helper classes to transform width=0 and width=8 to corresponding text key. More... | |
struct | key_text_trait_impl< 0, T > |
struct | key_text_trait_impl< 8, T > |
class | lcp_bitcompressed |
class | lcp_byte |
A class for a simple compressed version of LCP information. More... | |
class | lcp_fully |
struct | lcp_permuted_tag |
struct | lcp_plain_tag |
struct | lcp_support_sada |
Helper class which provides _lcp_support_sada the context of a CSA. More... | |
struct | lcp_support_tree |
Helper class which provides _lcp_support_tree the context of a CST. More... | |
struct | lcp_support_tree2 |
Helper class which provides _lcp_support_tree2 the context of a CST. More... | |
struct | lcp_tag |
struct | lcp_tree_and_lf_compressed_tag |
struct | lcp_tree_compressed_tag |
class | lcp_vlc |
class | lcp_wt |
A class for the compressed version of lcp information of an suffix array. More... | |
struct | lf_tag |
struct | libdivsufsort_config |
struct | libdivsufsort_config< int32_t > |
struct | libdivsufsort_config< int64_t > |
class | louds_node |
A class for the node representation of louds_tree. More... | |
class | louds_tree |
A tree class based on the level order unary degree sequence (LOUDS) representation. More... | |
class | memory_manager |
class | memory_monitor |
struct | mm_alloc |
struct | mm_block |
struct | mm_event |
class | nearest_neighbour_dictionary |
Nearest neighbour dictionary for sparse uniform sets (described in Geary et al., A Simple Optimal Representation for Balanced Parentheses, CPM 2004). More... | |
class | nn_dict_dynamic |
A class for a dynamic bit vector which also supports the prev and next operations. More... | |
class | node_bv_container |
class | node_seq_container |
struct | nullstream |
class | osfstream |
struct | pc_node |
class | plain_byte_alphabet |
Provides an alphabet mapping that implements an identity map (i.e. More... | |
struct | psi_tag |
class | ram_filebuf |
struct | ramfs_storage |
class | random_access_const_iterator |
Generic iterator for a random access container. More... | |
struct | random_access_container |
struct | range_maximum_sct |
struct | range_maximum_support_sada |
struct | rank_result |
struct | rank_result< 0 > |
class | rank_support |
The base class of classes supporting rank_queries for a sdsl::bit_vector in constant time. More... | |
class | rank_support_hyb |
Rank_support for the hyb_vector class. More... | |
class | rank_support_il |
class | rank_support_int |
The base class of classes supporting rank_queries for a sdsl::int_vector in constant time. More... | |
class | rank_support_int_scan |
A class supporting rank queries in linear time. More... | |
class | rank_support_int_v |
A rank structure proposed by Christopher Pockrandt. More... | |
class | rank_support_rrr |
class | rank_support_rrr< t_b, 15, t_rac, t_k > |
rank_support for the specialized rrr_vector class of block size 15. More... | |
struct | rank_support_rrr_trait |
struct | rank_support_rrr_trait< 0 > |
class | rank_support_scan |
A class supporting rank queries in linear time. More... | |
class | rank_support_sd |
Rank data structure for sd_vector. More... | |
struct | rank_support_sd_trait |
struct | rank_support_sd_trait< 0 > |
struct | rank_support_trait |
struct | rank_support_trait< 0, 1 > |
struct | rank_support_trait< 00, 2 > |
struct | rank_support_trait< 01, 2 > |
struct | rank_support_trait< 1, 1 > |
struct | rank_support_trait< 10, 2 > |
struct | rank_support_trait< 11, 2 > |
class | rank_support_v |
A rank structure proposed by Sebastiano Vigna. More... | |
class | rank_support_v5 |
A class supporting rank queries in constant time. More... | |
class | rmq_succinct_sada |
A class to support range minimum or range maximum queries on a random access container. More... | |
class | rmq_succinct_sct |
A class to support range minimum or range maximum queries on a random access container. More... | |
class | rmq_support_sparse_table |
A class to support range minimum or range maximum queries on a random access container. More... | |
struct | rrr_helper |
Class to encode and decode binomial coefficients on the fly. More... | |
class | rrr_vector |
A . More... | |
class | rrr_vector< 15, t_rac, t_k > |
A specialization of the rrr_vector class for a block_size of 15. | |
struct | sa_bwt_sampling |
struct | sa_order_sa_sampling |
struct | sa_sampling_tag |
struct | sampling_tag |
struct | sampling_tag< t_sampling, typename enable_if_type< typename t_sampling::sampling_category >::type > |
class | sd_vector |
A bit vector which compresses very sparse populated bit vectors by. More... | |
class | sd_vector_builder |
Class for in-place construction of sd_vector from a strictly increasing sequence. More... | |
class | select_0_support_sd |
Select_0 data structure for sd_vector. More... | |
class | select_support |
The base class of classes supporting select queries for a sdsl::bit_vector in constant time. More... | |
class | select_support_hyb |
Select support for the hyb_vector class. More... | |
class | select_support_il |
class | select_support_mcl |
A class supporting constant time select queries. More... | |
class | select_support_rrr |
class | select_support_rrr< t_b, 15, t_rac, t_k > |
Select support for the specialized rrr_vector class of block size 15. More... | |
class | select_support_scan |
A class supporting linear time select queries. More... | |
class | select_support_sd |
Select data structure for sd_vector. More... | |
struct | select_support_sd_trait |
struct | select_support_sd_trait< 0, t_sd_vec > |
struct | select_support_trait |
struct | select_support_trait< 0, 1 > |
struct | select_support_trait< 00, 2 > |
struct | select_support_trait< 01, 2 > |
struct | select_support_trait< 1, 1 > |
struct | select_support_trait< 10, 2 > |
struct | select_support_trait< 11, 2 > |
class | sorted_int_stack |
A stack class which can contain integers in strictly increasing order. More... | |
class | sorted_multi_stack_support |
Stack which contains elements from [0..n] in sorted order. Duplicates are possible. More... | |
class | sorted_stack_support |
A stack which contains strictly increasing numbers in the range from ![]() ![]() | |
class | spin_lock |
class | structure_tree |
class | structure_tree_node |
class | succinct_byte_alphabet |
A space-efficient representation for byte alphabets. More... | |
class | temp_file_buffer |
class | text_of_csa |
struct | text_order_isa_sampling_support |
struct | text_order_sa_sampling |
struct | track_allocator |
struct | tracker_storage |
class | traverse_csa_psi |
struct | traverse_csa_psi_trait |
struct | traverse_csa_psi_trait< t_csa, false > |
class | traverse_csa_saisa |
A helper class for the ![]() | |
struct | traverse_csa_saisa_trait |
struct | traverse_csa_saisa_trait< t_csa, false > |
class | traverse_csa_wt |
A wrapper class for the ![]() | |
struct | traverse_csa_wt_traits |
struct | traverse_csa_wt_traits< t_csa, false > |
class | uint128_t |
class | uint256_t |
class | vlc_vector |
A generic immutable space-saving vector class for unsigned integers. More... | |
struct | vlc_vector_trait |
struct | vlc_vector_trait< 32 > |
struct | void_ |
class | wm_int |
A wavelet tree class for integer sequences. More... | |
class | write_out_mapper |
struct | wt_alphabet_trait |
struct | wt_alphabet_trait< t_wt, typename enable_if_type< typename t_wt::alphabet_category >::type > |
class | wt_ap |
A wavelet tree class for integer sequences. More... | |
class | wt_epr |
An EPR-dictionary based wavelet. More... | |
class | wt_gmr |
A wavelet tree class for integer sequences. More... | |
class | wt_gmr_rs |
A wavelet tree class for integer sequences. More... | |
class | wt_int |
A wavelet tree class for integer sequences. More... | |
class | wt_pc |
A prefix code-shaped wavelet. More... | |
class | wt_rlmn |
A Wavelet Tree class for byte sequences. More... | |
struct | wt_rlmn_trait |
struct | wt_rlmn_trait< byte_alphabet_tag > |
struct | wt_tag |
Typedefs | |
using | bits = bits_impl<> |
typedef uint64_t | int_vector_size_type |
typedef std::map< std::string, std::string > | tMSS |
template<uint8_t width> | |
using | key_text_trait = key_text_trait_impl<width, void> |
template<uint8_t width> | |
using | key_bwt_trait = key_bwt_trait_impl<width, void> |
typedef std::list< int_vector<>::size_type > | tLI |
typedef std::vector< int_vector<>::size_type > | tVI |
template<typename saidx_t> | |
using | trbudget_t = struct _trbudget_t<saidx_t> |
typedef uint64_t | std_size_type_for_int_vector |
typedef int_vector< 1 > | bit_vector |
bit_vector is a specialization of the int_vector. | |
template<std::ios_base::openmode t_mode = std::ios_base::out | std::ios_base::in> | |
using | bit_vector_mapper = int_vector_mapper<1, t_mode> |
template<uint8_t t_width = 0> | |
using | read_only_mapper = int_vector_mapper<t_width, std::ios_base::in> const |
template<uint8_t t_b = 4, typename t_rank = rank_support_v5<>> | |
using | lcp_dac = lcp_vlc<dac_vector<t_b, t_rank>> |
A class for the compressed version of LCP information of an suffix array. | |
typedef struct sdsl::mm_block | mm_block_t |
typedef struct sdsl::bfoot | mm_block_foot_t |
template<class t_rac = int_vector<>> | |
using | range_maximum_support_sparse_table = rmq_support_sparse_table<t_rac, false> |
using | binomial15 = binomial15_impl<> |
template<class t_wt = wt_int<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>> | |
using | csa_wt_int = csa_wt<t_wt, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, int_alphabet<>> |
Typedef for convenient usage of std integer alphabet strategy. | |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>> | |
using | csa_sada_int = csa_sada<t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, int_alphabet<>> |
template<class t_bitvector = bit_vector, class t_rank = typename t_bitvector::rank_1_type, class t_select = typename t_bitvector::select_1_type, class t_select_zero = typename t_bitvector::select_0_type> | |
using | wt_hutu_int = wt_pc<hutu_shape, t_bitvector, t_rank, t_select, t_select_zero, int_tree<>> |
template<class t_bitvector = bit_vector, class t_rank = typename t_bitvector::rank_1_type, class t_select = typename t_bitvector::select_1_type, class t_select_zero = typename t_bitvector::select_0_type> | |
using | wt_huff_int = wt_pc<huff_shape, t_bitvector, t_rank, t_select, t_select_zero, int_tree<>> |
template<class t_bitvector = bit_vector, class t_rank = typename t_bitvector::rank_1_type, class t_select_one = typename t_bitvector::select_1_type, class t_select_zero = typename t_bitvector::select_0_type> | |
using | wt_blcd_int = wt_pc<balanced_shape, t_bitvector, t_rank, t_select_one, t_select_zero, int_tree<>> |
template<class t_bitvector = bit_vector, class t_rank = typename t_bitvector::rank_1_type, class t_select_one = typename t_bitvector::select_1_type, class t_select_zero = typename t_bitvector::select_0_type, class t_tree_strat = byte_tree<>> | |
using | wt_blcd = wt_pc<balanced_shape, t_bitvector, t_rank, t_select_one, t_select_zero, t_tree_strat> |
A balanced wavelet tree. | |
typedef std::array< int_vector<>::size_type, 2 > | range_type |
typedef std::vector< range_type > | range_vec_type |
template<class t_bitvector = bit_vector, class t_rank = typename t_bitvector::rank_1_type, class t_select = typename t_bitvector::select_1_type, class t_select_zero = typename t_bitvector::select_0_type, class t_tree_strat = byte_tree<>> | |
using | wt_huff = wt_pc<huff_shape, t_bitvector, t_rank, t_select, t_select_zero, t_tree_strat> |
A Huffman-shaped wavelet tree. | |
template<class t_bitvector = bit_vector, class t_rank = typename t_bitvector::rank_1_type, class t_select = typename t_bitvector::select_1_type, class t_select_zero = typename t_bitvector::select_0_type, class t_tree_strat = byte_tree<>> | |
using | wt_hutu = wt_pc<hutu_shape, t_bitvector, t_rank, t_select, t_select_zero, t_tree_strat> |
A Hu-Tucker-shaped wavelet tree. |
Enumerations | |
enum | format_type { JSON_FORMAT , R_FORMAT , HTML_FORMAT } |
enum | byte_sa_algo_type { LIBDIVSUFSORT , SE_SAIS } |
Functions | |
template<class T> | |
constexpr bool | power_of_two (T x) |
bit_vector | calculate_pioneers_bitmap (bit_vector const &bp, uint64_t block_size) |
Calculate pioneers as defined in the paper of Geary et al. (CPM 2004) | |
bit_vector | calculate_pioneers_bitmap_succinct (bit_vector const &bp, uint64_t block_size) |
Space-efficient version of calculate_pioneers_bitmap. | |
template<class int_vector> | |
void | calculate_matches (bit_vector const &bp, int_vector &matches) |
find_open/find_close for closing/opening parentheses. | |
template<class int_vector> | |
void | calculate_enclose (bit_vector const &bp, int_vector &enclose) |
Calculates enclose answers for a balanced parentheses sequence. | |
uint64_t | near_find_close (bit_vector const &bp, const uint64_t i, const uint64_t block_size) |
uint64_t | near_find_closing (bit_vector const &bp, uint64_t i, uint64_t closings, const uint64_t block_size) |
uint64_t | near_fwd_excess (bit_vector const &bp, uint64_t i, bit_vector::difference_type rel, const uint64_t block_size) |
uint64_t | near_rmq (bit_vector const &bp, uint64_t l, uint64_t r, bit_vector::difference_type &min_rel_ex) |
Calculate the position with minimal excess value in the interval [l..r]. | |
uint64_t | near_bwd_excess (bit_vector const &bp, uint64_t i, bit_vector::difference_type rel, const uint64_t block_size) |
Near backward excess. | |
uint64_t | near_find_open (bit_vector const &bp, uint64_t i, const uint64_t block_size) |
uint64_t | near_find_opening (bit_vector const &bp, uint64_t i, const uint64_t openings, const uint64_t block_size) |
uint64_t | near_enclose (bit_vector const &bp, uint64_t i, const uint64_t block_size) |
Find the opening parenthesis of the enclosing pair if this parenthesis is near. | |
uint64_t | near_rmq_open (bit_vector const &bp, const uint64_t begin, const uint64_t end) |
template<class int_vector> | |
bool | contains_no_zero_symbol (int_vector const &text, std::string const &file) |
template<class int_vector> | |
void | append_zero_symbol (int_vector &text) |
template<class t_index> | |
void | construct (t_index &idx, std::string file, uint8_t num_bytes=0, bool move_input=false) |
template<class t_index, class t_data> | |
void | construct_im (t_index &idx, t_data &&data, uint8_t num_bytes=0) |
template<class t_index> | |
void | construct (t_index &idx, std::string const &file, cache_config &config, uint8_t num_bytes=0) |
Constructs an index object of type t_index for a text stored on disk. | |
template<class t_index> | |
void | construct (t_index &idx, std::string const &file, cache_config &config, uint8_t num_bytes, wt_tag) |
template<class t_index> | |
void | construct (t_index &idx, std::string const &file, cache_config &config, uint8_t num_bytes, csa_tag) |
template<class t_index, uint8_t t_width> | |
void | construct (t_index &idx, std::string const &file, cache_config &config, uint8_t num_bytes, lcp_tag) |
template<class t_index> | |
void | construct (t_index &idx, std::string const &file, cache_config &config, uint8_t num_bytes, lcp_tag tag) |
template<class t_index> | |
void | construct (t_index &idx, std::string const &file, cache_config &config, uint8_t num_bytes, cst_tag) |
template<uint8_t t_width> | |
void | construct_bwt (cache_config &config) |
Constructs the Burrows and Wheeler Transform (BWT) from text over byte- or integer-alphabet and suffix array. | |
construct_config_data & | construct_config () |
void | construct_isa (cache_config &config) |
template<uint8_t t_width> | |
void | construct_lcp_kasai (cache_config &config) |
Construct the LCP array for text over byte- or integer-alphabet. | |
template<uint8_t t_width> | |
void | construct_lcp_PHI (cache_config &config) |
Construct the LCP array for text over byte- or integer-alphabet. | |
void | construct_lcp_semi_extern_PHI (cache_config &config) |
Construct the LCP array (only for byte strings) | |
void | construct_lcp_go (cache_config &config) |
Construct the LCP array (only for byte strings) | |
void | construct_lcp_goPHI (cache_config &config) |
Construct the LCP array (only for byte strings) | |
template<typename t_wt = wt_huff<bit_vector, rank_support_v<>, select_support_scan<1>, select_support_scan<0>>> | |
void | construct_lcp_bwt_based (cache_config &config) |
Construct the LCP array out of the BWT (only for byte strings) | |
template<typename t_wt = wt_huff<bit_vector, rank_support_v<>, select_support_scan<1>, select_support_scan<0>>> | |
void | construct_lcp_bwt_based2 (cache_config &config) |
Construct the LCP array out of the BWT (only for byte strings) | |
void | insert_lcp_values (int_vector<> &partial_lcp, bit_vector &index_done, std::string lcp_file, uint64_t max_lcp_value, uint64_t lcp_value_offset) |
Merges a partial LCP array into the LCP array on disk. | |
template<class tWT> | |
void | create_C_array (std::vector< uint64_t > &C, tWT const &wt) |
template<class size_type_class> | |
void | push_front_m_index (size_type_class i, uint8_t c, tLI(&m_list)[256], uint8_t(&m_chars)[256], size_type_class &m_char_count) |
template<class size_type_class> | |
void | push_back_m_index (size_type_class i, uint8_t c, tLI(&m_list)[256], uint8_t(&m_chars)[256], size_type_class &m_char_count) |
void | construct_sa_se (cache_config &config) |
Constructs the Suffix Array (SA) from text over byte-alphabet. | |
template<uint8_t t_width> | |
void | construct_sa (cache_config &config) |
Constructs the Suffix Array (SA) from text over byte- or integer-alphabet. | |
template<class int_vector_type> | |
uint64_t | _get_next_lms_position (int_vector_type &text, uint64_t i) |
void | _construct_sa_IS (int_vector<> &text, int_vector<> &sa, std::string &filename_sa, size_t n, size_t text_offset, size_t sigma, uint64_t recursion) |
template<class int_vector_type> | |
void | _construct_sa_se (int_vector_type &text, std::string filename_sa, uint64_t sigma, uint64_t recursion) |
template<uint8_t int_width> | |
constexpr char const * | key_text () |
template<uint8_t int_width> | |
constexpr char const * | key_bwt () |
template<> | |
constexpr char const * | key_text< 8 > () |
template<> | |
constexpr char const * | key_bwt< 8 > () |
template<typename bit_vector_type, typename size_type> | |
void | init_char_bitvector (bit_vector_type &char_bv, std::map< size_type, size_type > const &D) |
template<typename t_hi_bit_vector, typename t_select_1, typename t_select_0, typename size_type> | |
void | init_char_bitvector (sd_vector< t_hi_bit_vector, t_select_1, t_select_0 > &char_bv, std::map< size_type, size_type > const &D) |
template<class t_int> | |
std::ostream & | operator<< (std::ostream &os, bp_interval< t_int > const &interval) |
int32_t | ss_ilg (int32_t n) |
int32_t | ss_ilg (int64_t n) |
template<typename saidx_t> | |
saidx_t | ss_isqrt (saidx_t x) |
template<typename saidx_t> | |
int32_t | ss_compare (uint8_t const *T, saidx_t const *p1, saidx_t const *p2, saidx_t depth) |
template<typename saidx_t> | |
void | ss_insertionsort (uint8_t const *T, saidx_t const *PA, saidx_t *first, saidx_t *last, saidx_t depth) |
template<typename saidx_t> | |
void | ss_fixdown (uint8_t const *Td, saidx_t const *PA, saidx_t *SA, saidx_t i, saidx_t size) |
template<typename saidx_t> | |
void | ss_heapsort (uint8_t const *Td, saidx_t const *PA, saidx_t *SA, saidx_t size) |
template<typename saidx_t> | |
saidx_t * | ss_median3 (uint8_t const *Td, saidx_t const *PA, saidx_t *v1, saidx_t *v2, saidx_t *v3) |
template<typename saidx_t> | |
saidx_t * | ss_median5 (uint8_t const *Td, saidx_t const *PA, saidx_t *v1, saidx_t *v2, saidx_t *v3, saidx_t *v4, saidx_t *v5) |
template<typename saidx_t> | |
saidx_t * | ss_pivot (uint8_t const *Td, saidx_t const *PA, saidx_t *first, saidx_t *last) |
template<typename saidx_t> | |
saidx_t * | ss_partition (saidx_t const *PA, saidx_t *first, saidx_t *last, saidx_t depth) |
template<typename saidx_t> | |
void | ss_mintrosort (uint8_t const *T, saidx_t const *PA, saidx_t *first, saidx_t *last, saidx_t depth) |
template<typename saidx_t> | |
void | ss_blockswap (saidx_t *a, saidx_t *b, saidx_t n) |
template<typename saidx_t> | |
void | ss_rotate (saidx_t *first, saidx_t *middle, saidx_t *last) |
template<typename saidx_t> | |
void | ss_inplacemerge (uint8_t const *T, saidx_t const *PA, saidx_t *first, saidx_t *middle, saidx_t *last, saidx_t depth) |
template<typename saidx_t> | |
void | ss_mergeforward (uint8_t const *T, saidx_t const *PA, saidx_t *first, saidx_t *middle, saidx_t *last, saidx_t *buf, saidx_t depth) |
template<typename saidx_t> | |
void | ss_mergebackward (uint8_t const *T, saidx_t const *PA, saidx_t *first, saidx_t *middle, saidx_t *last, saidx_t *buf, saidx_t depth) |
template<typename saidx_t> | |
void | ss_swapmerge (uint8_t const *T, saidx_t const *PA, saidx_t *first, saidx_t *middle, saidx_t *last, saidx_t *buf, saidx_t bufsize, saidx_t depth) |
template<typename saidx_t> | |
void | sssort (uint8_t const *T, saidx_t const *PA, saidx_t *first, saidx_t *last, saidx_t *buf, saidx_t bufsize, saidx_t depth, saidx_t n, int32_t lastsuffix) |
int32_t | tr_ilg (int32_t n) |
int32_t | tr_ilg (int64_t n) |
template<typename saidx_t> | |
void | tr_insertionsort (saidx_t const *ISAd, saidx_t *first, saidx_t *last) |
template<typename saidx_t> | |
void | tr_fixdown (saidx_t const *ISAd, saidx_t *SA, saidx_t i, saidx_t size) |
template<typename saidx_t> | |
void | tr_heapsort (saidx_t const *ISAd, saidx_t *SA, saidx_t size) |
template<typename saidx_t> | |
saidx_t * | tr_median3 (saidx_t const *ISAd, saidx_t *v1, saidx_t *v2, saidx_t *v3) |
template<typename saidx_t> | |
saidx_t * | tr_median5 (saidx_t const *ISAd, saidx_t *v1, saidx_t *v2, saidx_t *v3, saidx_t *v4, saidx_t *v5) |
template<typename saidx_t> | |
saidx_t * | tr_pivot (saidx_t const *ISAd, saidx_t *first, saidx_t *last) |
template<typename saidx_t> | |
void | trbudget_init (trbudget_t< saidx_t > *budget, saidx_t chance, saidx_t incval) |
template<typename saidx_t> | |
int32_t | trbudget_check (trbudget_t< saidx_t > *budget, saidx_t size) |
template<typename saidx_t> | |
void | tr_partition (saidx_t const *ISAd, saidx_t *first, saidx_t *middle, saidx_t *last, saidx_t **pa, saidx_t **pb, saidx_t v) |
template<typename saidx_t> | |
void | tr_copy (saidx_t *ISA, saidx_t const *SA, saidx_t *first, saidx_t *a, saidx_t *b, saidx_t *last, saidx_t depth) |
template<typename saidx_t> | |
void | tr_partialcopy (saidx_t *ISA, saidx_t const *SA, saidx_t *first, saidx_t *a, saidx_t *b, saidx_t *last, saidx_t depth) |
template<typename saidx_t> | |
void | tr_introsort (saidx_t *ISA, saidx_t const *ISAd, saidx_t *SA, saidx_t *first, saidx_t *last, trbudget_t< saidx_t > *budget) |
template<typename saidx_t> | |
void | trsort (saidx_t *ISA, saidx_t *SA, saidx_t n, saidx_t depth) |
template<typename saidx_t> | |
saidx_t | sort_typeBstar (uint8_t const *T, saidx_t *SA, saidx_t *bucket_A, saidx_t *bucket_B, saidx_t n) |
template<typename saidx_t> | |
void | construct_SA (uint8_t const *T, saidx_t *SA, saidx_t *bucket_A, saidx_t *bucket_B, saidx_t n, saidx_t m) |
template<typename saidx_t> | |
saidx_t | construct_BWT (uint8_t const *T, saidx_t *SA, saidx_t *bucket_A, saidx_t *bucket_B, saidx_t n, saidx_t m) |
template<typename saidx_t> | |
int32_t | divsufsort (uint8_t const *T, saidx_t *SA, saidx_t n) |
int32_t | divsufsort64 (uint8_t const *T, int64_t *SA, int64_t n) |
template<typename saidx_t> | |
int | _compare (uint8_t const *T, saidx_t Tsize, uint8_t const *P, saidx_t Psize, saidx_t suf, saidx_t *match) |
template<class t_int_vector> | |
void | swap (int_vector_reference< t_int_vector > x, int_vector_reference< t_int_vector > y) noexcept |
template<class t_int_vector> | |
void | swap (typename int_vector_reference< t_int_vector >::value_type &x, int_vector_reference< t_int_vector > y) noexcept |
template<class t_int_vector> | |
void | swap (int_vector_reference< t_int_vector > x, typename int_vector_reference< t_int_vector >::value_type &y) noexcept |
template<> | |
void | swap (int_vector_reference< bit_vector > x, int_vector_reference< bit_vector > y) noexcept |
template<> | |
void | swap (bool &x, int_vector_reference< bit_vector > y) noexcept |
template<> | |
void | swap (int_vector_reference< bit_vector > x, bool &y) noexcept |
template<class t_int_vector> | |
int_vector_iterator< t_int_vector > | operator+ (typename int_vector_iterator< t_int_vector >::difference_type n, int_vector_iterator< t_int_vector > const &it) |
template<class t_int_vector> | |
int_vector_const_iterator< t_int_vector >::difference_type | operator- (int_vector_const_iterator< t_int_vector > const &x, int_vector_const_iterator< t_int_vector > const &y) |
template<class t_int_vector> | |
int_vector_const_iterator< t_int_vector > | operator+ (typename int_vector_const_iterator< t_int_vector >::difference_type n, int_vector_const_iterator< t_int_vector > const &it) |
template<class t_bv> | |
std::enable_if< std::is_same< typenamet_bv::index_category, bv_tag >::value, std::ostream & >::type | operator<< (std::ostream &os, t_bv const &bv) |
template<uint8_t t_width> | |
void | swap (int_vector< t_width > &v1, int_vector< t_width > &v2) noexcept |
int | remove (std::string const &file) |
Remove a file. | |
template<typename T> | |
void | load_vector (std::vector< T > &vec, std::istream &in) |
Load all elements of a vector from a input stream. | |
template<typename T> | |
uint64_t | serialize_vector (std::vector< T > const &vec, std::ostream &out, sdsl::structure_tree_node *v, std::string name) |
Serialize each element of an std::vector. | |
template<typename T> | |
size_t | write_member (T const &t, std::ostream &out, sdsl::structure_tree_node *v=nullptr, std::string name="") |
template<> | |
size_t | write_member< std::string > (std::string const &t, std::ostream &out, sdsl::structure_tree_node *v, std::string name) |
template<typename T> | |
void | read_member (T &t, std::istream &in) |
template<> | |
void | read_member< std::string > (std::string &t, std::istream &in) |
template<typename X> | |
std::enable_if< has_serialize< X >::value, typenameX::size_type >::type | serialize (X const &x, std::ostream &out, structure_tree_node *v=nullptr, std::string name="") |
template<typename X> | |
std::enable_if< std::is_standard_layout< X >::value &&std::is_trivial< X >::value, uint64_t >::type | serialize (X const &x, std::ostream &out, structure_tree_node *v=nullptr, std::string name="") |
template<typename X> | |
uint64_t | serialize (std::vector< X > const &x, std::ostream &out, structure_tree_node *v=nullptr, std::string name="") |
template<typename X> | |
std::enable_if< has_load< X >::value, void >::type | load (X &x, std::istream &in) |
template<typename X> | |
std::enable_if< std::is_standard_layout< X >::value &&std::is_trivial< X >::value, void >::type | load (X &x, std::istream &in) |
template<typename X> | |
void | load (std::vector< X > &x, std::istream &in) |
template<typename T> | |
bool | load_from_file (T &v, std::string const &file) |
Load sdsl-object v from a file. | |
template<typename t_int_vec> | |
bool | load_vector_from_file (t_int_vec &v, std::string const &file, uint8_t num_bytes=1, uint8_t max_int_width=64) |
from disk. | |
template<typename T> | |
bool | store_to_file (T const &v, std::string const &file) |
Store a data structure to a file. | |
bool | store_to_file (char const *v, std::string const &file) |
Specialization of store_to_file for a char array. | |
template<uint8_t t_width> | |
bool | store_to_file (int_vector< t_width > const &v, std::string const &file) |
Specialization of store_to_file for int_vector. | |
template<typename int_type, typename t_int_vec> | |
bool | store_to_plain_array (t_int_vec &v, std::string const &file) |
Store an int_vector as plain int_type array to disk. | |
template<typename T> | |
size_t | serialize_empty_object (std::ostream &, structure_tree_node *v=nullptr, std::string name="", T const *t=nullptr) |
template<typename T> | |
T::size_type | size_in_bytes (T const &t) |
Get the size of a data structure in bytes. | |
template<typename T> | |
double | size_in_mega_bytes (T const &t) |
Get the size of a data structure in mega bytes (MiB). | |
template<format_type F, typename X> | |
void | write_structure (X const &x, std::ostream &out) |
template<format_type F, typename X> | |
void | write_structure (X const &x, std::string file) |
template<format_type F, typename... Xs> | |
void | write_structure (std::ostream &out, Xs... xs) |
template<typename X, typename... Xs> | |
void | _write_structure (std::unique_ptr< structure_tree_node > &st_node, X x, Xs... xs) |
void | _write_structure (std::unique_ptr< structure_tree_node > &) |
uint64_t | _parse_number (std::string::const_iterator &c, std::string::const_iterator const &end) |
Internal function used by csXprintf. | |
template<typename t_csa> | |
t_csa const & | _idx_csa (t_csa const &t, csa_tag) |
Internal function used by csXprintf. | |
template<typename t_cst> | |
const t_cst::csa_type & | _idx_csa (t_cst const &t, cst_tag) |
Internal function used by csXprintf. | |
template<typename t_csa> | |
std::string | _idx_lcp_val (t_csa const &, uint64_t, uint64_t, csa_tag) |
Internal function used by csXprintf. | |
template<typename t_cst> | |
std::string | _idx_lcp_val (t_cst const &t, uint64_t i, uint64_t w, cst_tag) |
Internal function used by csXprintf. | |
template<typename t_idx> | |
void | csXprintf (std::ostream &out, std::string const &format, t_idx const &idx, char sentinel=default_sentinel< t_idx >::value) |
Prints members of CSAs and CSTs. | |
std::string | cache_file_name (std::string const &key, cache_config const &config) |
Returns the file name of the resource. | |
template<typename T> | |
std::string | cache_file_name (std::string const &key, cache_config const &config) |
Returns the file name of the resource. | |
void | register_cache_file (std::string const &key, cache_config &config) |
Register the existing resource specified by the key to the cache. | |
bool | cache_file_exists (std::string const &key, cache_config const &config) |
Checks if the resource specified by the key exists in the cache. | |
template<typename T> | |
bool | cache_file_exists (std::string const &key, cache_config const &config) |
Checks if the resource specified by the key and type exists in the cache. | |
std::string | tmp_file (cache_config const &config, std::string name_part="") |
Returns a name for a temporary file. I.e. the name was not used before. | |
std::string | tmp_file (std::string const &filename, std::string name_part="") |
Returns a name for a temporary file. I.e. the name was not used before. | |
template<typename T> | |
bool | load_from_cache (T &v, std::string const &key, cache_config const &config, bool add_type_hash=false) |
template<typename T> | |
bool | store_to_cache (T const &v, std::string const &key, cache_config &config, bool add_type_hash=false) |
Stores the object v as a resource in the cache. | |
template<typename T> | |
bool | remove_from_cache (std::string const &key, cache_config &config, bool add_type_hash=false) |
template<typename T> | |
void | add_hash (T const &t, std::ostream &out) |
template<typename T> | |
bool | store_to_checked_file (T const &t, std::string const &file) |
bool | store_to_checked_file (char const *v, std::string const &file) |
bool | store_to_file (std::string const &v, std::string const &file) |
template<uint8_t t_width> | |
bool | store_to_checked_file (int_vector< t_width > const &v, std::string const &file) |
template<typename T> | |
bool | load_from_checked_file (T &v, std::string const &file) |
template<typename t_iv> | |
std::enable_if< std::is_same< typenamet_iv::index_category, iv_tag >::valueorstd::is_same< typenamet_iv::index_category, csa_tag >::valueorstd::is_same< typenamet_iv::index_category, lcp_tag >::value, std::ostream & >::type | operator<< (std::ostream &os, t_iv const &v) |
template<typename t_iv> | |
std::enable_if< std::is_same< typenamet_iv::index_category, wt_tag >::value, std::ostream & >::type | operator<< (std::ostream &os, t_iv const &v) |
template<typename t_int> | |
std::enable_if< std::is_integral< t_int >::value, std::ostream & >::type | operator<< (std::ostream &os, std::vector< t_int > const &v) |
template<typename t_iv> | |
std::enable_if< std::is_same< typenamet_iv::category, csa_member_tag >::value, std::ostream & >::type | operator<< (std::ostream &os, t_iv const &v) |
template<class t_rac> | |
random_access_const_iterator< t_rac >::difference_type | operator- (random_access_const_iterator< t_rac > const &x, random_access_const_iterator< t_rac > const &y) |
template<class t_rac> | |
random_access_const_iterator< t_rac > | operator+ (typename random_access_const_iterator< t_rac >::difference_type n, random_access_const_iterator< t_rac > const &it) |
template<typename t_k2_treap> | |
k2_treap_ns::top_k_iterator< t_k2_treap > | top_k (t_k2_treap const &t, k2_treap_ns::point_type p1, k2_treap_ns::point_type p2) |
Get iterator for all heaviest points in rectangle (p1,p2) in decreasing order. | |
template<typename t_k2_treap> | |
k2_treap_ns::range_iterator< t_k2_treap > | range_3d (t_k2_treap const &t, k2_treap_ns::point_type p1, k2_treap_ns::point_type p2, k2_treap_ns::range_type range) |
Get iterator for all points in rectangle (p1,p2) with weights in range. | |
template<typename t_k2_treap> | |
uint64_t | __count (t_k2_treap const &, typename t_k2_treap::node_type) |
template<typename t_k2_treap> | |
uint64_t | _count (t_k2_treap const &, k2_treap_ns::point_type, k2_treap_ns::point_type, typename t_k2_treap::node_type) |
template<typename t_k2_treap> | |
uint64_t | count (t_k2_treap const &treap, k2_treap_ns::point_type p1, k2_treap_ns::point_type p2) |
Count how many points are in the rectangle (p1,p2) | |
template<uint8_t t_k, typename t_bv, typename t_rank, typename t_max_vec> | |
void | construct (k2_treap< t_k, t_bv, t_rank, t_max_vec > &idx, std::string file, cache_config &config) |
Specialized version of method ,,construct'' for k2_treaps. | |
template<uint8_t t_k, typename t_bv, typename t_rank, typename t_max_vec> | |
void | construct_im (k2_treap< t_k, t_bv, t_rank, t_max_vec > &idx, std::vector< std::array< uint64_t, 3 > > data) |
Specialized version of method ,,construct_im'' for k2_treaps. | |
template<class t_lcp, class t_cst> | |
void | construct_lcp (t_lcp &lcp, t_cst const &cst, cache_config &config) |
template<class t_lcp, class t_cst> | |
void | construct_lcp (t_lcp &lcp, t_cst const &, cache_config &config, lcp_plain_tag) |
template<class t_lcp, class t_cst> | |
void | construct_lcp (t_lcp &lcp, t_cst const &cst, cache_config &config, lcp_permuted_tag) |
template<class t_lcp, class t_cst> | |
void | construct_lcp (t_lcp &lcp, t_cst const &cst, cache_config &config, lcp_tree_compressed_tag) |
template<class t_lcp, class t_cst> | |
void | construct_lcp (t_lcp &lcp, t_cst const &cst, cache_config &config, lcp_tree_and_lf_compressed_tag) |
template<class t_lcp, class t_cst> | |
void | copy_lcp (t_lcp &lcp, t_lcp const &lcp_c, t_cst const &cst) |
template<class t_lcp, class t_cst> | |
void | copy_lcp (t_lcp &lcp, t_lcp const &lcp_c, t_cst const &, lcp_plain_tag) |
template<class t_lcp, class t_cst> | |
void | copy_lcp (t_lcp &lcp, t_lcp const &lcp_c, t_cst const &cst, lcp_permuted_tag) |
template<class t_lcp, class t_cst> | |
void | copy_lcp (t_lcp &lcp, t_lcp const &lcp_c, t_cst const &cst, lcp_tree_compressed_tag) |
template<class t_lcp, class t_cst> | |
void | copy_lcp (t_lcp &lcp, t_lcp const &lcp_c, t_cst const &cst, lcp_tree_and_lf_compressed_tag) |
template<class t_lcp, class t_cst> | |
void | move_lcp (t_lcp &&lcp, t_lcp &&lcp_c, t_cst const &cst) |
template<class t_lcp, class t_cst> | |
void | move_lcp (t_lcp &&lcp, t_lcp &&lcp_c, t_cst const &, lcp_plain_tag) |
template<class t_lcp, class t_cst> | |
void | move_lcp (t_lcp &&lcp, t_lcp &&lcp_c, t_cst const &cst, lcp_permuted_tag) |
template<class t_lcp, class t_cst> | |
void | move_lcp (t_lcp &&lcp, t_lcp &&lcp_c, t_cst const &cst, lcp_tree_compressed_tag) |
template<class t_lcp, class t_cst> | |
void | move_lcp (t_lcp &&lcp, t_lcp &&lcp_c, t_cst const &cst, lcp_tree_and_lf_compressed_tag) |
template<class t_lcp, class t_cst> | |
void | load_lcp (t_lcp &lcp, std::istream &in, t_cst const &cst) |
template<class t_lcp, class t_cst> | |
void | load_lcp (t_lcp &lcp, std::istream &in, t_cst const &, lcp_plain_tag) |
template<class t_lcp, class t_cst> | |
void | load_lcp (t_lcp &lcp, std::istream &in, t_cst const &cst, lcp_permuted_tag) |
template<class t_lcp, class t_cst> | |
void | load_lcp (t_lcp &lcp, std::istream &in, t_cst const &cst, lcp_tree_compressed_tag) |
template<class t_lcp, class t_cst> | |
void | load_lcp (t_lcp &lcp, std::istream &in, t_cst const &cst, lcp_tree_and_lf_compressed_tag) |
template<class t_lcp, class t_cst> | |
void | set_lcp_pointer (t_lcp &lcp, t_cst const &cst) |
template<class t_lcp, class t_cst> | |
void | set_lcp_pointer (t_lcp &, t_cst const &, lcp_plain_tag) |
template<class t_lcp, class t_cst> | |
void | set_lcp_pointer (t_lcp &lcp, t_cst const &cst, lcp_permuted_tag) |
template<class t_lcp, class t_cst> | |
void | set_lcp_pointer (t_lcp &lcp, t_cst const &cst, lcp_tree_compressed_tag) |
template<class t_lcp, class t_cst> | |
void | set_lcp_pointer (t_lcp &lcp, t_cst const &cst, lcp_tree_and_lf_compressed_tag) |
void | construct_first_child_lcp (int_vector_buffer<> &lcp_buf, int_vector<> &fc_lcp) |
template<uint32_t t_dens, uint8_t t_bwt_width> | |
void | construct_first_child_and_lf_lcp (int_vector_buffer<> &, int_vector_buffer< t_bwt_width > &, std::string const &, std::string const &, int_vector<> &) |
std::ostream & | operator<< (std::ostream &os, louds_node const &v) |
void | output_event_json (std::ostream &out, mm_event const &ev, tracker_storage const &m) |
template<> | |
void | write_mem_log< JSON_FORMAT > (std::ostream &out, tracker_storage const &m) |
std::string | create_mem_html_header () |
std::string | create_mem_js_body (std::string const &jsonObject) |
template<> | |
void | write_mem_log< HTML_FORMAT > (std::ostream &out, tracker_storage const &m) |
mm_block_t * | block_cur (void *ptr) |
mm_block_t * | block_prev (mm_block_t *cur_bptr, mm_block_t *first) |
mm_block_t * | block_next (mm_block_t *cur_bptr, uint8_t *top) |
size_t | block_size (void *ptr) |
bool | block_isfree (mm_block_t *ptr) |
bool | block_nextfree (mm_block_t *ptr, uint8_t *top) |
bool | block_prevfree (mm_block_t *ptr, mm_block_t *begin) |
void | foot_update (mm_block_t *ptr, size_t size) |
void | block_update (mm_block_t *ptr, size_t size) |
void * | block_data (mm_block_t *ptr) |
size_t | block_getdatasize (mm_block_t *ptr) |
void | block_markfree (mm_block_t *ptr) |
void | block_markused (mm_block_t *ptr) |
void | memory_monitor_record (int64_t) |
template<typename T, typename U> | |
bool | operator== (track_allocator< T > const &, track_allocator< U > const &) |
template<typename T, typename U> | |
bool | operator!= (track_allocator< T > const &a, track_allocator< U > const &b) |
template<format_type F> | |
void | write_mem_log (std::ostream &out, tracker_storage const &m) |
bool | is_ram_file (std::string const &file) |
Determines if the given file is a RAM-file. | |
bool | is_ram_file (int const fd) |
Determines if the given file is a RAM-file. | |
std::string | ram_file_name (std::string const &file) |
Returns the corresponding RAM-file name for file. | |
std::string | disk_file_name (std::string const &file) |
Returns for a RAM-file the corresponding disk file name. | |
int | rename (std::string const &old_filename, std::string const &new_filename) |
Rename a file. | |
constexpr size_t | floor_log2 (size_t const n) |
constexpr size_t | ceil_log2 (size_t const n) |
void | output_tab (std::ostream &out, size_t level) |
template<format_type F> | |
void | write_structure_tree (structure_tree_node const *v, std::ostream &out, size_t level=0) |
template<> | |
void | write_structure_tree< JSON_FORMAT > (structure_tree_node const *v, std::ostream &out, size_t level) |
std::string | create_html_header (char const *file_name) |
std::string | create_js_body (std::string const &jsonsize) |
template<> | |
void | write_structure_tree< HTML_FORMAT > (structure_tree_node const *v, std::ostream &out, SDSL_UNUSED size_t level) |
template<class t_csa, class t_pat_iter> | |
t_csa::size_type | forward_search (t_csa const &csa, typename t_csa::size_type l, typename t_csa::size_type r, t_pat_iter begin, t_pat_iter end, typename t_csa::size_type &l_res, typename t_csa::size_type &r_res, SDSL_UNUSED typename std::enable_if< std::is_same< csa_tag, typename t_csa::index_category >::value, csa_tag >::type x=csa_tag()) |
Forward search for a pattern in an ![]() ![]() | |
template<class t_csa> | |
t_csa::size_type | forward_search (t_csa const &csa, typename t_csa::size_type l, typename t_csa::size_type r, typename t_csa::char_type c, typename t_csa::size_type &l_res, typename t_csa::size_type &r_res, SDSL_UNUSED typename std::enable_if< std::is_same< csa_tag, typename t_csa::index_category >::value, csa_tag >::type x=csa_tag()) |
Forward search for a character c in an ![]() ![]() | |
template<class t_csa> | |
t_csa::size_type | backward_search (t_csa const &csa, typename t_csa::size_type l, typename t_csa::size_type r, typename t_csa::char_type c, typename t_csa::size_type &l_res, typename t_csa::size_type &r_res, SDSL_UNUSED typename std::enable_if< std::is_same< csa_tag, typename t_csa::index_category >::value, csa_tag >::type x=csa_tag()) |
Backward search for a character c in an ![]() ![]() | |
template<class t_csa, class t_pat_iter> | |
t_csa::size_type | backward_search (t_csa const &csa, typename t_csa::size_type l, typename t_csa::size_type r, t_pat_iter begin, t_pat_iter end, typename t_csa::size_type &l_res, typename t_csa::size_type &r_res, SDSL_UNUSED typename std::enable_if< std::is_same< csa_tag, typename t_csa::index_category >::value, csa_tag >::type x=csa_tag()) |
Backward search for a pattern in an ![]() ![]() | |
template<class t_wt, uint32_t t_dens, uint32_t t_inv_dens, class t_sa_sample_strat, class t_isa, class t_alphabet_strat> | |
csa_wt< t_wt >::size_type | bidirectional_search (csa_wt< t_wt, t_dens, t_inv_dens, t_sa_sample_strat, t_isa, t_alphabet_strat > const &csa_fwd, typename csa_wt<>::size_type l_fwd, typename csa_wt<>::size_type r_fwd, typename csa_wt<>::size_type l_bwd, typename csa_wt<>::size_type r_bwd, typename csa_wt<>::char_type c, typename csa_wt<>::size_type &l_fwd_res, typename csa_wt<>::size_type &r_fwd_res, typename csa_wt<>::size_type &l_bwd_res, typename csa_wt<>::size_type &r_bwd_res, SDSL_UNUSED typename std::enable_if< t_wt::lex_ordered, csa_tag >::type x=csa_tag()) |
Bidirectional search for a character c on an interval ![]() | |
template<class t_pat_iter, class t_wt, uint32_t t_dens, uint32_t t_inv_dens, class t_sa_sample_strat, class t_isa, class t_alphabet_strat> | |
csa_wt ::size_type | bidirectional_search_backward (csa_wt< t_wt, t_dens, t_inv_dens, t_sa_sample_strat, t_isa, t_alphabet_strat > const &csa_fwd, SDSL_UNUSED csa_wt< t_wt, t_dens, t_inv_dens, t_sa_sample_strat, t_isa, t_alphabet_strat > const &csa_bwd, typename csa_wt<>::size_type l_fwd, typename csa_wt<>::size_type r_fwd, typename csa_wt<>::size_type l_bwd, typename csa_wt<>::size_type r_bwd, t_pat_iter begin, t_pat_iter end, typename csa_wt<>::size_type &l_fwd_res, typename csa_wt<>::size_type &r_fwd_res, typename csa_wt<>::size_type &l_bwd_res, typename csa_wt<>::size_type &r_bwd_res, SDSL_UNUSED typename std::enable_if< t_wt::lex_ordered, csa_tag >::type x=csa_tag()) |
Bidirectional search in backward direction. | |
template<class t_pat_iter, class t_wt, uint32_t t_dens, uint32_t t_inv_dens, class t_sa_sample_strat, class t_isa, class t_alphabet_strat> | |
csa_wt< t_wt >::size_type | bidirectional_search_forward (SDSL_UNUSED csa_wt< t_wt, t_dens, t_inv_dens, t_sa_sample_strat, t_isa, t_alphabet_strat > const &csa_fwd, csa_wt< t_wt, t_dens, t_inv_dens, t_sa_sample_strat, t_isa, t_alphabet_strat > const &csa_bwd, typename csa_wt<>::size_type l_fwd, typename csa_wt<>::size_type r_fwd, typename csa_wt<>::size_type l_bwd, typename csa_wt<>::size_type r_bwd, t_pat_iter begin, t_pat_iter end, typename csa_wt<>::size_type &l_fwd_res, typename csa_wt<>::size_type &r_fwd_res, typename csa_wt<>::size_type &l_bwd_res, typename csa_wt<>::size_type &r_bwd_res, SDSL_UNUSED typename std::enable_if< t_wt::lex_ordered, csa_tag >::type x=csa_tag()) |
Bidirectional search in forward direction. | |
template<class t_csa, class t_pat_iter> | |
t_csa::size_type | count (t_csa const &csa, t_pat_iter begin, t_pat_iter end, csa_tag) |
Counts the number of occurrences of a pattern in a CSA. | |
template<class t_csx, class t_pat_iter> | |
t_csx::size_type | count (t_csx const &csx, t_pat_iter begin, t_pat_iter end) |
template<class t_csx> | |
t_csx::size_type | count (t_csx const &csx, const typename t_csx::string_type &pat) |
Counts the number of occurrences of a pattern in a CSA. | |
template<typename t_csx, typename t_pat_iter> | |
auto | lex_interval (t_csx const &csx, t_pat_iter begin, t_pat_iter end) -> std::array< typename t_csx::size_type, 2 > |
Returns the lexicographic interval of a pattern in the SA. | |
template<class t_csa, class t_pat_iter, class t_rac = int_vector<64>> | |
t_rac | locate (t_csa const &csa, t_pat_iter begin, t_pat_iter end, SDSL_UNUSED typename std::enable_if< std::is_same< csa_tag, typename t_csa::index_category >::value, csa_tag >::type x=csa_tag()) |
Calculates all occurrences of a pattern pat in a CSA. | |
template<class t_csx, class t_rac = int_vector<64>> | |
t_rac | locate (t_csx const &csx, const typename t_csx::string_type &pat) |
Calculates all occurrences of a pattern pat in a CSA/CST. | |
template<class t_csa, class t_text_iter> | |
t_csa::size_type | extract (t_csa const &csa, typename t_csa::size_type begin, typename t_csa::size_type end, t_text_iter text, SDSL_UNUSED typename std::enable_if< std::is_same< csa_tag, typename t_csa::index_category >::value, csa_tag >::type x=csa_tag()) |
Writes the substring T[begin..end] of the original text T to text[0..end-begin+1]. | |
template<class t_csa, class t_text_iter> | |
t_csa::size_type | extract (t_csa const &csa, typename t_csa::size_type begin, typename t_csa::size_type end, t_text_iter text, lf_tag) |
Specialization of extract for LF-function based CSAs. | |
template<class t_csa, class t_text_iter> | |
t_csa::size_type | extract (t_csa const &csa, typename t_csa::size_type begin, typename t_csa::size_type end, t_text_iter text, psi_tag) |
Specialization of extract for ![]() | |
template<class t_csa> | |
t_csa::string_type | extract (t_csa const &csa, typename t_csa::size_type begin, typename t_csa::size_type end, SDSL_UNUSED typename std::enable_if< std::is_same< csa_tag, typename t_csa::index_category >::value, csa_tag >::type x=csa_tag()) |
Reconstructs the substring T[begin..end] of the original text T to text[0..end-begin+1]. | |
template<typename t_csa> | |
t_csa::char_type | first_row_symbol (const typename t_csa::size_type i, t_csa const &csa) |
Get the symbol at position i in the first row of the sorted suffixes of CSA. | |
template<class t_cst> | |
t_cst::size_type | forward_search (t_cst const &cst, typename t_cst::node_type &v, const typename t_cst::size_type d, const typename t_cst::char_type c, typename t_cst::size_type &char_pos, SDSL_UNUSED typename std::enable_if< std::is_same< cst_tag, typename t_cst::index_category >::value, cst_tag >::type x=cst_tag()) |
Forward search for a character c on the path on depth ![]() ![]() | |
template<class t_cst, class t_pat_iter> | |
t_cst::size_type | forward_search (t_cst const &cst, typename t_cst::node_type &v, typename t_cst::size_type d, t_pat_iter begin, t_pat_iter end, typename t_cst::size_type &char_pos, SDSL_UNUSED typename std::enable_if< std::is_same< cst_tag, typename t_cst::index_category >::value, cst_tag >::type x=cst_tag()) |
Forward search for a pattern pat on the path on depth ![]() ![]() | |
template<class t_cst, class t_pat_iter> | |
t_cst::size_type | count (t_cst const &cst, t_pat_iter begin, t_pat_iter end, cst_tag) |
Counts the number of occurrences of a pattern in a CST. | |
template<class t_cst, class t_pat_iter, class t_rac = int_vector<64>> | |
t_rac | locate (t_cst const &cst, t_pat_iter begin, t_pat_iter end, SDSL_UNUSED typename std::enable_if< std::is_same< cst_tag, typename t_cst::index_category >::value, cst_tag >::type x=cst_tag()) |
Calculates all occurrences of a pattern pat in a CST. | |
template<class t_cst, class t_text_iter> | |
t_cst::size_type | extract (t_cst const &cst, const typename t_cst::node_type &v, t_text_iter text, SDSL_UNUSED typename std::enable_if< std::is_same< cst_tag, typename t_cst::index_category >::value, cst_tag >::type x=cst_tag()) |
Calculate the concatenation of edge labels from the root to the node v of a CST. | |
template<class t_cst> | |
t_cst::csa_type::string_type | extract (t_cst const &cst, const typename t_cst::node_type &v, SDSL_UNUSED typename std::enable_if< std::is_same< cst_tag, typename t_cst::index_category >::value, cst_tag >::type x=cst_tag()) |
Calculate the concatenation of edge labels from the root to the node v of of c CST. | |
template<class t_cst> | |
double | H0 (const typename t_cst::node_type &v, t_cst const &cst) |
Calculate the zeroth order entropy of the text that follows a certain substring s. | |
template<class t_cst> | |
std::pair< double, size_t > | Hk (t_cst const &cst, typename t_cst::size_type k) |
Calculate the k-th order entropy of a text. | |
template<class t_rac> | |
void | construct_supercartesian_tree_bp (t_rac const &vec, bit_vector &bp, bool const minimum=true) |
Calculate the balanced parentheses of the Super-Cartesian tree, described in Ohlebusch and Gog (SPIRE 2009). | |
template<class t_rac> | |
bit_vector | construct_supercartesian_tree_bp_succinct (t_rac const &vec, bool const minimum=true) |
Calculate the balanced parentheses of the Super-Cartesian tree, described in Ohlebusch and Gog (SPIRE 2009). | |
template<uint8_t t_width> | |
bit_vector | construct_supercartesian_tree_bp_succinct (int_vector_buffer< t_width > &lcp_buf, bool const minimum=true) |
Calculate the balanced parentheses of the Super-Cartesian tree, described in Ohlebusch and Gog (SPIRE 2009). | |
template<uint8_t t_width> | |
bit_vector::size_type | construct_supercartesian_tree_bp_succinct_and_first_child (int_vector_buffer< t_width > &lcp_buf, bit_vector &bp, bit_vector &bp_fc, bool const minimum=true) |
Calculate the balanced parentheses of the Super-Cartesian tree, described in Ohlebusch and Gog (SPIRE 2009) and the first_child bit_vector. | |
template<class t_csa> | |
t_csa::size_type | get_char_pos (typename t_csa::size_type idx, typename t_csa::size_type d, t_csa const &csa) |
std::ostream & | operator<< (std::ostream &os, uint128_t const &x) |
std::ostream & | operator<< (std::ostream &os, uint256_t const &x) |
template<class t_wt> | |
std::vector< std::pair< typename t_wt::value_type, typename t_wt::size_type > > | intersect (t_wt const &wt, std::vector< range_type > const &ranges, typename t_wt::size_type t=0) |
Intersection of elements in WT[s_0,e_0], WT[s_1,e_1],...,WT[s_k,e_k]. | |
template<class t_wt> | |
std::pair< typename t_wt::value_type, typename t_wt::size_type > | quantile_freq (t_wt const &wt, typename t_wt::size_type lb, typename t_wt::size_type rb, typename t_wt::size_type q) |
Returns the q-th smallest element and its frequency in wt[lb..rb]. | |
template<class t_wt> | |
void | _interval_symbols_rec (t_wt const &wt, range_type r, typename t_wt::size_type &k, std::vector< typename t_wt::value_type > &cs, std::vector< typename t_wt::size_type > &rank_c_i, std::vector< typename t_wt::size_type > &rank_c_j, const typename t_wt::node_type &v) |
template<class t_wt> | |
void | _interval_symbols (t_wt const &wt, typename t_wt::size_type i, typename t_wt::size_type j, typename t_wt::size_type &k, std::vector< typename t_wt::value_type > &cs, std::vector< typename t_wt::size_type > &rank_c_i, std::vector< typename t_wt::size_type > &rank_c_j) |
template<class t_wt> | |
void | interval_symbols (t_wt const &wt, typename t_wt::size_type i, typename t_wt::size_type j, typename t_wt::size_type &k, std::vector< typename t_wt::value_type > &cs, std::vector< typename t_wt::size_type > &rank_c_i, std::vector< typename t_wt::size_type > &rank_c_j) |
For each symbol c in wt[i..j-1] get rank(i,c) and rank(j,c). | |
template<class t_wt> | |
std::pair< bool, typename t_wt::value_type > | _symbol_lte (t_wt const &wt, typename t_wt::value_type c) |
Returns for a symbol c the previous smaller or equal symbol in the WT. | |
template<class t_wt> | |
std::pair< bool, typename t_wt::value_type > | _symbol_gte (t_wt const &wt, typename t_wt::value_type c) |
Returns for a symbol c the next larger or equal symbol in the WT. | |
template<class t_wt> | |
std::pair< bool, typename t_wt::value_type > | symbol_lte (t_wt const &wt, typename t_wt::value_type c) |
Returns for a symbol c the previous smaller or equal symbol in the WT. | |
template<class t_wt> | |
std::pair< bool, typename t_wt::value_type > | symbol_gte (t_wt const &wt, typename t_wt::value_type c) |
Returns for a symbol c the next larger or equal symbol in the WT. | |
template<class t_wt> | |
std::vector< typename t_wt::value_type > | restricted_unique_range_values (t_wt const &wt, typename t_wt::size_type x_i, typename t_wt::size_type x_j, typename t_wt::value_type y_i, typename t_wt::value_type y_j) |
Returns for a x range [x_i,x_j] and a value range [y_i,y_j] all unique y values occuring in [x_i,x_j] in ascending order. | |
template<class t_rac> | |
void | _transform_to_compressed (int_vector<> &iv, typename std::enable_if<!(std::is_same< t_rac, int_vector<> >::value), t_rac >::type &rac, const std::string filename) |
template<class t_rac> | |
void | _transform_to_compressed (int_vector<> &iv, typename std::enable_if< std::is_same< t_rac, int_vector<> >::value, t_rac >::type &rac, const std::string) |
bool | empty (range_type const &r) |
Empty range check. | |
int_vector ::size_type | size (range_type const &r) |
Size of a range. | |
template<typename t_it, typename t_rac> | |
void | calculate_character_occurences (t_it begin, t_it end, t_rac &C) |
Count for each character the number of occurrences in rac[0..size-1]. | |
template<typename t_rac, typename sigma_type> | |
void | calculate_effective_alphabet_size (t_rac const &C, sigma_type &sigma) |
Variables | |
template<typename T> | |
constexpr uint8_t | bits_impl< T >::lt_cnt [256] |
template<typename T> | |
constexpr uint32_t | bits_impl< T >::lt_deBruijn_to_idx [64] |
template<typename T> | |
constexpr uint32_t | bits_impl< T >::lt_hi [256] |
template<typename T> | |
constexpr uint64_t | bits_impl< T >::lo_set [65] |
template<typename T> | |
constexpr uint64_t | bits_impl< T >::lo_unset [65] |
template<typename T> | |
constexpr uint64_t | bits_impl< T >::ps_overflow [65] |
template<typename T> | |
constexpr uint8_t | bits_impl< T >::lt_sel [256 *8] |
template<typename T> | |
constexpr uint64_t | bits_impl< T >::lt_fib [92] |
template<typename T> | |
constexpr uint8_t | bits_impl< T >::lt_lo [256] |
template<typename T> | |
excess< T >::impl | excess< T >::data |
template<typename T> | |
char const * | key_text_trait_impl< 0, T >::KEY_TEXT = conf::KEY_TEXT_INT |
template<typename T> | |
char const * | key_text_trait_impl< 8, T >::KEY_TEXT = conf::KEY_TEXT |
template<typename T> | |
char const * | key_bwt_trait_impl< 0, T >::KEY_BWT = conf::KEY_BWT_INT |
template<typename T> | |
char const * | key_bwt_trait_impl< 8, T >::KEY_BWT = conf::KEY_BWT |
template<uint32_t k_sblock_rate> | |
const uint32_t | hyb_vector< k_sblock_rate >::k_block_size = 256 |
template<uint32_t k_sblock_rate> | |
const uint32_t | hyb_vector< k_sblock_rate >::k_block_bytes = 32 |
template<uint32_t k_sblock_rate> | |
const uint32_t | hyb_vector< k_sblock_rate >::k_sblock_header_size = 8 + 2 * k_sblock_rate |
template<uint32_t k_sblock_rate> | |
const uint32_t | hyb_vector< k_sblock_rate >::k_sblock_size = 256 * k_sblock_rate |
template<uint32_t k_sblock_rate> | |
const uint32_t | hyb_vector< k_sblock_rate >::k_hblock_rate = (1U << 31) / 256 |
template<uint8_t alphabet_size> | |
const std::array< uint64_t, alphabet_size > | rank_support_int< alphabet_size >::masks = generate_mask_array() |
template<uint16_t n, class number_type> | |
binomial_table< n, number_type >::impl | binomial_table< n, number_type >::data |
template<uint16_t n> | |
binomial_coefficients< n >::impl | binomial_coefficients< n >::data |
template<typename T> | |
binomial15_impl< T >::impl | binomial15_impl< T >::iii |
constexpr uint8_t | sdsl_version_major = SDSL_VERSION_MAJOR |
The major version. | |
constexpr uint8_t | sdsl_version_minor = SDSL_VERSION_MINOR |
The minor version. | |
constexpr uint8_t | sdsl_version_patch = SDSL_VERSION_PATCH |
The patch version. | |
std::string const | sdsl_version |
The full version as std::string. |
Namespace for the succinct data structure library.
Namespace for the succint data structure library.
using sdsl::binomial15 = binomial15_impl<> |
Definition at line 120 of file rrr_vector_15.hpp.
typedef int_vector<1> sdsl::bit_vector |
bit_vector is a specialization of the int_vector.
Definition at line 44 of file int_vector.hpp.
using sdsl::bit_vector_mapper = int_vector_mapper<1, t_mode> |
Definition at line 484 of file int_vector_mapper.hpp.
using sdsl::bits = bits_impl<> |
using sdsl::csa_sada_int = csa_sada<t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, int_alphabet<>> |
Definition at line 50 of file suffix_arrays.hpp.
using sdsl::csa_wt_int = csa_wt<t_wt, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, int_alphabet<>> |
Typedef for convenient usage of std integer alphabet strategy.
Definition at line 41 of file suffix_arrays.hpp.
typedef uint64_t sdsl::int_vector_size_type |
Definition at line 47 of file config.hpp.
using sdsl::key_bwt_trait = key_bwt_trait_impl<width, void> |
Definition at line 147 of file config.hpp.
using sdsl::key_text_trait = key_text_trait_impl<width, void> |
Definition at line 144 of file config.hpp.
using sdsl::lcp_dac = lcp_vlc<dac_vector<t_b, t_rank>> |
A class for the compressed version of LCP information of an suffix array.
A dac_vector is used to compress represent the values compressed. The template parameter are forwarded to the dac_vector.
t_b | Split block size. |
t_rank | Rank structure to navigate between the different levels. |
Definition at line 27 of file lcp_dac.hpp.
typedef struct sdsl::bfoot sdsl::mm_block_foot_t |
typedef struct sdsl::mm_block sdsl::mm_block_t |
using sdsl::range_maximum_support_sparse_table = rmq_support_sparse_table<t_rac, false> |
Definition at line 32 of file rmq_support_sparse_table.hpp.
typedef std::array<int_vector<>::size_type, 2> sdsl::range_type |
Definition at line 27 of file wt_helper.hpp.
typedef std::vector<range_type> sdsl::range_vec_type |
Definition at line 28 of file wt_helper.hpp.
using sdsl::read_only_mapper = int_vector_mapper<t_width, std::ios_base::in> const |
Definition at line 487 of file int_vector_mapper.hpp.
typedef uint64_t sdsl::std_size_type_for_int_vector |
Definition at line 38 of file int_vector.hpp.
typedef std::list<int_vector<>::size_type> sdsl::tLI |
Definition at line 180 of file construct_lcp_helper.hpp.
typedef std::map<std::string, std::string> sdsl::tMSS |
Definition at line 49 of file config.hpp.
using sdsl::trbudget_t = struct _trbudget_t<saidx_t> |
Definition at line 1438 of file divsufsort.hpp.
typedef std::vector<int_vector<>::size_type> sdsl::tVI |
Definition at line 181 of file construct_lcp_helper.hpp.
using sdsl::wt_blcd_int = wt_pc<balanced_shape, t_bitvector, t_rank, t_select_one, t_select_zero, int_tree<>> |
Definition at line 61 of file wavelet_trees.hpp.
using sdsl::wt_huff_int = wt_pc<huff_shape, t_bitvector, t_rank, t_select, t_select_zero, int_tree<>> |
Definition at line 55 of file wavelet_trees.hpp.
using sdsl::wt_hutu_int = wt_pc<hutu_shape, t_bitvector, t_rank, t_select, t_select_zero, int_tree<>> |
Definition at line 49 of file wavelet_trees.hpp.
Enumerator | |
---|---|
LIBDIVSUFSORT | |
SE_SAIS |
Definition at line 58 of file config.hpp.
enum sdsl::format_type |
Enumerator | |
---|---|
JSON_FORMAT | |
R_FORMAT | |
HTML_FORMAT |
Definition at line 51 of file config.hpp.
uint64_t sdsl::__count | ( | t_k2_treap const & | treap, |
typename t_k2_treap::node_type | v ) |
Definition at line 358 of file k2_treap_algorithm.hpp.
|
inline |
Definition at line 2541 of file divsufsort.hpp.
|
inline |
Definition at line 62 of file construct_sa_se.hpp.
void sdsl::_construct_sa_se | ( | int_vector_type & | text, |
std::string | filename_sa, | ||
uint64_t | sigma, | ||
uint64_t | recursion ) |
Definition at line 318 of file construct_sa_se.hpp.
uint64_t sdsl::_count | ( | t_k2_treap const & | treap, |
k2_treap_ns::point_type | p1, | ||
k2_treap_ns::point_type | p2, | ||
typename t_k2_treap::node_type | v ) |
Definition at line 334 of file k2_treap_algorithm.hpp.
uint64_t sdsl::_get_next_lms_position | ( | int_vector_type & | text, |
uint64_t | i ) |
Definition at line 29 of file construct_sa_se.hpp.
t_csa const & sdsl::_idx_csa | ( | t_csa const & | t, |
csa_tag | ) |
const t_cst::csa_type & sdsl::_idx_csa | ( | t_cst const & | t, |
cst_tag | ) |
std::string sdsl::_idx_lcp_val | ( | t_csa const & | , |
uint64_t | , | ||
uint64_t | , | ||
csa_tag | ) |
std::string sdsl::_idx_lcp_val | ( | t_cst const & | t, |
uint64_t | i, | ||
uint64_t | w, | ||
cst_tag | ) |
void sdsl::_interval_symbols | ( | t_wt const & | wt, |
typename t_wt::size_type | i, | ||
typename t_wt::size_type | j, | ||
typename t_wt::size_type & | k, | ||
std::vector< typename t_wt::value_type > & | cs, | ||
std::vector< typename t_wt::size_type > & | rank_c_i, | ||
std::vector< typename t_wt::size_type > & | rank_c_j ) |
Definition at line 184 of file wt_algorithm.hpp.
void sdsl::_interval_symbols_rec | ( | t_wt const & | wt, |
range_type | r, | ||
typename t_wt::size_type & | k, | ||
std::vector< typename t_wt::value_type > & | cs, | ||
std::vector< typename t_wt::size_type > & | rank_c_i, | ||
std::vector< typename t_wt::size_type > & | rank_c_j, | ||
const typename t_wt::node_type & | v ) |
Definition at line 153 of file wt_algorithm.hpp.
|
inline |
std::pair< bool, typename t_wt::value_type > sdsl::_symbol_gte | ( | t_wt const & | wt, |
typename t_wt::value_type | c ) |
Returns for a symbol c the next larger or equal symbol in the WT.
c | the symbol |
Definition at line 431 of file wt_algorithm.hpp.
std::pair< bool, typename t_wt::value_type > sdsl::_symbol_lte | ( | t_wt const & | wt, |
typename t_wt::value_type | c ) |
Returns for a symbol c the previous smaller or equal symbol in the WT.
c | the symbol |
Definition at line 370 of file wt_algorithm.hpp.
void sdsl::_transform_to_compressed | ( | int_vector<> & | iv, |
typename std::enable_if< std::is_same< t_rac, int_vector<> >::value, t_rac >::type & | rac, | ||
const std::string | ) |
Definition at line 332 of file wt_gmr.hpp.
void sdsl::_transform_to_compressed | ( | int_vector<> & | iv, |
typename std::enable_if<!(std::is_same< t_rac, int_vector<> >::value), t_rac >::type & | rac, | ||
const std::string | filename ) |
Definition at line 319 of file wt_gmr.hpp.
|
inline |
void sdsl::_write_structure | ( | std::unique_ptr< structure_tree_node > & | st_node, |
X | x, | ||
Xs... | xs ) |
void sdsl::add_hash | ( | T const & | t, |
std::ostream & | out ) |
void sdsl::append_zero_symbol | ( | int_vector & | text | ) |
Definition at line 49 of file construct.hpp.
t_csa::size_type sdsl::backward_search | ( | t_csa const & | csa, |
typename t_csa::size_type | l, | ||
typename t_csa::size_type | r, | ||
t_pat_iter | begin, | ||
t_pat_iter | end, | ||
typename t_csa::size_type & | l_res, | ||
typename t_csa::size_type & | r_res, | ||
SDSL_UNUSED typename std::enable_if< std::is_same< csa_tag, typename t_csa::index_category >::value, csa_tag >::type | x = csa_tag() ) |
Backward search for a pattern in an
t_csa | A CSA type. |
t_pat_iter | Pattern iterator type. |
csa | The CSA object. |
l | Left border of the lcp-interval ![]() |
r | Right border of the lcp-interval ![]() |
begin | Iterator to the begin of the pattern (inclusive). |
end | Iterator to the end of the pattern (exclusive). |
l_res | New left border. |
r_res | New right border. |
Definition at line 228 of file suffix_array_algorithm.hpp.
t_csa::size_type sdsl::backward_search | ( | t_csa const & | csa, |
typename t_csa::size_type | l, | ||
typename t_csa::size_type | r, | ||
typename t_csa::char_type | c, | ||
typename t_csa::size_type & | l_res, | ||
typename t_csa::size_type & | r_res, | ||
SDSL_UNUSED typename std::enable_if< std::is_same< csa_tag, typename t_csa::index_category >::value, csa_tag >::type | x = csa_tag() ) |
Backward search for a character c in an
t_csa | CSA type. |
csa | The CSA object. |
l | Left border of the interval ![]() |
r | Right border of the interval ![]() |
c | Character to be prepended to ![]() |
l_res | New left border. |
r_res | Right border. |
Definition at line 167 of file suffix_array_algorithm.hpp.
csa_wt< t_wt >::size_type sdsl::bidirectional_search | ( | csa_wt< t_wt, t_dens, t_inv_dens, t_sa_sample_strat, t_isa, t_alphabet_strat > const & | csa_fwd, |
typename csa_wt<>::size_type | l_fwd, | ||
typename csa_wt<>::size_type | r_fwd, | ||
typename csa_wt<>::size_type | l_bwd, | ||
typename csa_wt<>::size_type | r_bwd, | ||
typename csa_wt<>::char_type | c, | ||
typename csa_wt<>::size_type & | l_fwd_res, | ||
typename csa_wt<>::size_type & | r_fwd_res, | ||
typename csa_wt<>::size_type & | l_bwd_res, | ||
typename csa_wt<>::size_type & | r_bwd_res, | ||
SDSL_UNUSED typename std::enable_if< t_wt::lex_ordered, csa_tag >::type | x = csa_tag() ) |
Bidirectional search for a character c on an interval
csa_fwd | The CSA object of the forward text in which the backward_search should be done. |
l_fwd | Left border of the lcp-interval ![]() |
r_fwd | Right border of the lcp-interval ![]() |
l_bwd | Left border of the lcp-interval ![]() |
r_bwd | Right border of the lcp-interval ![]() |
c | The character c which is the starting character of the suffixes in the resulting interval ![]() |
l_fwd_res | Reference to the resulting left border in suffix array of the forward text. |
r_fwd_res | Reference to the resulting right border in suffix array of the forward text. |
l_bwd_res | Reference to the resulting left border in suffix array of the backward text. |
r_bwd_res | Reference to the resulting right border in suffix array of the backward text. |
Definition at line 273 of file suffix_array_algorithm.hpp.
csa_wt ::size_type sdsl::bidirectional_search_backward | ( | csa_wt< t_wt, t_dens, t_inv_dens, t_sa_sample_strat, t_isa, t_alphabet_strat > const & | csa_fwd, |
SDSL_UNUSED csa_wt< t_wt, t_dens, t_inv_dens, t_sa_sample_strat, t_isa, t_alphabet_strat > const & | csa_bwd, | ||
typename csa_wt<>::size_type | l_fwd, | ||
typename csa_wt<>::size_type | r_fwd, | ||
typename csa_wt<>::size_type | l_bwd, | ||
typename csa_wt<>::size_type | r_bwd, | ||
t_pat_iter | begin, | ||
t_pat_iter | end, | ||
typename csa_wt<>::size_type & | l_fwd_res, | ||
typename csa_wt<>::size_type & | r_fwd_res, | ||
typename csa_wt<>::size_type & | l_bwd_res, | ||
typename csa_wt<>::size_type & | r_bwd_res, | ||
SDSL_UNUSED typename std::enable_if< t_wt::lex_ordered, csa_tag >::type | x = csa_tag() ) |
Bidirectional search in backward direction.
The function requires a pattern
t_pat_iter | Pattern iterator type. |
csa_fwd | The CSA object of the forward text. |
csa_bwd | The CSA object of the backward text. |
l_fwd | Left border of the lcp-interval ![]() |
r_fwd | Right border of the lcp-interval ![]() |
l_bwd | Left border of the lcp-interval ![]() |
r_bwd | Right border of the lcp-interval ![]() |
begin | Iterator to the begin of the pattern (inclusive). |
end | Iterator to the end of the pattern (exclusive). |
l_fwd_res | Reference to the resulting left border in suffix array of the forward text. |
r_fwd_res | Reference to the resulting right border in suffix array of the forward text. |
l_bwd_res | Reference to the resulting left border in suffix array of the backward text. |
r_bwd_res | Reference to the resulting right border in suffix array of the backward text. |
Definition at line 339 of file suffix_array_algorithm.hpp.
csa_wt< t_wt >::size_type sdsl::bidirectional_search_forward | ( | SDSL_UNUSED csa_wt< t_wt, t_dens, t_inv_dens, t_sa_sample_strat, t_isa, t_alphabet_strat > const & | csa_fwd, |
csa_wt< t_wt, t_dens, t_inv_dens, t_sa_sample_strat, t_isa, t_alphabet_strat > const & | csa_bwd, | ||
typename csa_wt<>::size_type | l_fwd, | ||
typename csa_wt<>::size_type | r_fwd, | ||
typename csa_wt<>::size_type | l_bwd, | ||
typename csa_wt<>::size_type | r_bwd, | ||
t_pat_iter | begin, | ||
t_pat_iter | end, | ||
typename csa_wt<>::size_type & | l_fwd_res, | ||
typename csa_wt<>::size_type & | r_fwd_res, | ||
typename csa_wt<>::size_type & | l_bwd_res, | ||
typename csa_wt<>::size_type & | r_bwd_res, | ||
SDSL_UNUSED typename std::enable_if< t_wt::lex_ordered, csa_tag >::type | x = csa_tag() ) |
Bidirectional search in forward direction.
The function requires a pattern
t_pat_iter | Pattern iterator type. |
csa_fwd | The CSA object of the forward text. |
csa_bwd | The CSA object of the backward text. |
l_fwd | Left border of the lcp-interval ![]() |
r_fwd | Right border of the lcp-interval ![]() |
l_bwd | Left border of the lcp-interval ![]() |
r_bwd | Right border of the lcp-interval ![]() |
begin | Iterator to the begin of the pattern (inclusive). |
end | Iterator to the end of the pattern (exclusive). |
l_fwd_res | Reference to the resulting left border in suffix array of the forward text. |
r_fwd_res | Reference to the resulting right border in suffix array of the forward text. |
l_bwd_res | Reference to the resulting left border in suffix array of the backward text. |
r_bwd_res | Reference to the resulting right border in suffix array of the backward text. |
Definition at line 413 of file suffix_array_algorithm.hpp.
|
inline |
Definition at line 275 of file memory_management.hpp.
|
inline |
Definition at line 348 of file memory_management.hpp.
|
inline |
Definition at line 354 of file memory_management.hpp.
|
inline |
Definition at line 310 of file memory_management.hpp.
|
inline |
Definition at line 361 of file memory_management.hpp.
|
inline |
Definition at line 367 of file memory_management.hpp.
|
inline |
Definition at line 293 of file memory_management.hpp.
|
inline |
Definition at line 316 of file memory_management.hpp.
|
inline |
Definition at line 282 of file memory_management.hpp.
|
inline |
Definition at line 325 of file memory_management.hpp.
|
inline |
Definition at line 304 of file memory_management.hpp.
|
inline |
Definition at line 341 of file memory_management.hpp.
|
inline |
bool sdsl::cache_file_exists | ( | std::string const & | key, |
cache_config const & | config ) |
|
inline |
std::string sdsl::cache_file_name | ( | std::string const & | key, |
cache_config const & | config ) |
void sdsl::calculate_character_occurences | ( | t_it | begin, |
t_it | end, | ||
t_rac & | C ) |
Count for each character the number of occurrences in rac[0..size-1].
C | An array of size 256, which contains for each character the number of occurrences in rac[0..size-1] |
Definition at line 47 of file wt_helper.hpp.
void sdsl::calculate_effective_alphabet_size | ( | t_rac const & | C, |
sigma_type & | sigma ) |
Definition at line 62 of file wt_helper.hpp.
void sdsl::calculate_enclose | ( | bit_vector const & | bp, |
int_vector & | enclose ) |
Calculates enclose answers for a balanced parentheses sequence.
bp | A bit_vector representing a balanced parentheses sequence. |
enclose | Reference to the result. |
Definition at line 328 of file bp_support_algorithm.hpp.
void sdsl::calculate_matches | ( | bit_vector const & | bp, |
int_vector & | matches ) |
find_open/find_close for closing/opening parentheses.
bp | The balanced parentheses sequence. |
matches | Reference to the result. |
Definition at line 293 of file bp_support_algorithm.hpp.
|
inline |
Calculate pioneers as defined in the paper of Geary et al. (CPM 2004)
bp | The balanced parentheses sequence. |
block_size | Block size. |
Definition at line 180 of file bp_support_algorithm.hpp.
|
inline |
Space-efficient version of calculate_pioneers_bitmap.
bp | The balanced parentheses sequence. |
block_size | Block size. |
Definition at line 233 of file bp_support_algorithm.hpp.
|
constexpr |
Definition at line 43 of file rank_support_int.hpp.
void sdsl::construct | ( | k2_treap< t_k, t_bv, t_rank, t_max_vec > & | idx, |
std::string | file, | ||
cache_config & | config ) |
Specialized version of method ,,construct'' for k2_treaps.
Definition at line 373 of file k2_treap_algorithm.hpp.
void sdsl::construct | ( | t_index & | idx, |
std::string const & | file, | ||
cache_config & | config, | ||
uint8_t | num_bytes, | ||
csa_tag | ) |
Definition at line 128 of file construct.hpp.
void sdsl::construct | ( | t_index & | idx, |
std::string const & | file, | ||
cache_config & | config, | ||
uint8_t | num_bytes, | ||
cst_tag | ) |
Definition at line 269 of file construct.hpp.
void sdsl::construct | ( | t_index & | idx, |
std::string const & | file, | ||
cache_config & | config, | ||
uint8_t | num_bytes, | ||
lcp_tag | tag ) |
Definition at line 255 of file construct.hpp.
void sdsl::construct | ( | t_index & | idx, |
std::string const & | file, | ||
cache_config & | config, | ||
uint8_t | num_bytes, | ||
lcp_tag | ) |
Definition at line 197 of file construct.hpp.
void sdsl::construct | ( | t_index & | idx, |
std::string const & | file, | ||
cache_config & | config, | ||
uint8_t | num_bytes, | ||
wt_tag | ) |
Definition at line 97 of file construct.hpp.
void sdsl::construct | ( | t_index & | idx, |
std::string const & | file, | ||
cache_config & | config, | ||
uint8_t | num_bytes = 0 ) |
Constructs an index object of type t_index for a text stored on disk.
idx | t_index object. Any sdsl suffix array of suffix tree. |
file | Name of the text file. The representation of the file is dependent on the next parameter. \ |
num_bytes | If num_bytes equals 0, the file format is a serialized int_vector<>. Otherwise the file is interpreted as sequence of num_bytes-byte integer stored in big endian order. |
Definition at line 88 of file construct.hpp.
void sdsl::construct | ( | t_index & | idx, |
std::string | file, | ||
uint8_t | num_bytes = 0, | ||
bool | move_input = false ) |
Definition at line 56 of file construct.hpp.
|
inline |
Definition at line 2361 of file divsufsort.hpp.
void sdsl::construct_bwt | ( | cache_config & | config | ) |
Constructs the Burrows and Wheeler Transform (BWT) from text over byte- or integer-alphabet and suffix array.
The algorithm constructs the BWT and stores it to disk.
t_width | Width of the text. 0==integer alphabet, 8=byte alphabet. |
config | Reference to cache configuration |
Definition at line 38 of file construct_bwt.hpp.
|
externinline |
Definition at line 17 of file construct_config.hpp.
void sdsl::construct_first_child_and_lf_lcp | ( | int_vector_buffer<> & | lcp_buf, |
int_vector_buffer< t_bwt_width > & | bwt_buf, | ||
std::string const & | small_lcp_file, | ||
std::string const & | big_lcp_file, | ||
int_vector<> & | big_lcp ) |
t_dens | Sample an LCP value x if x modulo t_dens == 0 |
t_bwt_width | Width of the integers of the streamed BWT array. |
Definition at line 239 of file lcp_support_tree2.hpp.
|
inline |
Definition at line 27 of file lcp_support_tree.hpp.
void sdsl::construct_im | ( | k2_treap< t_k, t_bv, t_rank, t_max_vec > & | idx, |
std::vector< std::array< uint64_t, 3 > > | data ) |
Specialized version of method ,,construct_im'' for k2_treaps.
Definition at line 383 of file k2_treap_algorithm.hpp.
void sdsl::construct_im | ( | t_index & | idx, |
t_data && | data, | ||
uint8_t | num_bytes = 0 ) |
Definition at line 69 of file construct.hpp.
|
inline |
Definition at line 22 of file construct_isa.hpp.
void sdsl::construct_lcp | ( | t_lcp & | lcp, |
t_cst const & | , | ||
cache_config & | config, | ||
lcp_plain_tag | ) |
void sdsl::construct_lcp | ( | t_lcp & | lcp, |
t_cst const & | cst, | ||
cache_config & | config ) |
void sdsl::construct_lcp | ( | t_lcp & | lcp, |
t_cst const & | cst, | ||
cache_config & | config, | ||
lcp_permuted_tag | ) |
void sdsl::construct_lcp | ( | t_lcp & | lcp, |
t_cst const & | cst, | ||
cache_config & | config, | ||
lcp_tree_and_lf_compressed_tag | ) |
void sdsl::construct_lcp | ( | t_lcp & | lcp, |
t_cst const & | cst, | ||
cache_config & | config, | ||
lcp_tree_compressed_tag | ) |
|
inline |
Construct the LCP array out of the BWT (only for byte strings)
The algorithm computes the lcp array and stores it to disk. It needs only the Burrows and Wheeler transform.
config | Reference to cache configuration |
Definition at line 991 of file construct_lcp.hpp.
void sdsl::construct_lcp_bwt_based2 | ( | cache_config & | config | ) |
Construct the LCP array out of the BWT (only for byte strings)
The algorithm computes the lcp array and stores it to disk. It needs only the Burrows and Wheeler transform.
config | Reference to cache configuration |
Definition at line 1285 of file construct_lcp.hpp.
|
inline |
Construct the LCP array (only for byte strings)
The algorithm computes the lcp array and stores it to disk. Our new 2 phases lcp algorithm
config | Reference to cache configuration |
Definition at line 338 of file construct_lcp.hpp.
|
inline |
Construct the LCP array (only for byte strings)
The algorithm computes the lcp array and stores it to disk. Our new 2 phases lcp algorithm
config | Reference to cache configuration |
Definition at line 732 of file construct_lcp.hpp.
void sdsl::construct_lcp_kasai | ( | cache_config & | config | ) |
Construct the LCP array for text over byte- or integer-alphabet.
The algorithm computes the lcp array and stores it to disk.
t_width | Width of the text. 0==integer alphabet, 8=byte alphabet. |
config | Reference to cache configuration |
Definition at line 63 of file construct_lcp.hpp.
void sdsl::construct_lcp_PHI | ( | cache_config & | config | ) |
Construct the LCP array for text over byte- or integer-alphabet.
The algorithm computes the lcp array and stores it to disk.
Definition at line 134 of file construct_lcp.hpp.
|
inline |
Construct the LCP array (only for byte strings)
The algorithm computes the lcp array and stores it to disk.
config | Reference to cache configuration |
Definition at line 216 of file construct_lcp.hpp.
|
inline |
Definition at line 2280 of file divsufsort.hpp.
void sdsl::construct_sa | ( | cache_config & | config | ) |
Constructs the Suffix Array (SA) from text over byte- or integer-alphabet.
The algorithm constructs the SA and stores it to disk.
t_width | Width of the text. 0==integer alphabet, 8=byte alphabet. |
config | Reference to cache configuration |
Definition at line 176 of file construct_sa.hpp.
|
inline |
Constructs the Suffix Array (SA) from text over byte-alphabet.
The algorithm constructs the SA and stores it to disk.
config | Reference to cache configuration |
This construction method uses less main memory, since data-structures are only kept in main memory, when random access to them is needed. Otherwise they are stored on disk. The disk-usage peak of this algorithm is about 10 times the input.
Definition at line 53 of file construct_sa.hpp.
void sdsl::construct_supercartesian_tree_bp | ( | t_rac const & | vec, |
bit_vector & | bp, | ||
bool const | minimum = true ) |
Calculate the balanced parentheses of the Super-Cartesian tree, described in Ohlebusch and Gog (SPIRE 2009).
vec | Random access container for which the Super-Cartesian tree representation should be calculated. The value_type of vec should be an unsigned integer type. |
bp | Reference to the balanced parentheses sequence which represents the Super-Cartesian tree. |
minimum | Specifies if the higher levels contains minima or maxima. Default is maxima. |
Definition at line 120 of file suffix_tree_helper.hpp.
bit_vector sdsl::construct_supercartesian_tree_bp_succinct | ( | int_vector_buffer< t_width > & | lcp_buf, |
bool const | minimum = true ) |
Calculate the balanced parentheses of the Super-Cartesian tree, described in Ohlebusch and Gog (SPIRE 2009).
lcp_buf | int_vector_buffer of the LCP Array for which the Super-Cartesian tree representation should be calculated. The value_type of vec should be an unsigned integer type. |
minimum | Specifies if the higher levels contains minima or maxima. Default is maxima. |
Definition at line 230 of file suffix_tree_helper.hpp.
bit_vector sdsl::construct_supercartesian_tree_bp_succinct | ( | t_rac const & | vec, |
bool const | minimum = true ) |
Calculate the balanced parentheses of the Super-Cartesian tree, described in Ohlebusch and Gog (SPIRE 2009).
vec | Random access container for which the Super-Cartesian tree representation should be calculated. The value_type of vec should be an unsigned integer type. |
minimum | Specifies if the higher levels contains minima or maxima. Default is maxima. |
Definition at line 171 of file suffix_tree_helper.hpp.
bit_vector::size_type sdsl::construct_supercartesian_tree_bp_succinct_and_first_child | ( | int_vector_buffer< t_width > & | lcp_buf, |
bit_vector & | bp, | ||
bit_vector & | bp_fc, | ||
bool const | minimum = true ) |
Calculate the balanced parentheses of the Super-Cartesian tree, described in Ohlebusch and Gog (SPIRE 2009) and the first_child bit_vector.
lcp_buf | int_vector_buffer for the lcp array for which the Super-Cartesian tree representation should be calculated. The value_type of vec should be an unsigned integer type. |
bp | Reference to the balanced parentheses sequence which represents the Super-Cartesian tree. |
bp_fc | Reference to the first child bit_vector of bp. |
minimum | Specifies if the higher levels contains minima or maxima. Default is maxima. |
Definition at line 294 of file suffix_tree_helper.hpp.
bool sdsl::contains_no_zero_symbol | ( | int_vector const & | text, |
std::string const & | file ) |
Definition at line 35 of file construct.hpp.
void sdsl::copy_lcp | ( | t_lcp & | lcp, |
t_lcp const & | lcp_c, | ||
t_cst const & | , | ||
lcp_plain_tag | ) |
void sdsl::copy_lcp | ( | t_lcp & | lcp, |
t_lcp const & | lcp_c, | ||
t_cst const & | cst ) |
void sdsl::copy_lcp | ( | t_lcp & | lcp, |
t_lcp const & | lcp_c, | ||
t_cst const & | cst, | ||
lcp_permuted_tag | ) |
void sdsl::copy_lcp | ( | t_lcp & | lcp, |
t_lcp const & | lcp_c, | ||
t_cst const & | cst, | ||
lcp_tree_and_lf_compressed_tag | ) |
void sdsl::copy_lcp | ( | t_lcp & | lcp, |
t_lcp const & | lcp_c, | ||
t_cst const & | cst, | ||
lcp_tree_compressed_tag | ) |
t_csa::size_type sdsl::count | ( | t_csa const & | csa, |
t_pat_iter | begin, | ||
t_pat_iter | end, | ||
csa_tag | ) |
Counts the number of occurrences of a pattern in a CSA.
t_csa | CSA type. |
t_pat_iter | Pattern iterator type. |
csa | The CSA object. |
begin | Iterator to the begin of the pattern (inclusive). |
end | Iterator to the end of the pattern (exclusive). |
Definition at line 464 of file suffix_array_algorithm.hpp.
t_cst::size_type sdsl::count | ( | t_cst const & | cst, |
t_pat_iter | begin, | ||
t_pat_iter | end, | ||
cst_tag | ) |
Counts the number of occurrences of a pattern in a CST.
t_cst | CST type. |
t_pat_iter | Pattern iterator type. |
cst | The CST object. |
begin | Iterator to the begin of the pattern (inclusive). |
end | Iterator to the end of the pattern (exclusive). |
Definition at line 127 of file suffix_tree_algorithm.hpp.
t_csx::size_type sdsl::count | ( | t_csx const & | csx, |
const typename t_csx::string_type & | pat ) |
Counts the number of occurrences of a pattern in a CSA.
t_csa | CSA type. |
csa | The CSA object. |
pat | The pattern. |
Definition at line 493 of file suffix_array_algorithm.hpp.
t_csx::size_type sdsl::count | ( | t_csx const & | csx, |
t_pat_iter | begin, | ||
t_pat_iter | end ) |
Definition at line 474 of file suffix_array_algorithm.hpp.
uint64_t sdsl::count | ( | t_k2_treap const & | treap, |
k2_treap_ns::point_type | p1, | ||
k2_treap_ns::point_type | p2 ) |
Count how many points are in the rectangle (p1,p2)
treap | k2-treap |
p1 | Lower left corner of the rectangle. |
p2 | Upper right corner of the rectangle. |
Definition at line 324 of file k2_treap_algorithm.hpp.
void sdsl::create_C_array | ( | std::vector< uint64_t > & | C, |
tWT const & | wt ) |
Definition at line 74 of file construct_lcp_helper.hpp.
|
inline |
Definition at line 131 of file structure_tree.hpp.
|
inline |
Definition at line 155 of file structure_tree.hpp.
|
inline |
Definition at line 91 of file memory_management.hpp.
|
inline |
Definition at line 111 of file memory_management.hpp.
void sdsl::csXprintf | ( | std::ostream & | out, |
std::string const & | format, | ||
t_idx const & | idx, | ||
char | sentinel = default_sentinel<t_idx>::value ) |
Prints members of CSAs and CSTs.
This is a printf like method to write members of CSAs and CSTs into an outstream.
out | Output stream. |
format | Format string. See explanation below. |
idx | CSA or CST object. |
sentinel | Character which should replace the 0-symbol in BWT/ TEXT. |
%[w]I | Row index i. | %[w]S | SA[i] | %[w]s | ISA[i] | %[w]P | PSI[i] | %[w]p | LF[i] | %[w]L | LCP[i] | only for CSTs %[w]B | BWT[i] | %[w[:W]]T | Print min(idx.size(),w) chars of each | | suffix, each char formatted by setw(W).| %% | % |
|
inline |
Returns for a RAM-file the corresponding disk file name.
Definition at line 208 of file ram_fs.hpp.
int32_t sdsl::divsufsort | ( | uint8_t const * | T, |
saidx_t * | SA, | ||
saidx_t | n ) |
Definition at line 2452 of file divsufsort.hpp.
|
inline |
Definition at line 2535 of file divsufsort.hpp.
|
inline |
Empty range check.
r | Range to check |
Definition at line 912 of file wt_helper.hpp.
t_csa::string_type sdsl::extract | ( | t_csa const & | csa, |
typename t_csa::size_type | begin, | ||
typename t_csa::size_type | end, | ||
SDSL_UNUSED typename std::enable_if< std::is_same< csa_tag, typename t_csa::index_category >::value, csa_tag >::type | x = csa_tag() ) |
Reconstructs the substring T[begin..end] of the original text T to text[0..end-begin+1].
t_rac | Random access container which should hold the result. |
t_csa | CSA type. |
csa | The CSA object. |
begin | Position of the first character which should be extracted (inclusive). |
end | Position of the last character which should be extracted (inclusive). |
Definition at line 652 of file suffix_array_algorithm.hpp.
t_csa::size_type sdsl::extract | ( | t_csa const & | csa, |
typename t_csa::size_type | begin, | ||
typename t_csa::size_type | end, | ||
t_text_iter | text, | ||
lf_tag | ) |
Specialization of extract for LF-function based CSAs.
Definition at line 600 of file suffix_array_algorithm.hpp.
t_csa::size_type sdsl::extract | ( | t_csa const & | csa, |
typename t_csa::size_type | begin, | ||
typename t_csa::size_type | end, | ||
t_text_iter | text, | ||
psi_tag | ) |
Specialization of extract for
Definition at line 624 of file suffix_array_algorithm.hpp.
t_csa::size_type sdsl::extract | ( | t_csa const & | csa, |
typename t_csa::size_type | begin, | ||
typename t_csa::size_type | end, | ||
t_text_iter | text, | ||
SDSL_UNUSED typename std::enable_if< std::is_same< csa_tag, typename t_csa::index_category >::value, csa_tag >::type | x = csa_tag() ) |
Writes the substring T[begin..end] of the original text T to text[0..end-begin+1].
t_csa | CSA type. |
t_text_iter | Random access iterator type. |
csa | The CSA object. |
begin | Position of the first character which should be extracted (inclusive). |
end | Position of the last character which should be extracted (inclusive). |
text | Random access iterator pointing to the start of an container, which can hold at least (end-begin+1) character. |
Definition at line 585 of file suffix_array_algorithm.hpp.
t_cst::csa_type::string_type sdsl::extract | ( | t_cst const & | cst, |
const typename t_cst::node_type & | v, | ||
SDSL_UNUSED typename std::enable_if< std::is_same< cst_tag, typename t_cst::index_category >::value, cst_tag >::type | x = cst_tag() ) |
Calculate the concatenation of edge labels from the root to the node v of of c CST.
t_rac | Random access container which should hold the result. |
t_cst | CSA type. |
cst | The CST object. |
Definition at line 198 of file suffix_tree_algorithm.hpp.
t_cst::size_type sdsl::extract | ( | t_cst const & | cst, |
const typename t_cst::node_type & | v, | ||
t_text_iter | text, | ||
SDSL_UNUSED typename std::enable_if< std::is_same< cst_tag, typename t_cst::index_category >::value, cst_tag >::type | x = cst_tag() ) |
Calculate the concatenation of edge labels from the root to the node v of a CST.
t_cst | CST type. |
t_text_iter | Random access iterator type. |
cst | The CST object. |
v | The node where the concatenation of the edge label ends. |
text | Random access iterator pointing to the start of an container, which can hold at least (end-begin+1) character. |
Definition at line 170 of file suffix_tree_algorithm.hpp.
t_csa::char_type sdsl::first_row_symbol | ( | const typename t_csa::size_type | i, |
t_csa const & | csa ) |
Get the symbol at position i in the first row of the sorted suffixes of CSA.
Definition at line 28 of file suffix_array_helper.hpp.
|
constexpr |
Definition at line 38 of file rank_support_int.hpp.
|
inline |
Definition at line 334 of file memory_management.hpp.
t_csa::size_type sdsl::forward_search | ( | t_csa const & | csa, |
typename t_csa::size_type | l, | ||
typename t_csa::size_type | r, | ||
t_pat_iter | begin, | ||
t_pat_iter | end, | ||
typename t_csa::size_type & | l_res, | ||
typename t_csa::size_type & | r_res, | ||
SDSL_UNUSED typename std::enable_if< std::is_same< csa_tag, typename t_csa::index_category >::value, csa_tag >::type | x = csa_tag() ) |
Forward search for a pattern in an
t_csa | A CSA type. |
t_pat_iter | Pattern iterator type. |
csa | The CSA object. |
l | Left border of the lcp-interval ![]() |
r | Right border of the lcp-interval ![]() |
begin | Iterator to the begin of the pattern (inclusive). |
end | Iterator to the end of the pattern (exclusive). |
l_res | New left border. |
r_res | New right border. |
Definition at line 44 of file suffix_array_algorithm.hpp.
t_csa::size_type sdsl::forward_search | ( | t_csa const & | csa, |
typename t_csa::size_type | l, | ||
typename t_csa::size_type | r, | ||
typename t_csa::char_type | c, | ||
typename t_csa::size_type & | l_res, | ||
typename t_csa::size_type & | r_res, | ||
SDSL_UNUSED typename std::enable_if< std::is_same< csa_tag, typename t_csa::index_category >::value, csa_tag >::type | x = csa_tag() ) |
Forward search for a character c in an
t_csa | CSA type. |
csa | The CSA object. |
l | Left border of the interval ![]() |
r | Right border of the interval ![]() |
c | Character to be prepended to ![]() |
l_res | New left border. |
r_res | Right border. |
Definition at line 130 of file suffix_array_algorithm.hpp.
t_cst::size_type sdsl::forward_search | ( | t_cst const & | cst, |
typename t_cst::node_type & | v, | ||
const typename t_cst::size_type | d, | ||
const typename t_cst::char_type | c, | ||
typename t_cst::size_type & | char_pos, | ||
SDSL_UNUSED typename std::enable_if< std::is_same< cst_tag, typename t_cst::index_category >::value, cst_tag >::type | x = cst_tag() ) |
Forward search for a character c on the path on depth
cst | The CST object |
v | The node at the endpoint of the current edge. |
d | The current depth of the path starting with 0. |
c | The character c which should be matched with pathlabel_{root()..v}[d] |
char_pos | T[char_pos-d+1..char_pos] matches with the already matched pattern P[0..d-1] or d=0 => char_pos=0. |
Definition at line 44 of file suffix_tree_algorithm.hpp.
t_cst::size_type sdsl::forward_search | ( | t_cst const & | cst, |
typename t_cst::node_type & | v, | ||
typename t_cst::size_type | d, | ||
t_pat_iter | begin, | ||
t_pat_iter | end, | ||
typename t_cst::size_type & | char_pos, | ||
SDSL_UNUSED typename std::enable_if< std::is_same< cst_tag, typename t_cst::index_category >::value, cst_tag >::type | x = cst_tag() ) |
Forward search for a pattern pat on the path on depth
cst | The compressed suffix tree. |
v | The node at the endpoint of the current edge. |
d | The current depth of the path. 0 = first character on each edge of the root node. |
pat | The character c which should be matched at the path on depth ![]() ![]() |
char_pos | One position in the text, which corresponds to the text that is already matched. If v=cst.root() and d=0 => char_pos=0. |
Definition at line 91 of file suffix_tree_algorithm.hpp.
t_csa::size_type sdsl::get_char_pos | ( | typename t_csa::size_type | idx, |
typename t_csa::size_type | d, | ||
t_csa const & | csa ) |
Definition at line 369 of file suffix_tree_helper.hpp.
double sdsl::H0 | ( | const typename t_cst::node_type & | v, |
t_cst const & | cst ) |
Calculate the zeroth order entropy of the text that follows a certain substring s.
v | A suffix tree node v. The label of the path from the root to v is s. |
cst | The suffix tree of v. |
Definition at line 223 of file suffix_tree_algorithm.hpp.
std::pair< double, size_t > sdsl::Hk | ( | t_cst const & | cst, |
typename t_cst::size_type | k ) |
Calculate the k-th order entropy of a text.
cst | The suffix tree. |
k | Parameter k for which H_k should be calculated. |
Definition at line 249 of file suffix_tree_algorithm.hpp.
void sdsl::init_char_bitvector | ( | bit_vector_type & | char_bv, |
std::map< size_type, size_type > const & | D ) |
Definition at line 559 of file csa_alphabet_strategy.hpp.
void sdsl::init_char_bitvector | ( | sd_vector< t_hi_bit_vector, t_select_1, t_select_0 > & | char_bv, |
std::map< size_type, size_type > const & | D ) |
Definition at line 572 of file csa_alphabet_strategy.hpp.
|
inline |
Merges a partial LCP array into the LCP array on disk.
partial_lcp | Vector containing LCP values for all indexes ![]() |
lcp_file | Path to the LCP array on disk. |
index_done | Entry index_done[i] indicates if LCP[i] is already calculated. |
max_lcp_value | Maximum known LCP value |
lcp_value_offset | Largest LCP value in lcp_file |
Definition at line 34 of file construct_lcp_helper.hpp.
std::vector< std::pair< typename t_wt::value_type, typename t_wt::size_type > > sdsl::intersect | ( | t_wt const & | wt, |
std::vector< range_type > const & | ranges, | ||
typename t_wt::size_type | t = 0 ) |
Intersection of elements in WT[s_0,e_0], WT[s_1,e_1],...,WT[s_k,e_k].
wt | The wavelet tree object. |
ranges | The ranges. |
t | Threshold in how many distinct ranges the value has to be present. Default: t=ranges.size() |
Definition at line 43 of file wt_algorithm.hpp.
void sdsl::interval_symbols | ( | t_wt const & | wt, |
typename t_wt::size_type | i, | ||
typename t_wt::size_type | j, | ||
typename t_wt::size_type & | k, | ||
std::vector< typename t_wt::value_type > & | cs, | ||
std::vector< typename t_wt::size_type > & | rank_c_i, | ||
std::vector< typename t_wt::size_type > & | rank_c_j ) |
For each symbol c in wt[i..j-1] get rank(i,c) and rank(j,c).
i | The start index (inclusive) of the interval. |
j | The end index (exclusive) of the interval. |
k | Reference for number of different symbols in [i..j-1]. |
cs | Reference to a vector that will contain in cs[0..k-1] all symbols that occur in [i..j-1] in ascending order. |
rank_c_i | Reference to a vector which equals rank_c_i[p] = rank(i,cs[p]), for ![]() |
rank_c_j | Reference to a vector which equals rank_c_j[p] = rank(j,cs[p]), for ![]() |
Definition at line 232 of file wt_algorithm.hpp.
|
inline |
Determines if the given file is a RAM-file.
Definition at line 189 of file ram_fs.hpp.
|
inline |
Determines if the given file is a RAM-file.
Definition at line 176 of file ram_fs.hpp.
|
constexpr |
Definition at line 83 of file csa_alphabet_strategy.hpp.
|
inlineconstexpr |
Definition at line 95 of file csa_alphabet_strategy.hpp.
|
constexpr |
Definition at line 77 of file csa_alphabet_strategy.hpp.
|
inlineconstexpr |
Definition at line 89 of file csa_alphabet_strategy.hpp.
auto sdsl::lex_interval | ( | t_csx const & | csx, |
t_pat_iter | begin, | ||
t_pat_iter | end ) -> std::array<typename t_csx::size_type, 2> |
Returns the lexicographic interval of a pattern in the SA.
t_csx | Type of CSA/CST. |
t_pat_iter | Type of pattern iterator. |
csx | CSA or CST object. |
begin | Iterator to the begin of the pattern. |
end | Iterator to the end (exlusive) of the pattern. |
Definition at line 512 of file suffix_array_algorithm.hpp.
void sdsl::load | ( | std::vector< X > & | x, |
std::istream & | in ) |
std::enable_if< has_load< X >::value, void >::type sdsl::load | ( | X & | x, |
std::istream & | in ) |
std::enable_if< std::is_standard_layout< X >::value &&std::is_trivial< X >::value, void >::type sdsl::load | ( | X & | x, |
std::istream & | in ) |
bool sdsl::load_from_cache | ( | T & | v, |
std::string const & | key, | ||
cache_config const & | config, | ||
bool | add_type_hash = false ) |
bool sdsl::load_from_checked_file | ( | T & | v, |
std::string const & | file ) |
bool sdsl::load_from_file | ( | T & | v, |
std::string const & | file ) |
void sdsl::load_lcp | ( | t_lcp & | lcp, |
std::istream & | in, | ||
t_cst const & | , | ||
lcp_plain_tag | ) |
void sdsl::load_lcp | ( | t_lcp & | lcp, |
std::istream & | in, | ||
t_cst const & | cst ) |
void sdsl::load_lcp | ( | t_lcp & | lcp, |
std::istream & | in, | ||
t_cst const & | cst, | ||
lcp_permuted_tag | ) |
void sdsl::load_lcp | ( | t_lcp & | lcp, |
std::istream & | in, | ||
t_cst const & | cst, | ||
lcp_tree_and_lf_compressed_tag | ) |
void sdsl::load_lcp | ( | t_lcp & | lcp, |
std::istream & | in, | ||
t_cst const & | cst, | ||
lcp_tree_compressed_tag | ) |
void sdsl::load_vector | ( | std::vector< T > & | vec, |
std::istream & | in ) |
bool sdsl::load_vector_from_file | ( | t_int_vec & | v, |
std::string const & | file, | ||
uint8_t | num_bytes = 1, | ||
uint8_t | max_int_width = 64 ) |
t_rac sdsl::locate | ( | t_csa const & | csa, |
t_pat_iter | begin, | ||
t_pat_iter | end, | ||
SDSL_UNUSED typename std::enable_if< std::is_same< csa_tag, typename t_csa::index_category >::value, csa_tag >::type | x = csa_tag() ) |
Calculates all occurrences of a pattern pat in a CSA.
t_csa | CSA type. |
t_pat_iter | Pattern iterator type. |
t_rac | Resizeable random access container. |
csa | The CSA object. |
begin | Iterator to the begin of the pattern (inclusive). |
end | Iterator to the end of the pattern (exclusive). |
Definition at line 535 of file suffix_array_algorithm.hpp.
t_rac sdsl::locate | ( | t_cst const & | cst, |
t_pat_iter | begin, | ||
t_pat_iter | end, | ||
SDSL_UNUSED typename std::enable_if< std::is_same< cst_tag, typename t_cst::index_category >::value, cst_tag >::type | x = cst_tag() ) |
Calculates all occurrences of a pattern pat in a CST.
t_cst | CST type. |
t_pat_iter | Pattern iterator type. |
t_rac | Resizeable random access container. |
cst | The CST object. |
begin | Iterator to the begin of the pattern (inclusive). |
end | Iterator to the end of the pattern (exclusive). |
Definition at line 148 of file suffix_tree_algorithm.hpp.
t_rac sdsl::locate | ( | t_csx const & | csx, |
const typename t_csx::string_type & | pat ) |
Calculates all occurrences of a pattern pat in a CSA/CST.
t_csa | CSA/CST type. |
t_rac | Resizeable random access container. |
csa | The CSA/CST object. |
pat | The pattern. |
Definition at line 566 of file suffix_array_algorithm.hpp.
|
inline |
Definition at line 365 of file memory_tracking.hpp.
void sdsl::move_lcp | ( | t_lcp && | lcp, |
t_lcp && | lcp_c, | ||
t_cst const & | , | ||
lcp_plain_tag | ) |
void sdsl::move_lcp | ( | t_lcp && | lcp, |
t_lcp && | lcp_c, | ||
t_cst const & | cst ) |
void sdsl::move_lcp | ( | t_lcp && | lcp, |
t_lcp && | lcp_c, | ||
t_cst const & | cst, | ||
lcp_permuted_tag | ) |
void sdsl::move_lcp | ( | t_lcp && | lcp, |
t_lcp && | lcp_c, | ||
t_cst const & | cst, | ||
lcp_tree_and_lf_compressed_tag | ) |
void sdsl::move_lcp | ( | t_lcp && | lcp, |
t_lcp && | lcp_c, | ||
t_cst const & | cst, | ||
lcp_tree_compressed_tag | ) |
|
inline |
Near backward excess.
Definition at line 566 of file bp_support_algorithm.hpp.
|
inline |
Find the opening parenthesis of the enclosing pair if this parenthesis is near.
bp | bit_vector containing the representation of the balanced parentheses sequence. |
i | Position of the opening parenthesis for which we search the position of the opening parenthesis of the enclosing parentheses pair. |
block_size | Number of entries to search for the corresponding opening parenthesis of the enclosing parentheses pair. |
Definition at line 723 of file bp_support_algorithm.hpp.
|
inline |
Definition at line 357 of file bp_support_algorithm.hpp.
|
inline |
Definition at line 409 of file bp_support_algorithm.hpp.
|
inline |
Definition at line 614 of file bp_support_algorithm.hpp.
|
inline |
Definition at line 663 of file bp_support_algorithm.hpp.
|
inline |
Definition at line 462 of file bp_support_algorithm.hpp.
|
inline |
Calculate the position with minimal excess value in the interval [l..r].
bp | The bit_vector which represents the parentheses sequence |
l | The left border of the interval. |
r | The right border of the interval. |
min_rel_ex | Reference to the relative minimal excess value with regards to excess(bp[l]) |
Definition at line 510 of file bp_support_algorithm.hpp.
|
inline |
Definition at line 742 of file bp_support_algorithm.hpp.
|
inline |
Definition at line 87 of file memory_tracking.hpp.
|
inline |
Definition at line 1568 of file int_vector.hpp.
|
inline |
Definition at line 1386 of file int_vector.hpp.
|
inline |
Definition at line 158 of file iterators.hpp.
|
inline |
Definition at line 1561 of file int_vector.hpp.
|
inline |
Definition at line 151 of file iterators.hpp.
|
inline |
Definition at line 1431 of file cst_sct3.hpp.
|
inline |
Definition at line 52 of file louds_tree.hpp.
|
inline |
|
inline |
Definition at line 1575 of file int_vector.hpp.
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 264 of file uint128_t.hpp.
|
inline |
Definition at line 302 of file uint256_t.hpp.
|
inline |
Definition at line 81 of file memory_tracking.hpp.
|
inline |
Definition at line 41 of file memory_management.hpp.
|
inline |
Definition at line 24 of file structure_tree.hpp.
|
constexpr |
Definition at line 39 of file bit_vector_il.hpp.
void sdsl::push_back_m_index | ( | size_type_class | i, |
uint8_t | c, | ||
tLI(&) | m_list[256], | ||
uint8_t(&) | m_chars[256], | ||
size_type_class & | m_char_count ) |
Definition at line 198 of file construct_lcp_helper.hpp.
void sdsl::push_front_m_index | ( | size_type_class | i, |
uint8_t | c, | ||
tLI(&) | m_list[256], | ||
uint8_t(&) | m_chars[256], | ||
size_type_class & | m_char_count ) |
Definition at line 184 of file construct_lcp_helper.hpp.
std::pair< typename t_wt::value_type, typename t_wt::size_type > sdsl::quantile_freq | ( | t_wt const & | wt, |
typename t_wt::size_type | lb, | ||
typename t_wt::size_type | rb, | ||
typename t_wt::size_type | q ) |
Returns the q-th smallest element and its frequency in wt[lb..rb].
wt | The wavelet tree. |
lb | Left array bound in T |
rb | Right array bound in T |
q | q-th largest element ('quantile'), 0-based indexed. |
Definition at line 120 of file wt_algorithm.hpp.
|
inline |
Returns the corresponding RAM-file name for file.
Definition at line 195 of file ram_fs.hpp.
k2_treap_ns::range_iterator< t_k2_treap > sdsl::range_3d | ( | t_k2_treap const & | t, |
k2_treap_ns::point_type | p1, | ||
k2_treap_ns::point_type | p2, | ||
k2_treap_ns::range_type | range ) |
Get iterator for all points in rectangle (p1,p2) with weights in range.
treap | k2-treap |
p1 | Lower left corner of the rectangle |
p2 | Upper right corner of the rectangle |
range | Range {w1,w2}. |
Definition at line 303 of file k2_treap_algorithm.hpp.
void sdsl::read_member | ( | T & | t, |
std::istream & | in ) |
|
inline |
|
inline |
|
inline |
Remove a file.
Definition at line 221 of file ram_fs.hpp.
bool sdsl::remove_from_cache | ( | std::string const & | key, |
cache_config & | config, | ||
bool | add_type_hash = false ) |
|
inline |
Rename a file.
Definition at line 234 of file ram_fs.hpp.
std::vector< typename t_wt::value_type > sdsl::restricted_unique_range_values | ( | t_wt const & | wt, |
typename t_wt::size_type | x_i, | ||
typename t_wt::size_type | x_j, | ||
typename t_wt::value_type | y_i, | ||
typename t_wt::value_type | y_j ) |
Returns for a x range [x_i,x_j] and a value range [y_i,y_j] all unique y values occuring in [x_i,x_j] in ascending order.
x_i | lower bound of the x range |
x_j | upper bound of the x range |
y_i | lower bound of the y range |
y_j | upper bound of the y range |
Definition at line 576 of file wt_algorithm.hpp.
uint64_t sdsl::serialize | ( | std::vector< X > const & | x, |
std::ostream & | out, | ||
structure_tree_node * | v = nullptr, | ||
std::string | name = "" ) |
std::enable_if< has_serialize< X >::value, typenameX::size_type >::type sdsl::serialize | ( | X const & | x, |
std::ostream & | out, | ||
structure_tree_node * | v = nullptr, | ||
std::string | name = "" ) |
std::enable_if< std::is_standard_layout< X >::value &&std::is_trivial< X >::value, uint64_t >::type sdsl::serialize | ( | X const & | x, |
std::ostream & | out, | ||
structure_tree_node * | v = nullptr, | ||
std::string | name = "" ) |
size_t sdsl::serialize_empty_object | ( | std::ostream & | , |
structure_tree_node * | v = nullptr, | ||
std::string | name = "", | ||
T const * | t = nullptr ) |
uint64_t sdsl::serialize_vector | ( | std::vector< T > const & | vec, |
std::ostream & | out, | ||
sdsl::structure_tree_node * | v, | ||
std::string | name ) |
Serialize each element of an std::vector.
vec | The vector which should be serialized. |
out | Output stream to which should be written. |
v | Structure tree node. Note: If all elements have the same structure, then it is tried to combine all elements (i.e. make one node w with size set to the cumulative sum of all sizes of the children) |
void sdsl::set_lcp_pointer | ( | t_lcp & | , |
t_cst const & | , | ||
lcp_plain_tag | ) |
void sdsl::set_lcp_pointer | ( | t_lcp & | lcp, |
t_cst const & | cst ) |
void sdsl::set_lcp_pointer | ( | t_lcp & | lcp, |
t_cst const & | cst, | ||
lcp_permuted_tag | ) |
void sdsl::set_lcp_pointer | ( | t_lcp & | lcp, |
t_cst const & | cst, | ||
lcp_tree_and_lf_compressed_tag | ) |
void sdsl::set_lcp_pointer | ( | t_lcp & | lcp, |
t_cst const & | cst, | ||
lcp_tree_compressed_tag | ) |
|
inline |
Size of a range.
r | Range to check |
Definition at line 917 of file wt_helper.hpp.
T::size_type sdsl::size_in_bytes | ( | T const & | t | ) |
double sdsl::size_in_mega_bytes | ( | T const & | t | ) |
|
inline |
Definition at line 2075 of file divsufsort.hpp.
|
inline |
Definition at line 650 of file divsufsort.hpp.
|
inline |
Definition at line 212 of file divsufsort.hpp.
|
inline |
Definition at line 261 of file divsufsort.hpp.
|
inline |
Definition at line 285 of file divsufsort.hpp.
|
inline |
Definition at line 130 of file divsufsort.hpp.
|
inline |
Definition at line 142 of file divsufsort.hpp.
|
inline |
Definition at line 719 of file divsufsort.hpp.
|
inline |
Definition at line 228 of file divsufsort.hpp.
|
inline |
Definition at line 176 of file divsufsort.hpp.
|
inline |
Definition at line 319 of file divsufsort.hpp.
|
inline |
Definition at line 342 of file divsufsort.hpp.
|
inline |
Definition at line 866 of file divsufsort.hpp.
|
inline |
Definition at line 782 of file divsufsort.hpp.
|
inline |
Definition at line 433 of file divsufsort.hpp.
|
inline |
Definition at line 404 of file divsufsort.hpp.
|
inline |
Definition at line 375 of file divsufsort.hpp.
|
inline |
Definition at line 660 of file divsufsort.hpp.
|
inline |
Definition at line 1025 of file divsufsort.hpp.
void sdsl::sssort | ( | uint8_t const * | T, |
saidx_t const * | PA, | ||
saidx_t * | first, | ||
saidx_t * | last, | ||
saidx_t * | buf, | ||
saidx_t | bufsize, | ||
saidx_t | depth, | ||
saidx_t | n, | ||
int32_t | lastsuffix ) |
Definition at line 1150 of file divsufsort.hpp.
bool sdsl::store_to_cache | ( | T const & | v, |
std::string const & | key, | ||
cache_config & | config, | ||
bool | add_type_hash = false ) |
|
inline |
bool sdsl::store_to_checked_file | ( | int_vector< t_width > const & | v, |
std::string const & | file ) |
bool sdsl::store_to_checked_file | ( | T const & | t, |
std::string const & | file ) |
|
inline |
bool sdsl::store_to_file | ( | int_vector< t_width > const & | v, |
std::string const & | file ) |
Specialization of store_to_file for int_vector.
|
inline |
bool sdsl::store_to_file | ( | T const & | v, |
std::string const & | file ) |
bool sdsl::store_to_plain_array | ( | t_int_vec & | v, |
std::string const & | file ) |
Store an int_vector as plain int_type array to disk.
|
inlinenoexcept |
Definition at line 1163 of file int_vector.hpp.
|
noexcept |
Definition at line 1665 of file int_vector.hpp.
|
inlinenoexcept |
Definition at line 1173 of file int_vector.hpp.
|
inlinenoexcept |
Definition at line 1153 of file int_vector.hpp.
|
inlinenoexcept |
Definition at line 1059 of file int_vector.hpp.
|
inlinenoexcept |
Definition at line 1080 of file int_vector.hpp.
|
inlinenoexcept |
Definition at line 1069 of file int_vector.hpp.
std::pair< bool, typename t_wt::value_type > sdsl::symbol_gte | ( | t_wt const & | wt, |
typename t_wt::value_type | c ) |
Returns for a symbol c the next larger or equal symbol in the WT.
c | the symbol |
Definition at line 559 of file wt_algorithm.hpp.
std::pair< bool, typename t_wt::value_type > sdsl::symbol_lte | ( | t_wt const & | wt, |
typename t_wt::value_type | c ) |
Returns for a symbol c the previous smaller or equal symbol in the WT.
c | the symbol |
Definition at line 544 of file wt_algorithm.hpp.
|
inline |
|
inline |
k2_treap_ns::top_k_iterator< t_k2_treap > sdsl::top_k | ( | t_k2_treap const & | t, |
k2_treap_ns::point_type | p1, | ||
k2_treap_ns::point_type | p2 ) |
Get iterator for all heaviest points in rectangle (p1,p2) in decreasing order.
treap | k2-treap |
p1 | Lower left corner of the rectangle |
p2 | Upper right corner of the rectangle |
Definition at line 287 of file k2_treap_algorithm.hpp.
|
inline |
Definition at line 1552 of file divsufsort.hpp.
|
inline |
Definition at line 1288 of file divsufsort.hpp.
|
inline |
Definition at line 1312 of file divsufsort.hpp.
|
inline |
Definition at line 1243 of file divsufsort.hpp.
|
inline |
Definition at line 1249 of file divsufsort.hpp.
|
inline |
Definition at line 1260 of file divsufsort.hpp.
|
inline |
Definition at line 1641 of file divsufsort.hpp.
|
inline |
Definition at line 1346 of file divsufsort.hpp.
|
inline |
Definition at line 1368 of file divsufsort.hpp.
|
inline |
Definition at line 1579 of file divsufsort.hpp.
|
inline |
Definition at line 1467 of file divsufsort.hpp.
|
inline |
Definition at line 1401 of file divsufsort.hpp.
|
inline |
Definition at line 1449 of file divsufsort.hpp.
|
inline |
Definition at line 1442 of file divsufsort.hpp.
|
inline |
Definition at line 2012 of file divsufsort.hpp.
void sdsl::write_mem_log | ( | std::ostream & | out, |
tracker_storage const & | m ) |
|
inline |
Definition at line 242 of file memory_management.hpp.
|
inline |
Definition at line 68 of file memory_management.hpp.
size_t sdsl::write_member | ( | T const & | t, |
std::ostream & | out, | ||
sdsl::structure_tree_node * | v = nullptr, | ||
std::string | name = "" ) |
|
inline |
void sdsl::write_structure | ( | std::ostream & | out, |
Xs... | xs ) |
void sdsl::write_structure | ( | X const & | x, |
std::ostream & | out ) |
void sdsl::write_structure | ( | X const & | x, |
std::string | file ) |
void sdsl::write_structure_tree | ( | structure_tree_node const * | v, |
std::ostream & | out, | ||
size_t | level = 0 ) |
|
inline |
Definition at line 357 of file structure_tree.hpp.
|
inline |
Definition at line 88 of file structure_tree.hpp.
binomial15_impl<T>::impl sdsl::binomial15_impl< T >::iii |
Definition at line 118 of file rrr_vector_15.hpp.
binomial_coefficients<n>::impl sdsl::binomial_coefficients< n >::data |
Definition at line 298 of file rrr_helper.hpp.
binomial_table<n,number_type>::impl sdsl::binomial_table< n, number_type >::data |
Definition at line 240 of file rrr_helper.hpp.
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
excess<T>::impl sdsl::excess< T >::data |
Definition at line 169 of file bp_support_algorithm.hpp.
const uint32_t sdsl::hyb_vector< k_sblock_rate >::k_block_bytes = 32 |
Definition at line 705 of file hyb_vector.hpp.
const uint32_t sdsl::hyb_vector< k_sblock_rate >::k_block_size = 256 |
Definition at line 703 of file hyb_vector.hpp.
const uint32_t sdsl::hyb_vector< k_sblock_rate >::k_hblock_rate = (1U << 31) / 256 |
Definition at line 711 of file hyb_vector.hpp.
const uint32_t sdsl::hyb_vector< k_sblock_rate >::k_sblock_header_size = 8 + 2 * k_sblock_rate |
Definition at line 707 of file hyb_vector.hpp.
const uint32_t sdsl::hyb_vector< k_sblock_rate >::k_sblock_size = 256 * k_sblock_rate |
Definition at line 709 of file hyb_vector.hpp.
char const* sdsl::key_bwt_trait_impl< 0, T >::KEY_BWT = conf::KEY_BWT_INT |
Definition at line 138 of file config.hpp.
char const* sdsl::key_bwt_trait_impl< 8, T >::KEY_BWT = conf::KEY_BWT |
Definition at line 141 of file config.hpp.
char const* sdsl::key_text_trait_impl< 0, T >::KEY_TEXT = conf::KEY_TEXT_INT |
Definition at line 132 of file config.hpp.
char const* sdsl::key_text_trait_impl< 8, T >::KEY_TEXT = conf::KEY_TEXT |
Definition at line 135 of file config.hpp.
const std::array<uint64_t, alphabet_size> sdsl::rank_support_int< alphabet_size >::masks = generate_mask_array() |
Definition at line 235 of file rank_support_int.hpp.
std::string const sdsl::sdsl_version |
The full version as std::string.
Definition at line 35 of file version.hpp.
|
constexpr |
The major version.
Definition at line 28 of file version.hpp.
|
constexpr |
The minor version.
Definition at line 30 of file version.hpp.
|
constexpr |
The patch version.
Definition at line 32 of file version.hpp.