1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 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);
}
}
|