]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/libpng/include/l4png_wrap.h
update
[l4.git] / l4 / pkg / libpng / include / l4png_wrap.h
1 #ifndef __L4PNG_WRAP_H__
2 #define __L4PNG_WRAP_H__
3
4 #include <sys/cdefs.h>
5
6 __BEGIN_DECLS
7
8 #define ARGB_BUF_TO_SMALL -2
9 #define ENOPNG -3;
10 #define EDAMAGEDPNG -4;
11
12 /**
13  * \brief Get the dimension of an PNG picture.
14  * \return 0 on success, negative on error
15  */
16 int png_get_size_mem(void *png_data, int png_data_size, int *width, int *height);
17 int png_get_size_file(const char *fp, int *width, int *height);
18
19 /** CONVERT PNG TO A ARGB-BUFFER (ALPHA, RED, GREEN, BLUE) **/
20 int png_convert_ARGB_mem(void *png_data, void *argb_buf,
21                          int png_data_size, unsigned argb_max_size);
22 int png_convert_ARGB_file(const char *filename, void *argb_buf,
23                           unsigned argb_max_size);
24 int png_convert_RGB16bit_mem(void *png_data, void *argb_buf,
25                              int png_data_size, unsigned argb_max_size,
26                              int line_offset);
27 int png_convert_RGB16bit_file(const char *filename, void *argb_buf,
28                               unsigned argb_max_size,
29                               int line_offset);
30
31 __END_DECLS
32
33 #endif /* ! __L4PNG_WRAP_H__ */