|
BitMagic-C++
|
List of reference bit-vectors with their true index associations. More...
#include <bmxor.h>

Public Types | |
| typedef BV | bvector_type |
| typedef bvector_type::size_type | size_type |
| typedef bvector_type * | bvector_type_ptr |
| typedef const bvector_type * | bvector_type_const_ptr |
| typedef bvector_type::allocator_type | bv_allocator_type |
| typedef bm::block_match_chain< size_type > | block_match_chain_type |
| typedef bm::dynamic_heap_matrix< block_match_chain_type, bv_allocator_type > | matrix_chain_type |
Public Member Functions | |
| void | reset () |
| reset the collection (resize(0)) | |
| void | add (const bvector_type *bv, size_type ref_idx) |
| Add reference vector. | |
| size_type | size () const BMNOEXCEPT |
| Get reference list size. | |
| const bvector_type * | get_bv (size_type idx) const BMNOEXCEPT |
| Get reference vector by the index in this ref-vector. | |
| size_type | get_row_idx (size_type idx) const BMNOEXCEPT |
| Get reference row index by the index in this ref-vector. | |
| size_type | find (std::size_t ref_idx) const BMNOEXCEPT |
| Find vector index by the reference index. | |
| size_type | find_bv (const bvector_type *bv) const BMNOEXCEPT |
| Find vector index by the pointer. | |
| void | fill_alloc_digest (bvector_type &bv_blocks) const |
| Fill block allocation digest for all vectors in the reference collection. | |
| template<class BMATR> | |
| void | build (const BMATR &bmatr) |
| Reset and build vector of references from a basic bit-matrix all NULL rows are skipped, not added to the ref.vector. | |
| template<typename BMATR> | |
| void | add_vectors (const BMATR &bmatr) |
| Append basic bit-matrix to the list of reference vectors. | |
| template<class SV> | |
| void | add_sparse_vector (const SV &sv) |
| Add bit-transposed sparse vector as a bit-matrix. | |
| void | resize_xor_matrix (matrix_chain_type &matr, size_type total_blocks) const |
| Utility function to resize matrix based on number of vectors and blocks. | |
| bool | build_nb_digest_and_xor_matrix (matrix_chain_type &matr, bvector_type &bv_blocks) const |
| Calculate blocks digest and resize XOR distance matrix based on total number of available blocks. | |
Static Public Member Functions | |
| static size_type | not_found () BMNOEXCEPT |
| not-found value for find methods | |
Protected Types | |
| typedef bm::heap_vector< bvector_type_const_ptr, bv_allocator_type, true > | bvptr_vector_type |
| typedef bm::heap_vector< std::size_t, bv_allocator_type, true > | bv_plane_vector_type |
Protected Attributes | |
| unsigned | rows_acc_ = 0 |
| total rows accumulator | |
| bvptr_vector_type | ref_bvects_ |
| reference vector pointers | |
| bv_plane_vector_type | ref_bvects_rows_ |
| reference vector row idxs | |
List of reference bit-vectors with their true index associations.
Each referece vector would have two alternative indexes:
| typedef bm::block_match_chain<size_type> bm::bv_ref_vector< BV >::block_match_chain_type |
| typedef bvector_type::allocator_type bm::bv_ref_vector< BV >::bv_allocator_type |
|
protected |
| typedef BV bm::bv_ref_vector< BV >::bvector_type |
| typedef const bvector_type* bm::bv_ref_vector< BV >::bvector_type_const_ptr |
| typedef bvector_type* bm::bv_ref_vector< BV >::bvector_type_ptr |
|
protected |
| typedef bm::dynamic_heap_matrix<block_match_chain_type, bv_allocator_type> bm::bv_ref_vector< BV >::matrix_chain_type |
| typedef bvector_type::size_type bm::bv_ref_vector< BV >::size_type |
|
inline |
Add reference vector.
| bv | - bvector pointer |
| ref_idx | - reference (row) index |
Definition at line 652 of file bmxor.h.
Referenced by bm::bv_ref_vector< bvector_type >::add_vectors().
|
inline |
Add bit-transposed sparse vector as a bit-matrix.
Definition at line 739 of file bmxor.h.
Referenced by serialize_df2().
|
inline |
Append basic bit-matrix to the list of reference vectors.
Definition at line 726 of file bmxor.h.
Referenced by bm::bv_ref_vector< bvector_type >::add_sparse_vector(), bm::bv_ref_vector< bvector_type >::build(), and deserialize_df2().
|
inline |
Reset and build vector of references from a basic bit-matrix all NULL rows are skipped, not added to the ref.vector.
|
inline |
Calculate blocks digest and resize XOR distance matrix based on total number of available blocks.
Definition at line 759 of file bmxor.h.
Referenced by bm::compute_sim_matrix_plan_builder< BV >::build_plan().
|
inline |
Fill block allocation digest for all vectors in the reference collection.
| bv_blocks | - [out] bvector of blocks statistics |
Definition at line 699 of file bmxor.h.
Referenced by bm::bv_ref_vector< bvector_type >::build_nb_digest_and_xor_matrix(), and bm::bv_ref_vector< bvector_type >::fill_alloc_digest().
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinestatic |
not-found value for find methods
Definition at line 672 of file bmxor.h.
Referenced by bm::bv_ref_vector< bvector_type >::find(), and bm::bv_ref_vector< bvector_type >::find_bv().
|
inline |
reset the collection (resize(0))
Definition at line 641 of file bmxor.h.
Referenced by bm::bv_ref_vector< bvector_type >::build().
|
inline |
Utility function to resize matrix based on number of vectors and blocks.
Definition at line 746 of file bmxor.h.
Referenced by bm::bv_ref_vector< bvector_type >::build_nb_digest_and_xor_matrix().
|
inline |
Get reference list size.
Definition at line 660 of file bmxor.h.
Referenced by bm::bv_ref_vector< bvector_type >::fill_alloc_digest(), bm::bv_ref_vector< bvector_type >::find(), and bm::bv_ref_vector< bvector_type >::find_bv().
|
protected |
|
protected |
|
protected |