Search Toolkit Book for bm::sparse_vector_serializer
Serialize sparse vector into a memory buffer(s) structure. More...
#include <util/bitset/bmsparsevec_serial.h>
Serialize sparse vector into a memory buffer(s) structure.
Serialization format:
| HEADER | BIT-VECTORS ... | REMAP_MATRIX
Header structure: ----------------- BYTE+BYTE: Magic-signature 'BM' or 'BC' (c-compressed) BYTE : Byte order ( 0 - Big Endian, 1 - Little Endian) { BYTE : Number of Bit-vector planes (total) (non-zero when < 255 planes) | BYTE: zero - flag of large plane matrix INT64: Nnmber of bit-vector planes } INT64: Vector size INT64: Offset of plane 0 from the header start (value 0 means plane is empty) INT64: Offset of plane 1 from ... INT32: reserved
Bit-vectors: ------------ Based on current bit-vector serialization
Remap Matrix: SubHeader | Matrix BLOB
sub-header: BYTE: 'R' (remapping) or 'N' (no remapping) N - means no other info is saved on the stream INT64: remap matrix size
Definition at line 190 of file bmsparsevec_serial.h.
◆ alloc_type ◆ allocator_pool_type ◆ buffer_type ◆ bv_ref_vector_type ◆ bvector_type ◆ bvector_type_const_ptr ◆ bvector_type_ptr ◆ remap_matrix_type ◆ serializer_type ◆ size_type ◆ u32_vector_type ◆ value_type ◆ xor_sim_model_type ◆ sparse_vector_serializer() [1/2] ◆ sparse_vector_serializer() [2/2] ◆ build_xor_ref_vector() ◆ compute_sim_model() ◆ disable_xor_compression() ◆ enable_xor_compression() ◆ encode_remap_matrix()serialize the remap matrix used for SV encoding
Definition at line 857 of file bmsparsevec_serial.h.
References BM_ASSERT, BMRESTRICT, cnt, bm::count_nz(), bm::bit_out< TEncoder >::gamma(), bm::encoder::memcpy(), bm::encoder::put_16(), bm::encoder::put_32(), bm::encoder::put_64(), bm::encoder::put_8(), r(), and row.
◆ get_bv_serializer() ◆ is_xor_ref() ◆ operator=() ◆ serialize()Serialize sparse vector into a memory buffer(s) structure.
Definition at line 939 of file bmsparsevec_serial.h.
References bm::bit_out< TEncoder >::bic_encode_u32_cm(), BM_ASSERT, buf, bm::globals< T >::byte_order(), bm::sparse_vector_serial_layout< SV >::capacity(), bm::bit_out< TEncoder >::flush(), bm::sparse_vector_serial_layout< SV >::get_plane(), i, bm::id_max32, offset, bm::encoder::put_32(), bm::encoder::put_64(), bm::encoder::put_8(), bm::sparse_vector_serial_layout< SV >::reserve(), bm::sparse_vector_serial_layout< SV >::resize(), bm::sparse_vector_serial_layout< SV >::resize_slices(), bm::sparse_vector_serial_layout< SV >::set_plane(), bm::sparse_vector_serial_layout< SV >::shrink(), and bm::encoder::size().
Referenced by bm::file_save_svector(), CVcfHistogram::Save(), CDataFrame< MAX_SIZE >::Serialize(), CSeqDictionary< Alphabet >::Serialize(), NVcfUtil::SerializeColumn(), bm::sparse_vector_serialize(), TestCompressSparseVectorSerial(), TestSignedSparseVectorSerial(), TestSparseVectorSerial(), TestSparseVectorSerialization2(), TestStrSparseVector(), TestStrSparseVectorSerial(), and CVCFVariantsBase::x_SerializeData().
◆ set_bookmarks() ◆ set_sim_model() ◆ set_xor_ref() [1/2] ◆ set_xor_ref() [2/2]Enable external XOR serialization via external reference vectors (data frame ref.
vector). This method is useful when we serialize a group of related sparse vectors which benefits from the XOR referencial compression
Definition at line 808 of file bmsparsevec_serial.h.
References bool.
◆ bv_ref_ ◆ bv_ref_ptr_ ◆ bvs_ ◆ is_xor_ref_ ◆ plane_digest_buf_ ◆ plane_digest_bv_ ◆ plane_off_vect_ ◆ remap_rlen_vect_ ◆ sim_model_ ◆ sim_model_ptr_The documentation for this class was generated from the following files:
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