dlvhex
2.5.0
|
#include "bm.h"
#include "encoding.h"
#include "bmdef.h"
#include "bmfunc.h"
#include "bmtrans.h"
#include "bmalgo_impl.h"
#include "bmutil.h"
#include "bmundef.h"
Go to the source code of this file.
Data Structures | |
class | bm::serializer< BV > |
Bit-vector serialization class. More... | |
class | bm::deseriaizer_base< DEC > |
Base deserialization class. More... | |
class | bm::deserializer< BV, DEC > |
Class deserializer. More... | |
class | bm::iterator_deserializer< BV, SerialIterator > |
Iterator to walk forward the serialized stream. More... | |
class | bm::serial_stream_iterator< DEC > |
Serialization stream iterator. More... | |
class | bm::operation_deserializer< BV > |
Class deserializer, can perform logical operation on bit-vector and serialized bit-vector. More... | |
Namespaces | |
namespace | bm |
Defines | |
#define | BM__H__INCLUDED__ |
#define | SER_NEXT_GRP(enc, nb, B_1ZERO, B_8ZERO, B_16ZERO, B_32ZERO) |
#define | BM_SET_ONE_BLOCKS(x) |
Enumerations | |
enum | bm::serialization_header_mask { bm::BM_HM_DEFAULT = 1, bm::BM_HM_RESIZE = (1 << 1), bm::BM_HM_ID_LIST = (1 << 2), bm::BM_HM_NO_BO = (1 << 3), bm::BM_HM_NO_GAPL = (1 << 4), bm::BM_HM_DEFAULT = 1, bm::BM_HM_RESIZE = (1 << 1), bm::BM_HM_ID_LIST = (1 << 2), bm::BM_HM_NO_BO = (1 << 3), bm::BM_HM_NO_GAPL = (1 << 4) } |
enum | bm::serialization_flags { bm::BM_NO_BYTE_ORDER = 1, bm::BM_NO_GAP_LENGTH = (1 << 1), bm::BM_NO_BYTE_ORDER = 1, bm::BM_NO_GAP_LENGTH = (1 << 1) } |
Bit mask flags for serialization algorithm. More... | |
Functions | |
template<class BV > | |
unsigned | bm::serialize (const BV &bv, unsigned char *buf, bm::word_t *temp_block, unsigned serialization_flags=0) |
Saves bitvector into memory. | |
template<class BV > | |
unsigned | bm::serialize (BV &bv, unsigned char *buf, unsigned serialization_flags=0) |
Saves bitvector into memory. Allocates temporary memory block for bvector. | |
template<class BV > | |
unsigned | bm::deserialize (BV &bv, const unsigned char *buf, bm::word_t *temp_block=0) |
Bitvector deserialization from memory. |
#define BM__H__INCLUDED__ |
Definition at line 37 of file bmserial.h.
#define BM_SET_ONE_BLOCKS | ( | x | ) |
{\ unsigned end_block = i + x; \ for (;i < end_block; ++i) \ bman.set_block_all_set(i); \ } \ --i
Definition at line 126 of file bmserial.h.
#define SER_NEXT_GRP | ( | enc, | |
nb, | |||
B_1ZERO, | |||
B_8ZERO, | |||
B_16ZERO, | |||
B_32ZERO | |||
) |
if (nb == 1) \ enc.put_8(B_1ZERO); \ else if (nb < 256) \ { \ enc.put_8(B_8ZERO); \ enc.put_8((unsigned char)nb); \ } \ else if (nb < 65536) \ { \ enc.put_8(B_16ZERO); \ enc.put_16((unsigned short)nb); \ } \ else \ {\ enc.put_8(B_32ZERO); \ enc.put_32(nb); \ }
Definition at line 106 of file bmserial.h.