BitMagic-C++
|
Utilities for bit transposition (internal) (experimental!) More...
#include "bmdef.h"
Go to the source code of this file.
Data Structures | |
struct | bm::tmatrix< T, ROWS, COLS > |
Mini-matrix for bit transposition purposes. More... | |
struct | bm::tmatrix< T, ROWS, COLS >::rstat |
Row characteristics for transposed matrix. More... | |
struct | bm::bit_grabber< T, BPC > |
struct | bm::bit_grabber< unsigned, 32 > |
struct | bm::bit_grabber< unsigned short, 16 > |
struct | bm::bit_grabber< unsigned char, 8 > |
struct | bm::bit_trans_grabber< T, BPC, BPS > |
class | bm::gap_transpose_engine< GT, BT, BLOCK_SIZE > |
Bit-plane splicing of a GAP block. More... | |
Namespaces | |
namespace | bm |
Functions | |
template<typename T , unsigned BPC, unsigned BPS> | |
void | bm::vect_bit_transpose (const T *arr, unsigned arr_size, T tmatrix[BPC][BPS]) |
Generic bit-array transposition function T - array type (any int) BPC - bit plane count BPS - bit plane size. More... | |
template<typename T , unsigned BPC, unsigned BPS> | |
void | bm::vect_bit_trestore (const T tmatrix[BPC][BPS], T *arr) |
Restore bit array from the transposition matrix T - array type (any int) BPC - bit plane count BPS - bit plane size. More... | |
template<typename T , unsigned BPC, unsigned BPS> | |
void | bm::tmatrix_distance (const T tmatrix[BPC][BPS], unsigned distance[BPC][BPC]) |
Compute pairwise Row x Row Humming distances on planes(rows) of the transposed bit block. More... | |
template<typename T , unsigned BPC, unsigned BPS> | |
void | bm::bit_iblock_make_pcv (const unsigned distance[BPC][BPC], unsigned char *pc_vector) |
!< ibpc limiter More... | |
void | bm::bit_iblock_pcv_stat (const unsigned char *BMRESTRICT pc_vector, const unsigned char *BMRESTRICT pc_vector_end, unsigned *BMRESTRICT pc_vector_stat) |
Compute number of ibpc codes in pc_vector. More... | |
void | bm::bit_iblock_reduce (const unsigned tmatrix[bm::set_block_plane_cnt][bm::set_block_plane_size], const unsigned char *BMRESTRICT pc_vector, const unsigned char *BMRESTRICT pc_vector_end, unsigned tmatrix_out[bm::set_block_plane_cnt][bm::set_block_plane_size]) |
Matrix reduction based on transformation pc vector. More... | |
template<class TMatrix > | |
void | bm::tmatrix_reduce (TMatrix &tmatrix, const unsigned char *pc_vector, const unsigned effective_cols) |
Transposed Matrix reduction based on transformation pc vector. More... | |
template<class TMatrix > | |
void | bm::tmatrix_restore (TMatrix &tmatrix, const unsigned char *pc_vector, const unsigned effective_cols) |
Transposed Matrix restore based on transformation pc vector. More... | |
template<typename GT , typename BT > | |
void | bm::gap_2_bitblock (const GT *BMRESTRICT gap_buf, BT *BMRESTRICT block, unsigned block_size) |
Copy GAP block body to bit block with DGap transformation. More... | |
template<typename TM > | |
unsigned | bm::find_effective_columns (const TM &tmatrix) |
Compute effective right column border of the t-matrix. More... | |
Variables | |
const unsigned char | bm::ibpc_uncompr = 0 |
More... | |
const unsigned char | bm::ibpc_all_zero = 1 |
!< plane uncompressed More... | |
const unsigned char | bm::ibpc_all_one = 2 |
!< plane ALL ZERO More... | |
const unsigned char | bm::ibpc_equiv = 3 |
!< plane ALL ONE More... | |
const unsigned char | bm::ibpc_close = 4 |
!< plane is equal to plane M More... | |
const unsigned char | bm::ibpc_end = 8 |
!< plane is close to plane M More... | |
Utilities for bit transposition (internal) (experimental!)
Definition in file bmtrans.h.