A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from http://www.ncbi.nlm.nih.gov/IEB/ToolBox/CPP_DOC/doxyhtml/classbm_1_1basic__bmatrix.html below:

NCBI C++ ToolKit: bm::basic_bmatrix< BV

Search Toolkit Book for bm::basic_bmatrix

Basic dense bit-matrix class. More...

#include <util/bitset/bmbmatrix.h>

  basic_bmatrix (size_type rsize, bool is_dynamic=true, allocation_policy_type ap=allocation_policy_type(), size_type bv_max_size=bm::id_max, const allocator_type &alloc=allocator_type())     ~basic_bmatrix () noexcept     basic_bmatrix (const basic_bmatrix< BV > &bbm)   basic_bmatrix< BV > &  operator= (const basic_bmatrix< BV > &bbm)     basic_bmatrix (basic_bmatrix< BV > &&bbm) noexcept   basic_bmatrix< BV > &  operator= (basic_bmatrix< BV > &&bbm) noexcept   void  set_allocator_pool (allocator_pool_type *pool_ptr) noexcept   allocator_pool_typeget_allocator_pool () const noexcept   void  swap (basic_bmatrix< BV > &bbm) noexcept   void  copy_from (const basic_bmatrix< BV > &bbm)   void  freeze ()   bool  equal (const basic_bmatrix< BV > &bbm) const noexcept   const bvector_typerow (size_type i) const noexcept   bvector_type_const_ptr  get_row (size_type i) const noexcept   bvector_typeget_row (size_type i) noexcept   size_type  rows () const noexcept   size_type  rows_not_null () const noexcept   size_type  calc_effective_rows_not_null () const noexcept   bvector_type_ptr  construct_row (size_type row)   bvector_type_ptr  construct_row (size_type row, const bvector_type &bv)   bvector_type_ptr  get_create_slice (unsigned i)   void  destruct_row (size_type row)   void  clear_row (size_type row, bool free_mem)   size_type  get_null_idx () const noexcept   return index of the NULL vector More...
  void  set_null_idx (size_type null_idx) noexcept   set index of the NULL vector More...
  void  allocate_rows (size_type rsize)   allocate matrix rows of bit-vectors (new rows are NULLs) More...
  void  free_rows () noexcept   Free all rows. More...
  void  set_octet (size_type pos, size_type octet_idx, unsigned char octet)   void  insert_octet (size_type pos, size_type octet_idx, unsigned char octet)   unsigned char  get_octet (size_type pos, size_type octet_idx) const noexcept   int  compare_octet (size_type pos, size_type octet_idx, char octet) const noexcept   size_type  octet_size () const noexcept   void  clear_all (bool free_mem, unsigned) noexcept   resize to zero, free memory More...
  void  clear () noexcept   resize to zero, free memory More...
  const bm::word_tget_block (size_type p, unsigned i, unsigned j) const noexcept   Get low level internal access to. More...
  void  clear_slices_range (unsigned slice_from, unsigned slize_until, size_type idx)   Clear bit-planes bit. More...
  unsigned  get_half_octet (size_type pos, size_type row_idx) const noexcept   void  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 More...
  void  optimize_block (block_idx_type nb, typename BV::optmode opt_mode)   void  calc_stat (typename bvector_type::statistics &st, size_type rsize) const noexcept   void  calc_stat (typename bvector_type::statistics *st) const noexcept   void  erase_column (size_type idx, bool erase_null)   void  insert_column (size_type idx, size_type row_from)   void  clear_column (size_type idx, size_type row_from)   void  swap_columns (size_type idx1, size_type idx2)   void  bit_sub_rows (const bvector_type &bv, bool use_null)   Set SUB (MINUS) operation on all existing rows. More...
  void  bit_and_rows (const bvector_type &bv)   Set AND (intersect) operation on all existing rows. More...
  bool  is_dynamic () const noexcept   Return if matrix is dynamic resizable. More...
  bool  is_same_structure (const basic_bmatrix< BV > &bbm) const noexcept   Debugging function to check if two matrixes have the same rows created. More...
  bool  is_ro () const noexcept   return true if matrix is in read-only mode More...
  void  build_plane_digest (bvector_type &digest_bv) const   Construct digest vector of 1s for every row in the matrix. More...
  size_type  size () const noexcept   return size of the vector (always bm::id_max ) More...
  size_type  size_internal () const noexcept   same as size() More...
  void  sync (bool, bool) noexcept   syncronize internal structures, build fast access index More...
  template<typename BV>
class bm::basic_bmatrix< BV >

Basic dense bit-matrix class.

Container of row-major bit-vectors, forming a bit-matrix. This class uses dense form of row storage. It is applicable as a build block for other sparse containers and succinct data structures, implementing high level abstractions.

Definition at line 54 of file bmbmatrix.h.

◆ allocation_policy_type ◆ allocator_pool_type ◆ allocator_type ◆ block_idx_type ◆ bvector_type ◆ bvector_type_const_ptr ◆ bvector_type_ptr ◆ octet_type ◆ remap_matrix_type

