summaryrefslogtreecommitdiff
path: root/vapi/libwebpdemux.vapi
diff options
context:
space:
mode:
authorJörg Frings-Fürst <debian@jff.email>2023-06-28 21:35:52 +0200
committerJörg Frings-Fürst <debian@jff.email>2023-06-28 21:35:52 +0200
commitb86540b743f1a87a163ffb811c8fe22a01fefa38 (patch)
treeb47cb3bb83c2377234226fb3987ab3320a987dd9 /vapi/libwebpdemux.vapi
parentac6e0b731b9f0b2efd392e3309a5c07e2a66adad (diff)
parente905d8e16eec152d19797937f13ba3cf4b8f8aca (diff)
Merge branch 'release/debian/0.32.1-1'debian/0.32.1-1
Diffstat (limited to 'vapi/libwebpdemux.vapi')
-rw-r--r--vapi/libwebpdemux.vapi43
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);
+ }
+}