|
|
|
#ifndef HAS_BITMAP_H
|
|
|
|
#define HAS_BITMAP_H 1
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @file
|
|
|
|
* @brief Functions for work with image bitmaps
|
|
|
|
*/
|
|
|
|
|
|
|
|
/** Bits per bitmap side (currently - 16) */
|
|
|
|
#define SIMDB_BITMAP_SIDE 16
|
|
|
|
/** Total bits in bitmap (currently - 256) */
|
|
|
|
#define SIMDB_BITMAP_BITS (SIMDB_BITMAP_SIDE * SIMDB_BITMAP_SIDE)
|
|
|
|
/** Bitmap size in bytes (currently - 32) */
|
|
|
|
#define SIMDB_BITMAP_SIZE (SIMDB_BITMAP_BITS / 8)
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief Compare two bitmaps
|
|
|
|
* @param a First bitmap to compare
|
|
|
|
* @param b Second bitmap to compare
|
|
|
|
* @returns Integer showing difference between bitmaps in bits (0-256)
|
|
|
|
*/
|
|
|
|
int simdb_bitmap_compare(const unsigned char *a, const unsigned char *b);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief Unpack BITmap to BYTEmap
|
|
|
|
* @param map Source bitmap
|
|
|
|
* @param buf Pointer to store generated bytemap
|
|
|
|
* @returns Size of generated bytemap (now is @a BITMAP_BITS)
|
|
|
|
*/
|
|
|
|
size_t simdb_bitmap_unpack(const unsigned char *map, char **buf);
|
|
|
|
#endif
|