unused remap matrix type for compatibility with the sparse serializer

Definition at line 84 of file bmbmatrix.h.

◆ size_type ◆ statistics ◆ value_type ◆ vector_cap Enumerator max_vector_size  sv_value_slices 

Definition at line 409 of file bmbmatrix.h.

◆ basic_bmatrix() [1/3] ◆ ~basic_bmatrix() ◆ basic_bmatrix() [2/3] ◆ basic_bmatrix() [3/3] ◆ allocate_rows() ◆ bit_and_rows() ◆ bit_sub_rows() ◆ build_plane_digest()

Construct digest vector of 1s for every row in the matrix.

Parameters
digest_bv - (out) digest vector to set 1s

Definition at line 1814 of file bmbmatrix.h.

References i.

◆ calc_effective_rows_not_null()

get number of assigned avlue rows without \ NULLs bvector

Definition at line 1168 of file bmbmatrix.h.

References i.

◆ calc_stat() [1/2] ◆ calc_stat() [2/2]

template<typename BV >

void bm::basic_bmatrix< BV >::calc_stat ( typename bvector_type::statistics *  st ) const inlinenoexcept

Compute memory statistics

Parameters
st [out] - statistics object

Definition at line 314 of file bmbmatrix.h.

◆ clear()

resize to zero, free memory

Definition at line 263 of file bmbmatrix.h.

◆ clear_all() ◆ clear_column()

Clear value (set 0) into a range of rows

Parameters
idx - index (of column) / element of bit-vectors row_from - row to start from

Definition at line 996 of file bmbmatrix.h.

References i.

◆ clear_row() ◆ clear_slices_range()

Clear bit-planes bit.

Parameters
slice_from - clear from [from, until) slice_until - clear until (open interval!) idx - bit index

Definition at line 1372 of file bmbmatrix.h.

◆ compare_octet()

Compare vector[pos] with octet

It uses regulat comparison of chars to comply with the (signed) char sort order.

Parameters
pos - column position in the matrix octet_idx - octet based row position (1 octet - 8 rows) octet - octet value to compare
Returns
0 - equal, -1 - less(vect[pos] < octet), 1 - greater

Definition at line 1637 of file bmbmatrix.h.

References rapidjson::value.

◆ construct_bvector() ◆ construct_row() [1/2] ◆ construct_row() [2/2] ◆ copy_from() ◆ destruct_bvector() ◆ destruct_row() ◆ equal()

check if two bit-matrices are equal

Definition at line 1061 of file bmbmatrix.h.

References eq().

◆ erase_column()

Erase column/element

Parameters
idx - index (of column) / element of bit-vectors to erase erase_null - erase all including NULL vector (true)

Definition at line 973 of file bmbmatrix.h.

References i.

◆ free_rows() ◆ freeze() ◆ get_allocator_pool() ◆ get_block()

Get low level internal access to.

Definition at line 1361 of file bmbmatrix.h.

References i, and row.

◆ get_bmatrix() [1/2]

return *this (for serializer compat)

Definition at line 433 of file bmbmatrix.h.

◆ get_bmatrix() [2/2]

return *this (for serializer compat)

Definition at line 436 of file bmbmatrix.h.

◆ get_create_slice() ◆ get_half_octet()

Definition at line 1676 of file bmbmatrix.h.

References BM_IS_GAP, BMGAP_PTR, FULL_BLOCK_FAKE_ADDR, bm::gap_test_unr(), bm::get_block_coord(), i, bm::set_block_mask, bm::set_block_shift, bm::set_word_mask, bm::set_word_shift, bm::test_4bits(), and bm::test_4gaps().

◆ get_null_bvector()

always return 0 as basic matrix does not support the notion of NULL plane (as sparse_vectors do)

Definition at line 447 of file bmbmatrix.h.

◆ get_null_idx()

return index of the NULL vector

Definition at line 187 of file bmbmatrix.h.

Referenced by bm::base_sparse_vector< Val, BV, MAX_SIZE >::copy_from(), bm::base_sparse_vector< Val, BV, 1 >::get_null_bvect(), bm::base_sparse_vector< Val, BV, 1 >::get_null_bvector(), bm::basic_bmatrix< bm::bvector<> >::is_nullable(), bm::sparse_vector< Val, BV >::join_null_slice(), and bm::base_sparse_vector< Val, BV, MAX_SIZE >::merge_matr().

◆ get_octet()

return octet from the matrix

Parameters
pos - column position in the matrix octet_idx - octet based row position (1 octet - 8 rows)

Definition at line 1487 of file bmbmatrix.h.

References BM_IS_GAP, BMGAP_PTR, bm::check_any_fullb(), FULL_BLOCK_FAKE_ADDR, bm::gap_test_unr(), bm::get_block_coord(), bm::set_block_mask, bm::set_block_shift, bm::set_word_mask, and bm::set_word_shift.

Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::get(), and TestBasicMatrix().

