BitMagic-C++
|
Compressed bit-vector bvector<> container, set algebraic methods, traversal iterators. More...
#include <iterator>
#include <initializer_list>
#include <stdexcept>
#include <limits.h>
#include "bmdef.h"
#include "bmconst.h"
#include "bmsimd.h"
#include "bmfwd.h"
#include "bmfunc.h"
#include "encoding.h"
#include "bmalloc.h"
#include "bmblocks.h"
#include "bmbuffer.h"
#include "bmrs.h"
Go to the source code of this file.
Data Structures | |
class | bm::bvector< Alloc > |
Bitvector Bit-vector container with runtime compression of bits. More... | |
struct | bm::bvector< Alloc >::statistics |
Statistical information about bitset's memory allocation details. More... | |
class | bm::bvector< Alloc >::reference |
Class reference implements an object for bit assignment. More... | |
class | bm::bvector< Alloc >::iterator_base |
Base class for all iterators. More... | |
struct | bm::bvector< Alloc >::iterator_base::bitblock_descr |
Bit-block descriptor. More... | |
struct | bm::bvector< Alloc >::iterator_base::dgap_descr |
Information about current DGAP block. More... | |
union | bm::bvector< Alloc >::iterator_base::block_descr |
class | bm::bvector< Alloc >::insert_iterator |
Output iterator iterator designed to set "ON" bits based on input sequence of integers (bit indeces). More... | |
class | bm::bvector< Alloc >::bulk_insert_iterator |
Output iterator iterator designed to set "ON" bits based on input sequence of integers. More... | |
class | bm::bvector< Alloc >::enumerator |
Constant iterator designed to enumerate "ON" bits. More... | |
class | bm::bvector< Alloc >::counted_enumerator |
Constant iterator designed to enumerate "ON" bits counted_enumerator keeps bitcount, ie number of ON bits starting from the position 0 in the bit string up to the currently enumerated bit. More... | |
struct | bm::bvector< Alloc >::allocation_policy |
memory allocation policy More... | |
Namespaces | |
namespace | bm |
Macros | |
#define | BM_DECLARE_TEMP_BLOCK(x) bm::bit_block_t x; |
#define | BM_BORDER_TEST(blk, idx) bool(blk[idx >> bm::set_word_shift] & (1u << (idx & bm::set_word_mask))) |
#define | BM_OR_OP(x) |
More... | |
#define | BM_XOR_OP(x) |
More... | |
#define | BM_AND_OP(x) |
More... | |
#define | BM_SUB_OP(x) |
More... | |
Typedefs | |
typedef int(* | bit_visitor_callback_type) (void *handle_ptr, bm::id_t bit_idx) |
Callback type to visit (callback style) bits in bit-vector(s) More... | |
typedef bm::id_t | bm::bvector_size_type |
Functions | |
template<class Alloc > | |
bvector< Alloc > | bm::operator& (const bvector< Alloc > &bv1, const bvector< Alloc > &bv2) |
More... | |
template<class Alloc > | |
bvector< Alloc > | bm::operator| (const bvector< Alloc > &bv1, const bvector< Alloc > &bv2) |
More... | |
template<class Alloc > | |
bvector< Alloc > | bm::operator^ (const bvector< Alloc > &bv1, const bvector< Alloc > &bv2) |
More... | |
template<class Alloc > | |
bvector< Alloc > | bm::operator- (const bvector< Alloc > &bv1, const bvector< Alloc > &bv2) |
More... | |
Compressed bit-vector bvector<> container, set algebraic methods, traversal iterators.
Definition in file bm.h.
#define BM_AND_OP | ( | x | ) |
#define BM_OR_OP | ( | x | ) |
#define BM_SUB_OP | ( | x | ) |