X-Git-Url: https://git.draconx.ca/gitweb/liblbx.git/blobdiff_plain/0806586ee10e29b60a77c351d355a00087f81f57..31b96a5d3d06122cbca0d38d32e0bbfa87cb58c7:/src/image.h diff --git a/src/image.h b/src/image.h index 5b5e4a3..c375ce9 100644 --- a/src/image.h +++ b/src/image.h @@ -3,9 +3,28 @@ #include -typedef struct lbx_image LBXIMG; +struct lbx_file_ops; -LBXIMG *lbximg_fopen(FILE *f); -void lbximg_close(LBXIMG *img); +struct lbx_image { + unsigned short width, height; + unsigned char frames, chunk, leadin; +}; + +struct lbx_colour { + unsigned char red, green, blue, active; +}; + +struct lbx_image *lbx_img_open(void *f, const struct lbx_file_ops *fops, + int (*destructor)(void *)); +struct lbx_image *lbx_img_fopen(const char *file); +int lbx_img_close(struct lbx_image *img); + +int lbx_img_seek(struct lbx_image *img, unsigned frame); +long lbx_img_read_row_header(struct lbx_image *img, unsigned *x, unsigned *y); +long lbx_img_read_row_data(struct lbx_image *img, void *buf); + +int lbx_img_getpalette(struct lbx_image *img, struct lbx_colour *palette); +int lbx_img_loadpalette(void *f, const struct lbx_file_ops *fops, + struct lbx_colour *palette); #endif