BitMagic-C++
|
Seriaizer for compressed collections. More...
#include <bmsparsevec_serial.h>
Public Types | |
typedef CBC | compressed_collection_type |
typedef CBC::bvector_type | bvector_type |
typedef CBC::buffer_type | buffer_type |
typedef CBC::statistics | statistics_type |
typedef CBC::address_resolver_type | address_resolver_type |
Public Member Functions | |
void | serialize (const CBC &buffer_coll, buffer_type &buf, bm::word_t *temp_block=0) |
Serialize compressed collection into memory buffer. More... | |
Seriaizer for compressed collections.
Definition at line 270 of file bmsparsevec_serial.h.
typedef CBC::address_resolver_type bm::compressed_collection_serializer< CBC >::address_resolver_type |
Definition at line 277 of file bmsparsevec_serial.h.
typedef CBC::buffer_type bm::compressed_collection_serializer< CBC >::buffer_type |
Definition at line 275 of file bmsparsevec_serial.h.
typedef CBC::bvector_type bm::compressed_collection_serializer< CBC >::bvector_type |
Definition at line 274 of file bmsparsevec_serial.h.
typedef CBC bm::compressed_collection_serializer< CBC >::compressed_collection_type |
Definition at line 273 of file bmsparsevec_serial.h.
typedef CBC::statistics bm::compressed_collection_serializer< CBC >::statistics_type |
Definition at line 276 of file bmsparsevec_serial.h.
void bm::compressed_collection_serializer< CBC >::serialize | ( | const CBC & | buffer_coll, |
buffer_type & | buf, | ||
bm::word_t * | temp_block = 0 |
||
) |
Serialize compressed collection into memory buffer.
Serialization format:
| MAGIC_HEADER | ADDRESS_BITVECTROR | LIST_OF_BUFFER_SIZES | BUFFER(s)
MAGIC_HEADER: BYTE+BYTE: Magic-signature 'BM' or 'BC' BYTE : Byte order ( 0 - Big Endian, 1 - Little Endian)
ADDRESS_BITVECTROR: INT64: address bit-vector size <memblock>: serialized address bit-vector
LIST_OF_BUFFER_SIZES: INT64 - buffer sizes count INT32 - buffer size 0 INT32 - buffer size 1 ...
BUFFERS: <memblock>: block0 <memblock>: block1 ...
Definition at line 340 of file bmsparsevec_serial.h.
References bm::globals< T >::byte_order(), bm::serializer< BV >::gap_length_serialization(), and bm::serializer< BV >::serialize().