BitMagic-C++: bm::operation_functions< T > Struct Template Reference

BitMagic-C++

Static Public Member Functions | Static Public Attributes
bm::operation_functions< T > Struct Template Reference

`#include <bmfunc.h>`

## Static Public Member Functions
static gap_operation_to_bitset_func_type | gap_op_to_bit (unsigned i)
static gap_operation_func_type | gap_operation (unsigned i)
static bit_operation_count_func_type | bit_operation_count (unsigned i)

## Static Public Attributes
static gap_operation_to_bitset_func_type | gap2bit_table_ [bm::set_END]
static gap_operation_func_type | gapop_table_ [bm::set_END]
static bit_operation_count_func_type | bit_op_count_table_ [bm::set_END]

## Detailed Description

### template<bool T>
struct bm::operation_functions< T >

Definition at line 8350 of file bmfunc.h.

## Member Function Documentation

## ◆ bit_operation_count()

template<bool T>

static bit_operation_count_func_type bm::operation_functions< T >::bit_operation_count | ( | unsigned | i | ) |
| inlinestatic

Definition at line 8372 of file bmfunc.h.

References bm::operation_functions< T >::bit_op_count_table_.

Referenced by bm::combine_count_operation_with_block().

## ◆ gap_op_to_bit()

template<bool T>

static gap_operation_to_bitset_func_type bm::operation_functions< T >::gap_op_to_bit | ( | unsigned | i | ) |
| inlinestatic

Definition at line 8360 of file bmfunc.h.

References bm::operation_functions< T >::gap2bit_table_.

## ◆ gap_operation()

template<bool T>

static gap_operation_func_type bm::operation_functions< T >::gap_operation | ( | unsigned | i | ) |
| inlinestatic

Definition at line 8366 of file bmfunc.h.

References bm::operation_functions< T >::gapop_table_.

## Field Documentation

## ◆ bit_op_count_table_

template<bool T>

bit_operation_count_func_type bm::operation_functions< T >::bit_op_count_table_
| static

Initial value:
= {
0,
0,
0,
0,
0,
0,
&bit_operation_and_count,
&bit_operation_xor_count,
&bit_operation_or_count,
&bit_operation_sub_count,
&bit_operation_sub_count_inv,
0,
0,
}

Definition at line 8357 of file bmfunc.h.

Referenced by bm::operation_functions< T >::bit_operation_count().

## ◆ gap2bit_table_

template<bool T>

gap_operation_to_bitset_func_type bm::operation_functions< T >::gap2bit_table_
| static

Initial value:
= {
&gap_and_to_bitset<bm::gap_word_t>,
&gap_add_to_bitset<bm::gap_word_t>,
&gap_sub_to_bitset<bm::gap_word_t>,
&gap_xor_to_bitset<bm::gap_word_t>,
0
}

Definition at line 8353 of file bmfunc.h.

Referenced by bm::operation_functions< T >::gap_op_to_bit().

## ◆ gapop_table_

template<bool T>

gap_operation_func_type bm::operation_functions< T >::gapop_table_
| static

Initial value:
= {
&gap_operation_and,
&gap_operation_or,
&gap_operation_sub,
&gap_operation_xor,
0
}

Definition at line 8355 of file bmfunc.h.

Referenced by bm::operation_functions< T >::gap_operation().

The documentation for this struct was generated from the following file:

- bmfunc.h

bm::gap_operation_sub
gap_word_t * gap_operation_sub(const gap_word_t *BMRESTRICT vect1, const gap_word_t *BMRESTRICT vect2, gap_word_t *BMRESTRICT tmp_buf, unsigned &dsize) BMNOEXCEPT
GAP SUB (AND NOT) operation.
Definition: bmfunc.h:5835
bm::bit_operation_sub_count_inv
bm::id_t bit_operation_sub_count_inv(const bm::word_t *BMRESTRICT src1, const bm::word_t *BMRESTRICT src2) BMNOEXCEPT
Performs inverted bitblock SUB operation and calculates bitcount of the result.
Definition: bmfunc.h:6626
bm::bit_operation_and_count
bm::id_t bit_operation_and_count(const bm::word_t *BMRESTRICT src1, const bm::word_t *BMRESTRICT src2) BMNOEXCEPT
Performs bitblock AND operation and calculates bitcount of the result.
Definition: bmfunc.h:6540
bm::bit_operation_sub_count
bm::id_t bit_operation_sub_count(const bm::word_t *BMRESTRICT src1, const bm::word_t *BMRESTRICT src2) BMNOEXCEPT
Performs bitblock SUB operation and calculates bitcount of the result.
Definition: bmfunc.h:6589
bm::gap_operation_and
BMFORCEINLINE gap_word_t * gap_operation_and(const gap_word_t *BMRESTRICT vect1, const gap_word_t *BMRESTRICT vect2, gap_word_t *BMRESTRICT tmp_buf, unsigned &dsize) BMNOEXCEPT
GAP AND operation.
Definition: bmfunc.h:5646
bm::bit_operation_or_count
bm::id_t bit_operation_or_count(const bm::word_t *BMRESTRICT src1, const bm::word_t *BMRESTRICT src2) BMNOEXCEPT
Performs bitblock OR operation and calculates bitcount of the result.
Definition: bmfunc.h:6679
bm::gap_operation_xor
gap_word_t * gap_operation_xor(const gap_word_t *BMRESTRICT vect1, const gap_word_t *BMRESTRICT vect2, gap_word_t *BMRESTRICT tmp_buf, unsigned &dsize) BMNOEXCEPT
GAP XOR operation.
Definition: bmfunc.h:5712
bm::bit_operation_xor_count
bm::id_t bit_operation_xor_count(const bm::word_t *BMRESTRICT src1, const bm::word_t *BMRESTRICT src2) BMNOEXCEPT
Performs bitblock XOR operation and calculates bitcount of the result.
Definition: bmfunc.h:7349
bm::gap_operation_or
gap_word_t * gap_operation_or(const gap_word_t *BMRESTRICT vect1, const gap_word_t *BMRESTRICT vect2, gap_word_t *BMRESTRICT tmp_buf, unsigned &dsize) BMNOEXCEPT
GAP OR operation.
Definition: bmfunc.h:5790