]> mj.ucw.cz Git - libucw.git/blob - images/io-main.h
Merge branch 'dev-api' into dev-package
[libucw.git] / images / io-main.h
1 #ifndef _IMAGES_IO_MAIN_H
2 #define _IMAGES_IO_MAIN_H
3
4 #ifdef CONFIG_UCW_CLEAN_ABI
5 #define image_io_read_data_break ucw_image_io_read_data_break
6 #define image_io_read_data_finish ucw_image_io_read_data_finish
7 #define image_io_read_data_prepare ucw_image_io_read_data_prepare
8 #define libjpeg_read_data ucw_libjpeg_read_data
9 #define libjpeg_read_header ucw_libjpeg_read_header
10 #define libjpeg_write ucw_libjpeg_write
11 #define libmagick_cleanup ucw_libmagick_cleanup
12 #define libmagick_init ucw_libmagick_init
13 #define libmagick_read_data ucw_libmagick_read_data
14 #define libmagick_read_header ucw_libmagick_read_header
15 #define libmagick_write ucw_libmagick_write
16 #define libpng_read_data ucw_libpng_read_data
17 #define libpng_read_header ucw_libpng_read_header
18 #define libpng_write ucw_libpng_write
19 #define libungif_read_data ucw_libungif_read_data
20 #define libungif_read_header ucw_libungif_read_header
21 #endif
22
23 static inline int libjpeg_init(struct image_io *io UNUSED) { return 1; }
24 static inline void libjpeg_cleanup(struct image_io *io UNUSED) {}
25 int libjpeg_read_header(struct image_io *io);
26 int libjpeg_read_data(struct image_io *io);
27 int libjpeg_write(struct image_io *io);
28
29 static inline int libpng_init(struct image_io *io UNUSED) { return 1; }
30 static inline void libpng_cleanup(struct image_io *io UNUSED) {}
31 int libpng_read_header(struct image_io *io);
32 int libpng_read_data(struct image_io *io);
33 int libpng_write(struct image_io *io);
34
35 static inline int libungif_init(struct image_io *io UNUSED) { return 1; }
36 static inline void libungif_cleanup(struct image_io *io UNUSED) {}
37 int libungif_read_header(struct image_io *io);
38 int libungif_read_data(struct image_io *io);
39
40 int libmagick_init(struct image_io *io);
41 void libmagick_cleanup(struct image_io *io);
42 int libmagick_read_header(struct image_io *io);
43 int libmagick_read_data(struct image_io *io);
44 int libmagick_write(struct image_io *io);
45
46 struct image_io_read_data_internals {
47   struct image *image;
48   int need_transformations;
49 };
50
51 struct image *image_io_read_data_prepare(struct image_io_read_data_internals *rdi, struct image_io *io, uns cols, uns rows, uns flags);
52 int image_io_read_data_finish(struct image_io_read_data_internals *rdi, struct image_io *io);
53 void image_io_read_data_break(struct image_io_read_data_internals *rdi, struct image_io *io);
54
55 #endif