X-Git-Url: https://www.kengrimes.com/gitweb/?p=henge%2Fapc.git;a=blobdiff_plain;f=src%2Fir.h;h=278c7b72096b43a79f490f7ce2b57dfe2d4b688f;hp=1fb5b707261fe5d12f19b14bdc5cb8c35130f427;hb=81be40c7e131efbb3300d948ee17d05a9910205e;hpb=8189b7231a20fb0f317e594246492d3838843f9a diff --git a/src/ir.h b/src/ir.h index 1fb5b70..278c7b7 100644 --- a/src/ir.h +++ b/src/ir.h @@ -24,8 +24,8 @@ struct ir_frameinfo_t { int facing, w, h; }; +typedef union ir_setdata_t* ir_setdata; typedef struct ir_frameinfo_t* ir_frameinfo; -typedef union ir_setdata_t* ir_setdata; typedef struct ir_set_t* ir_set; typedef struct ir_class_t* ir_class; typedef struct ir_setld_t* ir_setld; @@ -52,6 +52,7 @@ ir_class ir_class_addchild(ir_class,const uint8_t*); uint8_t* ir_class_name(ir_class); ir_set ir_class_addset(ir_class,const uint8_t*); ir_set ir_set_addchild(ir_set,const uint8_t*); +uint8_t* ir_set_name(ir_set); /* Output */ ir_class ir_class_nextsib(ir_class); ir_class ir_class_nextchild(ir_class); @@ -76,6 +77,10 @@ void ir_set_assign_fpos(ir_set,long); data of an associated file at that path and no path is provided, the data will be entered null. */ +typedef ir_setdata framebox; +typedef ir_setdata audiodata; +typedef ir_setdata linkdata; +typedef ir_setdata framedata; enum ltype { OLINK, MLINK, VLINK, ALINK }; void ir_set_assign_data(ir_set,ir_setdata); void ir_set_assign_ref(ir_set,uint32_t); @@ -85,12 +90,17 @@ ir_setdata ir_mapsheet(const uint8_t*, apc_facing, int,int); ir_setdata ir_audio(const uint8_t*); ir_setdata ir_link(enum ltype,ir_setld,const uint8_t*); /* Output */ +framebox ir_set_framebox(ir_set); +audiodata ir_set_audio(ir_set); +linkdata ir_set_link(ir_set); ir_setdata ir_setdata_nextsib(ir_setdata); uint8_t* ir_setdata_name(ir_setdata); uint8_t* ir_setdata_filename(ir_setdata); long ir_setdata_fpos(void); void ir_setdata_assign_fpos(ir_setdata,long); -ir_frameinfo ir_setdata_frameinfo(ir_setdata); +framedata ir_framebox_framesheet(framebox,apc_facing); +framedata ir_framebox_mapsheet(framebox,apc_facing); +ir_frameinfo ir_framedata_frameinfo(framedata); /* Reference Linking Data Create linking data to sets or classes that will be resolved at a later stage. Class references can be created from an ir_class object, if