25#define BMP_OPAQUE (1 << 0)
27#define BMP_CLEAR_MEMORY (1 << 1)
50typedef void* (*bmp_bitmap_cb_create)(
int width,
int height,
unsigned int state);
52typedef unsigned char* (*bmp_bitmap_cb_get_buffer)(
void *bitmap);
uint64_t size_t
Definition stdint.h:104
int int32_t
Definition acefiex.h:160
unsigned int uint32_t
Definition acefiex.h:163
unsigned char uint8_t
Definition acefiex.h:161
unsigned short int uint16_t
Definition acefiex.h:162
size_t size
Definition drm_bridge.h:1299
void * data
Definition kthread.h:30
bmp_result bmp_decode(bmp_image *bmp)
Definition libnsbmp.c:1263
bmp_result bmp_analyse(bmp_image *bmp, size_t size, uint8_t *data)
Definition libnsbmp.c:1226
void *(* bmp_bitmap_cb_create)(int width, int height, unsigned int state)
Definition libnsbmp.h:50
bmp_result bmp_create(bmp_image *bmp, bmp_bitmap_callback_vt *callbacks)
Definition libnsbmp.c:1202
bmp_result
Definition libnsbmp.h:32
@ BMP_OK
Definition libnsbmp.h:33
@ BMP_INSUFFICIENT_MEMORY
Definition libnsbmp.h:34
@ BMP_DATA_ERROR
Definition libnsbmp.h:36
@ BMP_INSUFFICIENT_DATA
Definition libnsbmp.h:35
bmp_image * ico_find(ico_collection *ico, uint16_t width, uint16_t height)
Definition libnsbmp.c:1339
struct bmp_bitmap_callback_vt_s bmp_bitmap_callback_vt
void(* bmp_bitmap_cb_destroy)(void *bitmap)
Definition libnsbmp.h:51
bmp_result ico_collection_create(ico_collection *ico, bmp_bitmap_callback_vt *callbacks)
Definition libnsbmp.c:1214
size_t(* bmp_bitmap_cb_get_bpp)(void *bitmap)
Definition libnsbmp.h:53
bmp_result ico_analyse(ico_collection *ico, size_t size, uint8_t *data)
Definition libnsbmp.c:1248
void ico_finalise(ico_collection *ico)
Definition libnsbmp.c:1377
bmp_result bmp_decode_trans(bmp_image *bmp, uint32_t transparent_colour)
Definition libnsbmp.c:1330
void bmp_finalise(bmp_image *bmp)
Definition libnsbmp.c:1365
bmp_encoding
Definition libnsbmp.h:42
@ BMP_ENCODING_RGB
Definition libnsbmp.h:43
@ BMP_ENCODING_RLE4
Definition libnsbmp.h:45
@ BMP_ENCODING_BITFIELDS
Definition libnsbmp.h:46
@ BMP_ENCODING_RLE8
Definition libnsbmp.h:44
unsigned char *(* bmp_bitmap_cb_get_buffer)(void *bitmap)
Definition libnsbmp.h:52
bmp_bitmap_cb_get_buffer bitmap_get_buffer
Definition libnsbmp.h:64
bmp_bitmap_cb_destroy bitmap_destroy
Definition libnsbmp.h:62
bmp_bitmap_cb_create bitmap_create
Definition libnsbmp.h:60
bool ico
Definition libnsbmp.h:106
uint32_t transparent_index
Definition libnsbmp.h:114
uint32_t colours
Definition libnsbmp.h:94
bmp_bitmap_callback_vt bitmap_callbacks
Definition libnsbmp.h:72
bool reversed
Definition libnsbmp.h:104
uint32_t trans_colour
Definition libnsbmp.h:102
bool limited_trans
Definition libnsbmp.h:98
bool opaque
Definition libnsbmp.h:108
uint16_t bpp
Definition libnsbmp.h:92
bool decoded
Definition libnsbmp.h:80
uint32_t bitmap_offset
Definition libnsbmp.h:90
int32_t shift[4]
Definition libnsbmp.h:112
uint32_t width
Definition libnsbmp.h:76
uint32_t mask[4]
Definition libnsbmp.h:110
void * bitmap
Definition libnsbmp.h:82
uint32_t height
Definition libnsbmp.h:78
uint8_t * bmp_data
Definition libnsbmp.h:74
uint32_t * colour_table
Definition libnsbmp.h:96
bmp_encoding encoding
Definition libnsbmp.h:88
uint32_t buffer_size
Definition libnsbmp.h:86
Definition libnsbmp.h:125
uint32_t buffer_size
Definition libnsbmp.h:137
uint16_t height
Definition libnsbmp.h:131
ico_image * first
Definition libnsbmp.h:139
bmp_bitmap_callback_vt bitmap_callbacks
Definition libnsbmp.h:127
uint16_t width
Definition libnsbmp.h:129
uint8_t * ico_data
Definition libnsbmp.h:135
Definition libnsbmp.h:117
struct ico_image * next
Definition libnsbmp.h:119
bmp_image bmp
Definition libnsbmp.h:118