Collaboration diagram for Distance metrics:
![]() |
Enumerations | |
enum | bm::distance_metric { bm::COUNT_AND, bm::COUNT_XOR, bm::COUNT_OR, bm::COUNT_SUB_AB, bm::COUNT_SUB_BA, bm::COUNT_A, bm::COUNT_B } |
Distance metrics codes defined for vectors A and B. More... | |
Functions | |
template<class BV> | |
void | bm::distance_operation (const BV &bv1, const BV &bv2, distance_metric_descriptor *dmit, distance_metric_descriptor *dmit_end) |
Distance computing template function. | |
template<class BV> | |
bm::id_t | bm::count_and (const BV &bv1, const BV &bv2) |
Computes bitcount of AND operation of two bitsets. | |
template<class BV> | |
bm::id_t | bm::count_xor (const BV &bv1, const BV &bv2) |
Computes bitcount of XOR operation of two bitsets. | |
template<class BV> | |
bm::id_t | bm::count_sub (const BV &bv1, const BV &bv2) |
Computes bitcount of SUB operation of two bitsets. | |
template<class BV> | |
bm::id_t | bm::count_or (const BV &bv1, const BV &bv2) |
Computes bitcount of OR operation of two bitsets. |
|
Distance metrics codes defined for vectors A and B.
|
|
Computes bitcount of AND operation of two bitsets.
Definition at line 455 of file bmalgo.h. References bm::distance_operation(), and bm::distance_metric_descriptor::result. |
|
Computes bitcount of OR operation of two bitsets.
Definition at line 506 of file bmalgo.h. References bm::distance_operation(), and bm::distance_metric_descriptor::result. |
|
Computes bitcount of SUB operation of two bitsets.
Definition at line 489 of file bmalgo.h. References bm::distance_operation(), and bm::distance_metric_descriptor::result. |
|
Computes bitcount of XOR operation of two bitsets.
Definition at line 472 of file bmalgo.h. References bm::distance_operation(), and bm::distance_metric_descriptor::result. Referenced by main(). |
|
Distance computing template function. Function receives two bitvectors and an array of distance metrics (metrics pipeline). Function computes all metrics saves result into corresponding pipeline results (distance_metric_descriptor::result) An important detail is that function reuses metric descriptors, incrementing received values. It allows you to accumulate results from different calls in the pipeline.
Definition at line 352 of file bmalgo.h. References BM_IS_GAP, BM_SET_MMX_GUARD, and bm::combine_count_operation_with_block(). Referenced by bm::count_and(), bm::count_or(), bm::count_sub(), bm::count_xor(), and main(). |