#ifndef LBXIMG_H_ #define LBXIMG_H_ #include struct lbx_file_ops; struct lbx_image { unsigned short width, height; unsigned char frames, chunk, leadin; }; struct lbx_colour { unsigned red:6, green:6, blue:6, active:1; }; struct lbx_imginfo { unsigned char loopstart; int looping; }; 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); void lbx_img_getinfo(struct lbx_image *img, struct lbx_imginfo *info); #endif