diff options
author | Jörg Frings-Fürst <debian@jff.email> | 2023-06-14 20:36:37 +0200 |
---|---|---|
committer | Jörg Frings-Fürst <debian@jff.email> | 2023-06-14 20:36:37 +0200 |
commit | bb80d3feebdc9acc52e3f4ad24084d8425f043a2 (patch) | |
tree | 2084a84c39f159c6aea254775dc0880d52579d45 /vapi/libwebpdemux.vapi | |
parent | b26ff0798252a1a8072dd2c7a67f6205de9fde11 (diff) | |
parent | 31804433d72460cbe0a39f9f8ea5e76058d84cda (diff) |
Merge branch 'feature/upstream' into develop
Diffstat (limited to 'vapi/libwebpdemux.vapi')
-rw-r--r-- | vapi/libwebpdemux.vapi | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/vapi/libwebpdemux.vapi b/vapi/libwebpdemux.vapi new file mode 100644 index 0000000..7612b42 --- /dev/null +++ b/vapi/libwebpdemux.vapi @@ -0,0 +1,43 @@ +namespace WebP { + [CCode (has_type_id = false)] + public struct Data { + [CCode (array_length_cname = "size")] + public unowned uint8[] bytes; + + public size_t size; + + [CCode (cname = "WebPDataClear")] + public void clear(); + } + + [CCode (cprefix = "WEBP_DEMUX_", cname = "WebPDemuxState")] + public enum ParsingState { + PARSE_ERROR, + PARSING_HEADER, + PARSED_HEADER, + DONE + } + + [CCode (cprefix = "WEBP_FF_")] + public enum FormatFeature { + FORMAT_FLAGS, + CANVAS_WIDTH, + CANVAS_HEIGHT, + LOOP_COUNT, + BACKGROUND_COLOR, + FRAME_COUNT + } + + [Compact] + [CCode (free_function = "WebPDemuxDelete", cname = "WebPDemuxer", cheader_filename = "webp/demux.h", has_type_id = false)] + public class Demuxer { + [CCode (cname="WebPDemux")] + public Demuxer(Data data); + + [CCode (cname="WebPDemuxPartial")] + public Demuxer.partial(Data data, out ParsingState state); + + [CCode (cname="WebPDemuxGetI")] + public uint32 get(FormatFeature feature); + } +} |