◆ get_remap_buffer() ◆ get_remap_matrix() [1/2] ◆ get_remap_matrix() [2/2] ◆ get_row() [1/2]

Get row bit-vector. Can return NULL

Definition at line 914 of file bmbmatrix.h.

References BM_ASSERT, and i.

Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::decode_substr(), bm::base_sparse_vector< Val, BV, 1 >::get_null_bvect(), bm::base_sparse_vector< Val, BV, 1 >::get_null_bvector(), bm::basic_bmatrix< bm::bvector<> >::get_null_bvector(), bm::base_sparse_vector< Val, BV, MAX_SIZE >::merge_matr(), and bm::base_sparse_vector< Val, BV, 1 >::slice().

◆ get_row() [2/2] ◆ init_remap_buffer() ◆ insert_column()

Insert value 0 into a range of rows

Parameters
idx - index (of column) / element of bit-vectors to erase row_from - row to start from

Definition at line 985 of file bmbmatrix.h.

References i.

◆ insert_octet()

Bit-transpose and insert an octet and assign it to a bit-matrix

Parameters
pos - column position in the matrix octet_idx - octet based row position (1 octet - 8 rows) octet - value to assign

Definition at line 1424 of file bmbmatrix.h.

References BM_ASSERT, and row.

◆ is_compressed()

template<typename BV >

inlinestaticconstexprnoexcept

Definition at line 396 of file bmbmatrix.h.

◆ is_dynamic() ◆ is_nullable() ◆ is_remap()

various type traits

trait to identify that class does not support any remappings

Definition at line 393 of file bmbmatrix.h.

◆ is_ro() ◆ is_same_structure()

Debugging function to check if two matrixes have the same rows created.

Returns
true - if the same

Definition at line 1128 of file bmbmatrix.h.

References BM_ASSERT, and i.

◆ is_str()

template<typename BV >

inlinestaticconstexprnoexcept

Definition at line 399 of file bmbmatrix.h.

◆ mark_null_idx() ◆ octet_size()

Return number of octet currently allocated rows in the matrix

Definition at line 1100 of file bmbmatrix.h.

◆ operator=() [1/2] ◆ operator=() [2/2] ◆ optimize()

template<typename BV >

void bm::basic_bmatrix< BV >::optimize ( bm::word_ttemp_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

Parameters
temp_block - pre-allocated memory block to avoid re-allocs opt_mode - requested compression depth stat - memory allocation statistics after optimization

Definition at line 1739 of file bmbmatrix.h.

References BM_DECLARE_TEMP_BLOCK, and st().

Referenced by TestBasicMatrix().

◆ optimize_block() ◆ remap_size() ◆ resize_internal() ◆ resolve_range()

Nominal function for serializer compatibility.

Definition at line 458 of file bmbmatrix.h.

◆ row()

Get row bit-vector. Can return NULL

Definition at line 904 of file bmbmatrix.h.

References BM_ASSERT, and i.

Referenced by 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 >::get_slice(), and bm::sparse_vector< Val, BV >::join().

◆ rows()

get number of value rows

Definition at line 163 of file bmbmatrix.h.

Referenced by bm::basic_bmatrix< bm::bvector<> >::calc_stat(), bm::base_sparse_vector< Val, BV, MAX_SIZE >::copy_from(), bm::base_sparse_vector< Val, BV, MAX_SIZE >::copy_range_slices(), bm::sparse_vector< Val, BV >::join(), bm::base_sparse_vector< Val, BV, MAX_SIZE >::merge_matr(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_from_impl(), and TestBasicMatrix().

◆ rows_not_null() ◆ set_allocator_pool() ◆ set_null_idx() ◆ set_octet() ◆ set_remap() ◆ set_ro_flag() ◆ size() ◆ size_internal() ◆ stored_slices()

template<typename BV >

inlinestaticprotectednoexcept

Definition at line 452 of file bmbmatrix.h.

◆ swap() ◆ swap_columns() ◆ sync()

syncronize internal structures, build fast access index

Definition at line 380 of file bmbmatrix.h.

◆ throw_bad_alloc() ◆ base_sparse_vector

template<typename BV >

template<typename Val , typename BVect , unsigned MAX_SIZE>

Definition at line 422 of file bmbmatrix.h.

◆ rsc_sparse_vector

template<typename BV >

template<class Val , class SV >

Definition at line 426 of file bmbmatrix.h.

◆ sparse_vector_deserializer

template<typename BV >

template<class SVect >

Definition at line 425 of file bmbmatrix.h.

◆ sparse_vector_serializer

template<typename BV >

template<class SVect >

Definition at line 424 of file bmbmatrix.h.

◆ alloc_ ◆ ap_ ◆ bv_rows_ ◆ bv_size_ ◆ is_dynamic_ ◆ is_ro_ ◆ null_idx_ ◆ pool_ ◆ rsize_

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