File List
Here is a list of all files with brief descriptions:

samples |
bv3vlogic |
bv3vlogic.cpp | Example: Kleene algebra operations
bvsample01 |
sample1.cpp | Example: bvector<> set bits and then retrieve indexes of ON bits
bvsample01_64 |
bvsample01_64.cpp | Example: how to use 64-bit mode
bvsample02 |
sample2.cpp | Example: bvector<> set algebra operations AND, OR, XOR, etc
bvsample03 |
sample3.cpp | Example: bvector<> with different allocation/compression strategies
bvsample04 |
sample4.cpp | Example: bvector<> serialization/deserialization
bvsample05 |
sample5.cpp | Example: bvector<>::enumerator use
bvsample06 |
sample6.cpp | Example: bvector<> custom memory allocator
bvsample07 |
sample7.cpp | Example: set operations between bvector<> and arrays of integers
bvsample08 |
sample8.cpp | Example: bvector<> - STL interoperability
bvsample09 |
sample9.cpp | Example: bvector<> binary similarity / distance algorithms
bvsample10 |
sample10.cpp | Example: bvector<> generation of random sub-set
bvsample11 |
sample11.cpp | Example: bvector<> bit-counting techniques analysis
bvsample12 |
sample12.cpp | Example: bvector<> analysis of bit setting methods
bvsample14 |
sample14.cpp | Example: bvector<> set operations on serialized/compressed BLOBs
bvsample15 |
sample15.cpp | Example: bvector<> methods to find last bit and bit-vectors effective range
bvsample16 |
sample16.cpp | Example: how to use bm::aggregator<> for logical operations
bvsample17 |
sample17.cpp | Example: rank and select operations using rank-select index
bvsample18 |
sample18.cpp | Example: bulk insert iterator
bvsample18a |
sample18a.cpp | Example: import from an external bit-stream
bvsample19 |
sample19.cpp | Example: bit-vector merge
bvsample20 |
sample20.cpp | Example: bvector<> - bit-shifts
bvsample21 |
sample21.cpp | Example: bvector<> - bit-shifts
bvsample22 |
sample22.cpp | Example: bvector<> - ranges and intervals functions
bvsample23 |
sample23.cpp | Example: interval_enumerator<> - interator class for intervals
bvsample24 |
sample24.cpp | Example: demo for bm::rank_range_split
bvsample25 |
sample25.cpp | Example: demo for bit-vector traversal techniques
bvsample26 |
sample26.cpp | Example: bvector<> with immutability (read-only)
bvsetalgebra |
bvsetalgebra.cpp | Example: algebra of sets operations
rscsample01 |
rscsample01.cpp | Example: rsc_sparse_vector<> usage
rscsample02 |
rscsample02.cpp | Example: rsc_sparse_vector<> selective and range de-serialization
rscsample03 |
rscsample03.cpp | Example: bm::rsc_sparse_vector<>::const_iterator
rscsample04 |
rscsample04.cpp | Example: bm::rsc_sparse_vector<> known NULL elements access
rscsample05 |
rscsample05.cpp | Example: collaborative compression (XOR compression)
rscsample06 |
rscsample06.cpp | Example: bm::rsc_sparse_vector<>::gather
strsvsample01 |
strsvsample01.cpp | Example: str_sparse_vector<> set values, optimize memory
strsvsample02 |
strsvsample02.cpp | Example: str_sparse_vector<> insertion sort example
strsvsample02a |
strsvsample02a.cpp | Example: str_sparse_vector<> sort example
strsvsample03 |
strsvsample03.cpp | Example: str_sparse_vector<> back insert iterator example
strsvsample04 |
strsvsample04.cpp | Example: str_sparse_vector<> how to work with NULL values
strsvsample05 |
strsvsample05.cpp | Example: str_sparse_vector<> gather deserialization example
strsvsample06 |
strsvsample06.cpp | Example: Succinct container iterator for (substring), search, mismatch
strsvsample07 |
strsvsample07.cpp | Example: Succinct container for strings, bulk search using scanner pipeline
strsvsample08 |
strsvsample08.cpp |
strsvsample09 |
strsvsample09.cpp | Example: str_sparse_vector<> sorting example
svsample01 |
svsample01.cpp | Example: sparse_vector<> container set values
svsample02 |
svsample02.cpp | Example: sparse_vector<> serialization
svsample03 |
svsample03.cpp | Example: sparse_vector<> merge and fast extraction of content
svsample04 |
svsample04.cpp | Example: sparse_vector<> with NULL (unset) values
svsample05 |
svsample05.cpp | Example: sparse_vector<> used for set 2 set remapping (theory of groups Image)
svsample06 |
svsample06.cpp | Example: sparse_vector<> scan search (non-ordered set functionality)
svsample07 |
svsample07.cpp | Example: sparse_vector<> lower bound search
svsample07a |
svsample07a.cpp | Example: sparse_vector<> search
svsample08 |
svsample08.cpp | Example: sparse_vector<> selective de-serialization (gather) and range deserialization
svsample09 |
svsample09.cpp | Example: Use of sparse vector mismatch search
svsample10 |
svsample10.cpp | Example: Succinct vector searches: GT, GE, LT, LE, RANGE[from..to]
xsample01 |
xsample01.cpp | Example: Example: memory consumption techniques
xsample02 |
xsample02.cpp | Example: sparse_vector<> used for counting sort / historgam construction
xsample03 |
xsample03.cpp | Example: SNP search in human genome
xsample04 |
xsample04.cpp | Example: DNA substring search
xsample04a |
xsample04a.cpp | Example: DNA index construction
xsample05 |
xsample05.cpp | Example: Example on how to use bit-transposed string sparse vector
xsample06 |
xsample06.cpp | Example: Use of sparse vector for compressed DNA strings
xsample07 |
xsample07.cpp | Example: Use of bvector<> for k-mer fingerprint K should be short, no minimizers here
xsample07a |
xsample07a.cpp | Example: Use of bvector<> for k-mer fingerprint K should be short, no minimizers here (k < 24)
xsample08 |
xsample08.cpp |
xsample09 |
xsample09.cpp | Example: Use succinct vectors for histogram construction
src |
bm.h | Compressed bit-vector bvector<> container, set algebraic methods, traversal iterators
bm3vl.h | Three-valued logic (3VL) operations
bmaggregator.h | Algorithms for fast aggregation of N bvectors
bmalgo.h | Algorithms for bvector<> (main include)
bmalgo_impl.h | Algorithms for bvector<>
bmalgo_similarity.h |
bmalloc.h | Default SIMD friendly allocator
bmavx2.h |
bmbmatrix.h | Basic bit-matrix class and utilities
bmbvimport.h | Import of bvector<> from native type bit-arrays
bmconst.h | Constants, lookup tables and typedefs
bmdef.h | Definitions(internal)
bmfunc.h | Bit manipulation primitives (internal)
bmgamma.h | Elias Gamma Utils used for compact serialization (internal)
bmintervals.h | Algorithms for bit ranges and intervals
bmrandom.h | Generation of random subset
bmserial.h | Serialization / compression of bvector<>. Set theoretical operations on compressed BLOBs
bmsimd.h | SIMD target version definitions
bmsparsevec.h | Sparse constainer sparse_vector<> for integer types using bit-transposition transform
bmsparsevec_algo.h | Algorithms for bm::sparse_vector
bmsparsevec_compr.h | Compressed sparse container rsc_sparse_vector<> for integer types
bmsparsevec_parallel.h | Parallel planner for operations with sparse vectors
bmsparsevec_serial.h | Serialization for sparse_vector<>
bmsparsevec_util.h |
bmsse2.h | Compute functions for SSE2 SIMD instruction set (internal)
bmsse4.h | Compute functions for SSE4.2 SIMD instruction set (internal)
bmsse_util.h | Compute functions for SSE SIMD instruction set (internal)
bmstrsparsevec.h | String sparse vector based on bit-transposed matrix
bmtask.h | Task definitions for parallel programming with BitMagic
bmthreadpool.h |
bmtimer.h | Timing utilities for benchmarking (internal)
bmtrans.h | Utilities for bit transposition (internal) (experimental!)
bmundef.h | Pre-processor un-defines to avoid global space pollution (internal)
bmutil.h | Bit manipulation primitives (internal)
bmvmin.h | Mini bitset for testing and utility purposes (internal)
bmxor.h | Functions and utilities for XOR filters (internal)
encoding.h | Encoding utilities for serialization (internal)
utils |
inv_list |
inv_list.cpp | Utility to compress test sets of inverted lists