@kv  0.0.4
Library for graph problems in C and Python
img_io.h
1 
18 #if !defined(AT_IMGPROC_H_INSIDE)
19 #error "Only <at/imgproc.h> can be included directly."
20 #endif
21 #ifndef AT_IMGIO_H
22 #define AT_IMGIO_H
23 #include <at/core.h>
24 AT_BEGIN_DECLS
25 /*=============================================================================
26  MACROS (PUBLIC API)
27  ============================================================================*/
28 #define at_array_read_image(format, array, filename, error) array = _Generic((array), \
29  AtArrayU8*:at_arrayu8_read_##format)(filename,error)
30 #define at_array_read_png(array, filename, error) at_array_read_image(png,array,filename,error)
31 #define at_array_read_jpg(array, filename, error) at_array_read_image(jpg,array,filename,error)
32 #define at_array_read_pgm(array, filename, error) at_array_read_image(pgm,array,filename,error)
33 #define at_array_read_ppm(array, filename, error) at_array_read_image(ppm,array,filename,error)
34 
35 #define at_array_write_image(format, array, filename, error) _Generic((array), \
36  AtArrayU8*: at_arrayu8_write_##format)(array,filename,error)
37 #define at_array_write_png(array, filename, error) at_array_write_image(png, array, filename, error)
38 #define at_array_write_jpg(array, filename, error) at_array_write_image(jpg, array, filename, error)
39 #define at_array_write_pgm(array, filename, error) at_array_write_image(pgm, array, filename, error)
40 #define at_array_write_ppm(array, filename, error) at_array_write_image(ppm, array, filename, error)
41 
42 /*=============================================================================
43  PUBLIC API
44  ============================================================================*/
50 AtArrayU8*
51 at_arrayu8_read_png(const char* filename, AtError** error);
52 
58 AtArrayU8*
59 at_arrayu8_read_jpg(const char* filename, AtError** error);
60 
67 AtArrayU8*
68 at_arrayu8_read_pgm(const char* filename, AtError** error);
69 
76 AtArrayU8*
77 at_arrayu8_read_ppm(const char* filename, AtError** error);
78 
84 void
85 at_arrayu8_write_png(AtArrayU8* image, const char *filename, AtError **error);
86 
92 void
93 at_arrayu8_write_jpg(AtArrayU8* image, const char* filename, AtError **error);
94 
101 void
102 at_arrayu8_write_pgm(AtArrayU8* image, const char* filename, AtError **error);
103 
110 void
111 at_arrayu8_write_ppm(AtArrayU8* image, const char* filename, AtError **error);
112 
113 AT_END_DECLS
114 #endif
error
Definition: error.h:28