39 lines
778 B
C
39 lines
778 B
C
#ifndef ASE_H
|
|
#define ASE_H
|
|
|
|
struct ase_tag {
|
|
struct string name;
|
|
u32 start;
|
|
u32 end;
|
|
struct ase_tag *next;
|
|
};
|
|
|
|
struct ase_frame {
|
|
u32 index;
|
|
f64 duration;
|
|
struct clip_rect clip;
|
|
struct ase_frame *next;
|
|
};
|
|
|
|
struct ase_decode_image_result {
|
|
struct image_rgba image;
|
|
b32 valid;
|
|
struct string error_msg;
|
|
};
|
|
|
|
struct ase_decode_sheet_result {
|
|
struct v2 image_size;
|
|
struct v2 frame_size;
|
|
u32 num_frames;
|
|
u32 num_tags;
|
|
struct ase_frame *frame_head;
|
|
struct ase_tag *tag_head;
|
|
b32 valid;
|
|
struct string error_msg;
|
|
};
|
|
|
|
struct ase_decode_image_result ase_decode_image(struct arena *arena, struct buffer encoded);
|
|
struct ase_decode_sheet_result ase_decode_sheet(struct arena *arena, struct buffer encoded);
|
|
|
|
#endif
|