BitMagic-C++
|
layout class for serialization buffer structure More...
#include <bmsparsevec_serial.h>
Public Types | |
typedef SV::value_type | value_type |
typedef SV::bvector_type | bvector_type |
typedef serializer< bvector_type >::buffer | buffer_type |
Public Member Functions | |
sparse_vector_serial_layout () | |
~sparse_vector_serial_layout () | |
unsigned char * | reserve (size_t capacity) |
resize capacity More... | |
size_t | size () const |
return current serialized size More... | |
void | resize (size_t ssize) |
Set new serialized size. More... | |
size_t | capacity () const |
return serialization buffer capacity More... | |
void | freemem () |
free memory More... | |
void | set_plain (unsigned i, unsigned char *ptr, size_t buf_size) |
Set plain output pointer and size. More... | |
const unsigned char * | get_plain (unsigned i) const |
Get plain pointer. More... | |
const unsigned char * | buf () const |
Return serialization buffer pointer. More... | |
Protected Attributes | |
buffer_type | buf_ |
serialization buffer More... | |
unsigned char * | plain_ptrs_ [SV::sv_plains] |
pointers on serialized bit-plains More... | |
size_t | plane_size_ [SV::sv_plains] |
serialized plain size More... | |
layout class for serialization buffer structure
Class keeps a memory block sized for the target sparse vector BLOB. This class also provides acess to bit-plane memory, so it becomes possible to use parallel storage methods to save bit-plains into different storage shards.
Definition at line 57 of file bmsparsevec_serial.h.
typedef serializer<bvector_type>::buffer bm::sparse_vector_serial_layout< SV >::buffer_type |
Definition at line 61 of file bmsparsevec_serial.h.
typedef SV::bvector_type bm::sparse_vector_serial_layout< SV >::bvector_type |
Definition at line 60 of file bmsparsevec_serial.h.
typedef SV::value_type bm::sparse_vector_serial_layout< SV >::value_type |
Definition at line 59 of file bmsparsevec_serial.h.
|
inline |
Definition at line 63 of file bmsparsevec_serial.h.
Referenced by bm::sparse_vector_serial_layout< SV >::buf().
|
inline |
Definition at line 65 of file bmsparsevec_serial.h.
|
inline |
Return serialization buffer pointer.
Definition at line 106 of file bmsparsevec_serial.h.
References bm::sparse_vector_serial_layout< SV >::buf_, and bm::sparse_vector_serial_layout< SV >::sparse_vector_serial_layout().
Referenced by main(), and bm::sparse_vector_serializer< SV >::serialize().
|
inline |
return serialization buffer capacity
Definition at line 90 of file bmsparsevec_serial.h.
References bm::sparse_vector_serial_layout< SV >::buf_.
Referenced by bm::sparse_vector_serializer< SV >::serialize().
|
inline |
free memory
Definition at line 93 of file bmsparsevec_serial.h.
References bm::sparse_vector_serial_layout< SV >::buf_.
Referenced by bm::sparse_vector_serial_layout< SV >::reserve().
|
inline |
Get plain pointer.
Definition at line 103 of file bmsparsevec_serial.h.
References bm::sparse_vector_serial_layout< SV >::plain_ptrs_.
Referenced by bm::sparse_vector_serializer< SV >::serialize().
|
inline |
resize capacity
capacity | - new capacity |
Definition at line 72 of file bmsparsevec_serial.h.
References bm::sparse_vector_serial_layout< SV >::buf_, and bm::sparse_vector_serial_layout< SV >::freemem().
Referenced by bm::sparse_vector_serializer< SV >::serialize().
|
inline |
Set new serialized size.
Definition at line 87 of file bmsparsevec_serial.h.
References bm::sparse_vector_serial_layout< SV >::buf_.
Referenced by bm::sparse_vector_serializer< SV >::serialize().
|
inline |
Set plain output pointer and size.
Definition at line 96 of file bmsparsevec_serial.h.
References bm::sparse_vector_serial_layout< SV >::plain_ptrs_, and bm::sparse_vector_serial_layout< SV >::plane_size_.
Referenced by bm::sparse_vector_serializer< SV >::serialize().
|
inline |
return current serialized size
Definition at line 84 of file bmsparsevec_serial.h.
References bm::sparse_vector_serial_layout< SV >::buf_.
Referenced by main().
|
protected |
serialization buffer
Definition at line 112 of file bmsparsevec_serial.h.
Referenced by bm::sparse_vector_serial_layout< SV >::buf(), bm::sparse_vector_serial_layout< SV >::capacity(), bm::sparse_vector_serial_layout< SV >::freemem(), bm::sparse_vector_serial_layout< SV >::reserve(), bm::sparse_vector_serial_layout< SV >::resize(), and bm::sparse_vector_serial_layout< SV >::size().
|
protected |
pointers on serialized bit-plains
Definition at line 113 of file bmsparsevec_serial.h.
Referenced by bm::sparse_vector_serial_layout< SV >::get_plain(), and bm::sparse_vector_serial_layout< SV >::set_plain().
|
protected |
serialized plain size
Definition at line 114 of file bmsparsevec_serial.h.
Referenced by bm::sparse_vector_serial_layout< SV >::set_plain().