X-Git-Url: http://git.draconx.ca/gitweb/liblbx.git/blobdiff_plain/e5fa9ca748b73c6008754ce2c48e9a85a78a1f17..8f54b6d3d968a8bf36e32575f312cfb0edacc400:/src/image.h diff --git a/src/image.h b/src/image.h index e0a52bb..454b15b 100644 --- a/src/image.h +++ b/src/image.h @@ -3,34 +3,28 @@ #include -typedef struct lbx_image LBXimg; struct lbx_file_ops; -struct lbx_colour { - unsigned char red; - unsigned char green; - unsigned char blue; - unsigned char active; +struct lbx_image { + unsigned short width, height; + unsigned char frames, chunk, leadin; }; -struct lbx_imginfo { - unsigned short width, height; - unsigned char nframes, loopstart, chunk; - int palettesz, looping; +struct lbx_colour { + unsigned red:6, green:6, blue:6, active:1; }; -LBXimg *lbx_img_open(void *f, const struct lbx_file_ops *fops, - int (*destructor)(void *)); -LBXimg *lbx_img_fopen(const char *file); -int lbx_img_close(LBXimg *img); +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); -unsigned char **lbx_img_getframe(LBXimg *img, int frame); -unsigned char **lbx_img_getmask(LBXimg *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[static 256]); -int lbx_img_getpalette(LBXimg *img, struct lbx_colour palette[static 256]); - -void lbx_img_getinfo(LBXimg *img, struct lbx_imginfo *info); + struct lbx_colour *palette); #endif