Search Toolkit Book for bm::base_sparse_vector
Base class for bit-transposed(bit-sliced) sparse vector construction. More...
#include <util/bitset/bmbmatrix.h>
Base class for bit-transposed(bit-sliced) sparse vector construction.
Keeps the basic housekeeping lements like matrix of sparse elements
Definition at line 485 of file bmbmatrix.h.
◆ allocation_policy_typetemplate<typename Val , typename BV , unsigned MAX_SIZE>
Definition at line 506 of file bmbmatrix.h.
◆ allocator_pool_typetemplate<typename Val , typename BV , unsigned MAX_SIZE>
Definition at line 508 of file bmbmatrix.h.
◆ allocator_typetemplate<typename Val , typename BV , unsigned MAX_SIZE>
Definition at line 505 of file bmbmatrix.h.
◆ block_idx_typetemplate<typename Val , typename BV , unsigned MAX_SIZE>
Definition at line 809 of file bmbmatrix.h.
◆ bmatrix_typetemplate<typename Val , typename BV , unsigned MAX_SIZE>
Definition at line 509 of file bmbmatrix.h.
◆ bvector_enumerator_typetemplate<typename Val , typename BV , unsigned MAX_SIZE>
Definition at line 507 of file bmbmatrix.h.
◆ bvector_typetemplate<typename Val , typename BV , unsigned MAX_SIZE>
Definition at line 500 of file bmbmatrix.h.
◆ bvector_type_const_ptrtemplate<typename Val , typename BV , unsigned MAX_SIZE>
Definition at line 503 of file bmbmatrix.h.
◆ bvector_type_ptrtemplate<typename Val , typename BV , unsigned MAX_SIZE>
Definition at line 502 of file bmbmatrix.h.
◆ const_referencetemplate<typename Val , typename BV , unsigned MAX_SIZE>
Definition at line 504 of file bmbmatrix.h.
◆ size_typetemplate<typename Val , typename BV , unsigned MAX_SIZE>
Definition at line 501 of file bmbmatrix.h.
◆ unsigned_value_typetemplate<typename Val , typename BV , unsigned MAX_SIZE>
Definition at line 510 of file bmbmatrix.h.
◆ value_typetemplate<typename Val , typename BV , unsigned MAX_SIZE>
Definition at line 499 of file bmbmatrix.h.
◆ bit_planestemplate<typename Val , typename BV , unsigned MAX_SIZE>
Enumerator sv_slices sv_value_slicesDefinition at line 488 of file bmbmatrix.h.
◆ vector_capacitytemplate<typename Val , typename BV , unsigned MAX_SIZE>
Enumerator max_vector_sizeDefinition at line 494 of file bmbmatrix.h.
◆ base_sparse_vector() [1/4]template<class Val , class BV , unsigned MAX_SIZE>
Definition at line 1833 of file bmbmatrix.h.
◆ base_sparse_vector() [2/4]template<class Val , class BV , unsigned MAX_SIZE>
◆ base_sparse_vector() [3/4]template<class Val , class BV , unsigned MAX_SIZE>
Definition at line 1860 of file bmbmatrix.h.
◆ base_sparse_vector() [4/4]template<typename Val , typename BV , unsigned MAX_SIZE>
◆ bit_and_rows()template<typename Val , typename BV , unsigned MAX_SIZE>
Set AND (intersect) operation on all existing bit-slices.
Definition at line 806 of file bmbmatrix.h.
◆ bit_sub_rows()template<typename Val , typename BV , unsigned MAX_SIZE>
Set SUB (MINUS) operation on all existing bit-slices.
Definition at line 799 of file bmbmatrix.h.
◆ calc_stat()template<class Val , class BV , unsigned MAX_SIZE>
Calculates memory statistics.
Function fills statistics structure containing information about how this vector uses memory and estimation of max. amount of memory bvector needs to serialize itself.
Definition at line 2126 of file bmbmatrix.h.
References BM_ASSERT, and st().
◆ clear_all()template<class Val , class BV , unsigned MAX_SIZE>
resize to zero, free memory
Definition at line 1967 of file bmbmatrix.h.
References i.
◆ clear_range()template<typename Val , typename BV , unsigned MAX_SIZE>
◆ clear_value_planes_from()template<class Val , class BV , unsigned MAX_SIZE>
clear column in all value planes
Definition at line 2142 of file bmbmatrix.h.
◆ copy_from()template<class Val , class BV , unsigned MAX_SIZE>
Definition at line 1871 of file bmbmatrix.h.
References bm::base_sparse_vector< Val, BV, MAX_SIZE >::bmatr_, bm::base_sparse_vector< Val, BV, MAX_SIZE >::effective_slices_, bm::base_sparse_vector< Val, BV, MAX_SIZE >::get_bmatrix(), bm::basic_bmatrix< BV >::get_null_idx(), i, pythonpp::resize(), bm::basic_bmatrix< BV >::row(), bm::basic_bmatrix< BV >::rows(), and bm::base_sparse_vector< Val, BV, MAX_SIZE >::size().
◆ copy_range_slices()template<class Val , class BV , unsigned MAX_SIZE>
void bm::base_sparse_vector< Val, BV, MAX_SIZE >::copy_range_slices ( const base_sparse_vector< Val, BV, MAX_SIZE > & bsv, typename base_sparse_vector< Val, BV, MAX_SIZE >::size_type left, typename base_sparse_vector< Val, BV, MAX_SIZE >::size_type right, bm::null_support slice_null ) protected ◆ effective_slices()template<typename Val , typename BV , unsigned MAX_SIZE>
Number of effective bit-planes in the value type.
Definition at line 648 of file bmbmatrix.h.
◆ empty()template<typename Val , typename BV , unsigned MAX_SIZE>
◆ equal()template<class Val , class BV , unsigned MAX_SIZE>
check if another sparse vector has the same content and size
Definition at line 2169 of file bmbmatrix.h.
References BM_ASSERT, eq(), and bm::use_null.
◆ erase_column()template<class Val , class BV , unsigned MAX_SIZE>
erase bit (column) from all planes
Definition at line 2160 of file bmbmatrix.h.
◆ free_slice()template<typename Val , typename BV , unsigned MAX_SIZE>
◆ freeze_matr()template<typename Val , typename BV , unsigned MAX_SIZE>
◆ get_allocator_pool()template<typename Val , typename BV , unsigned MAX_SIZE>
◆ get_bmatrix() [1/2]template<typename Val , typename BV , unsigned MAX_SIZE>
get read-only access to inetrnal bit-matrix
Definition at line 687 of file bmbmatrix.h.
Referenced by bm::base_sparse_vector< Val, BV, MAX_SIZE >::copy_from(), bm::sparse_vector< Val, BV >::join(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_from_impl(), TestSparseVector(), TestSparseVector_XOR_Scanner(), TestSparseVectorSerialization2(), and TestStrSparseVector().
◆ get_bmatrix() [2/2]template<typename Val , typename BV , unsigned MAX_SIZE>
access to internal bit-matrix
Definition at line 693 of file bmbmatrix.h.
◆ get_create_slice()template<class Val , class BV , unsigned MAX_SIZE>
get access to bit-plain, function checks and creates a plane
Definition at line 2059 of file bmbmatrix.h.
References i.
◆ get_null_bvect()template<typename Val , typename BV , unsigned MAX_SIZE>
◆ get_null_bvector()template<typename Val , typename BV , unsigned MAX_SIZE>
◆ get_null_support()template<typename Val , typename BV , unsigned MAX_SIZE>
◆ get_slice()template<typename Val , typename BV , unsigned MAX_SIZE>
◆ get_slice_mask()template<class Val , class BV , unsigned MAX_SIZE>
return mask of allocated bit-planes 1 in the mask - means bit-plane N is present returns 64-bit unsigned mask for sub 64-bit types (like int) unallocated mask bits will be zero extended
Definition at line 2078 of file bmbmatrix.h.
◆ insert_clear_value_planes_from()template<class Val , class BV , unsigned MAX_SIZE>
insert false (clear) column in all value planes
Definition at line 2151 of file bmbmatrix.h.
◆ insert_null()template<class Val , class BV , unsigned MAX_SIZE>
◆ is_null()template<class Val , class BV , unsigned MAX_SIZE>
◆ is_nullable()template<typename Val , typename BV , unsigned MAX_SIZE>
◆ is_signed()template<typename Val , typename BV , unsigned MAX_SIZE>
inlinestaticconstexprnoexcept ◆ keep_range_no_check()template<class Val , class BV , unsigned MAX_SIZE>
◆ mark_null_idx()template<typename Val , typename BV , unsigned MAX_SIZE>
◆ merge_matr()template<class Val , class BV , unsigned MAX_SIZE>
◆ optimize()template<class Val , class BV , unsigned MAX_SIZE>
void bm::base_sparse_vector< Val, BV, MAX_SIZE >::optimize ( bm::word_t * temp_block =0
, typename bvector_type::optmode opt_mode = bvector_type::opt_compress
, typename bvector_type::statistics * stat = 0
)
run memory optimization for all bit-vector rows
Definition at line 2096 of file bmbmatrix.h.
References st().
◆ optimize_block()template<typename Val , typename BV , unsigned MAX_SIZE>
plane index for the "NOT NULL" flags plane
optimize block in all matrix planes
Definition at line 819 of file bmbmatrix.h.
◆ resize()template<class Val , class BV , unsigned MAX_SIZE>
◆ s2u()template<class Val , class BV , unsigned MAX_SIZE>
◆ set_allocator_pool()template<typename Val , typename BV , unsigned MAX_SIZE>
◆ set_ro_flag()template<typename Val , typename BV , unsigned MAX_SIZE>
Force RO flag without running freeze ops on content.
Definition at line 835 of file bmbmatrix.h.
◆ size()template<typename Val , typename BV , unsigned MAX_SIZE>
◆ slice() [1/2]template<typename Val , typename BV , unsigned MAX_SIZE>
Definition at line 656 of file bmbmatrix.h.
◆ slice() [2/2]template<typename Val , typename BV , unsigned MAX_SIZE>
get access to bit-plane as is (can return NULL)
Definition at line 655 of file bmbmatrix.h.
◆ slices()template<typename Val , typename BV , unsigned MAX_SIZE>
get total number of bit-planes in the vector
Definition at line 637 of file bmbmatrix.h.
◆ stored_slices()template<typename Val , typename BV , unsigned MAX_SIZE>
Number of stored bit-planes (value planes + extra.
Definition at line 642 of file bmbmatrix.h.
◆ swap()template<class Val , class BV , unsigned MAX_SIZE>
◆ swap_elements()template<typename Val , typename BV , unsigned MAX_SIZE>
◆ sync_ro()template<class Val , class BV , unsigned MAX_SIZE>
◆ u2s()template<class Val , class BV , unsigned MAX_SIZE>
◆ value_bits()template<typename Val , typename BV , unsigned MAX_SIZE>
inlinestaticconstexprprotectednoexcept ◆ bmatr_template<typename Val , typename BV , unsigned MAX_SIZE>
bit-transposed matrix
Definition at line 838 of file bmbmatrix.h.
Referenced by bm::base_sparse_vector< Val, BV, 1 >::base_sparse_vector(), bm::base_sparse_vector< Val, BV, MAX_SIZE >::base_sparse_vector(), bm::base_sparse_vector< Val, BV, 1 >::bit_and_rows(), bm::base_sparse_vector< Val, BV, 1 >::bit_sub_rows(), bm::base_sparse_vector< Val, BV, MAX_SIZE >::copy_from(), bm::base_sparse_vector< Val, BV, MAX_SIZE >::copy_range_slices(), bm::base_sparse_vector< Val, BV, 1 >::free_slice(), bm::base_sparse_vector< Val, BV, 1 >::freeze_matr(), bm::base_sparse_vector< Val, BV, 1 >::get_allocator_pool(), bm::base_sparse_vector< Val, BV, 1 >::get_bmatrix(), bm::base_sparse_vector< Val, BV, 1 >::get_null_bvect(), bm::base_sparse_vector< Val, BV, 1 >::get_null_bvector(), bm::base_sparse_vector< Val, BV, 1 >::get_slice(), bm::base_sparse_vector< Val, BV, 1 >::is_nullable(), bm::sparse_vector< Val, BV >::join(), bm::sparse_vector< Val, BV >::join_null_slice(), bm::base_sparse_vector< Val, BV, 1 >::mark_null_idx(), bm::sparse_vector< Val, BV >::merge(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::merge(), bm::base_sparse_vector< Val, BV, 1 >::optimize_block(), bm::base_sparse_vector< Val, BV, 1 >::set_allocator_pool(), bm::base_sparse_vector< Val, BV, 1 >::set_ro_flag(), bm::base_sparse_vector< Val, BV, 1 >::slice(), and bm::base_sparse_vector< Val, BV, 1 >::swap_elements().
◆ effective_slices_template<typename Val , typename BV , unsigned MAX_SIZE>
◆ size_template<typename Val , typename BV , unsigned MAX_SIZE>
◆ slice_mask_template<typename Val , typename BV , unsigned MAX_SIZE>
The documentation for this class was generated from the following file:
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4