bmxor.h File Reference

Functions and utilities for XOR filters (internal). More...

`#include "bmdef.h"`
`#include "bmutil.h"`
Include dependency graph for bmxor.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Data Structures

struct | bm::xor_sim_params
| Parameters for XOR similarity search. More...
struct | bm::block_waves_xor_descr
| Structure to compute XOR gap-count profile by sub-block waves. More...
struct | bm::block_xor_match_descr
| Capture the XOR filter results (xor block against ref.block). More...
struct | bm::match_pair
| XOR match pair. More...
struct | bm::block_match_chain< BLOCK_IDX >
| XOR match chain. More...
class | bm::bv_ref_vector< BV >
| List of reference bit-vectors with their true index associations. More...
struct | bm::xor_sim_model< BV >
| XOR similarity model. More...
class | bm::xor_scanner< BV >
| XOR scanner to search for complement-similarities in collections of bit-vectors. More...

## Namespaces

namespace | bm

## Enumerations

enum | bm::xor_complement_match { bm::e_no_xor_match = 0 , bm::e_xor_match_GC , bm::e_xor_match_BC , bm::e_xor_match_iBC , bm::e_xor_match_EQ }
| XOR complementarity type between 2 blocks. More...

## Functions

void | bm::bit_block_xor_change32 (const bm::word_t *BMRESTRICT block, const bm::word_t *BMRESTRICT xor_block, unsigned size, unsigned *BMRESTRICT gc, unsigned *BMRESTRICT bc) BMNOEXCEPT
void | bm::bit_block_xor_change64 (const bm::word_t *BMRESTRICT s_block, const bm::word_t *BMRESTRICT ref_block, unsigned size, unsigned *BMRESTRICT gc, unsigned *BMRESTRICT bc) BMNOEXCEPT
void | bm::bit_block_xor_change (const bm::word_t *BMRESTRICT block, const bm::word_t *BMRESTRICT xor_block, unsigned size, unsigned *BMRESTRICT gc, unsigned *BMRESTRICT bc) BMNOEXCEPT
template<typename PVT, typename VT>
VT::size_type | bm::greedy_refine_match_vector (PVT &match_pairs_vect, VT &match_vect, typename VT::size_type best_ref_idx, bm::id64_t d64, bm::xor_complement_match match_type)
| Greedy algorithm to find additional matches improving the inital best match block on its match type.
template<typename BMChain, typename RVect>
unsigned char | bm::check_pair_vect_vbr (const BMChain &mchain, const RVect &ref_vect)
| Check effective bit-rate for the XOR encode vector.
void | bm::compute_s_block_descr (const bm::word_t *BMRESTRICT block, block_waves_xor_descr &BMRESTRICT x_descr, unsigned *BMRESTRICT s_gc, unsigned *BMRESTRICT s_bc) BMNOEXCEPT
| Compute reference (non-XOR) 64-dim complexity descriptor for the s-block.
void | bm::bit_block_xor (bm::word_t *target_block, const bm::word_t *block, const bm::word_t *xor_block, bm::id64_t digest) BMNOEXCEPT
| Build partial XOR product of 2 bit-blocks using digest mask.
void | bm::bit_block_xor (bm::word_t *target_block, const bm::word_t *xor_block, bm::id64_t digest) BMNOEXCEPT
| Build partial XOR product of 2 bit-blocks using digest mask.

## Detailed Description

Functions and utilities for XOR filters (internal).

Definition in file bmxor.h.