From 8189b7231a20fb0f317e594246492d3838843f9a Mon Sep 17 00:00:00 2001 From: ken Date: Wed, 15 Feb 2017 10:10:55 -0800 Subject: [PATCH] api updated --- src/ir.h | 60 ++++++++++++++++++++++++++------------------------------ 1 file changed, 28 insertions(+), 32 deletions(-) diff --git a/src/ir.h b/src/ir.h index 096c760..1fb5b70 100644 --- a/src/ir.h +++ b/src/ir.h @@ -22,11 +22,14 @@ #include #include "apc.h" -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; -typedef struct ir_classld_t* ir_classld; +struct ir_frameinfo_t +{ int facing, w, h; }; +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; +typedef struct ir_classld_t* ir_classld; /* Classes and Sets Classes are rooted at a special root class, representing the current working directory at scan-time, named ".". The root class can always be identified @@ -49,6 +52,16 @@ 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*); +/* Output */ +ir_class ir_class_nextsib(ir_class); +ir_class ir_class_nextchild(ir_class); +long ir_class_fpos(ir_class); +void ir_class_assign_fpos(ir_class,long); +ir_set ir_set_from_ref(uint32_t); +ir_set ir_set_nextsib(ir_set); +ir_set ir_set_nextchild(ir_set); +long ir_set_fpos(ir_set); +void ir_set_assign_fpos(ir_set,long); /* Set Data Each set can contain up to FACING_MAX each of framesheets and mapsheets, one sheet for each facing, per label. Each set can contain any number of audio @@ -71,6 +84,13 @@ ir_setdata ir_framesheet(const uint8_t*, apc_facing, int,int); 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 */ +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); /* 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 @@ -85,31 +105,7 @@ ir_classld ir_classld_addchild(ir_classld,const uint8_t*); ir_setld ir_setld_from_ref(uint32_t); ir_setld ir_setld_from_classld(ir_classld,const uint8_t*); ir_setld ir_setld_addchild(ir_setld,const uint8_t*); +/* Output */ +enum ltype ir_setld_type(ir_setld); +uint32_t ir_setld_ref(ir_setld); #endif //_IR_H_ - -int get_class_sibcount(ir_class); -int get_set_sibcount(ir_set); -int get_set_variants(ir_set); -ir_set get_class_root_set(ir_class); -ir_set get_set_nextsib(ir_set); -ir_set get_set_nextchild(ir_set); -ir_setdata get_set_frameboxes(ir_set); -ir_setdata get_set_links(ir_set); -uint8_t* get_set_name(ir_set); -long get_set_filepos(ir_set); -void set_set_filepos(ir_set, long); -ir_set get_set_from_ref(uint32_t); -ir_class get_class_nextchild(ir_class); -ir_class get_class_nextsib(ir_class); -uint8_t* get_class_name(ir_class); -uint8_t* get_link_name(ir_setdata); -ir_setdata get_link_nextsib(ir_setdata); -uint32_t get_link_ref(ir_setdata); -enum ltype get_link_type(ir_setdata); -ir_setdata get_framebox_nextsib(ir_setdata); -uint8_t* get_framebox_name(ir_setdata); -ir_setdata get_framebox_facing_framedata(ir_setdata, apc_facing); -ir_setdata get_framebox_facing_mapdata(ir_setdata, apc_facing); -int get_framedata_height(ir_setdata); -int get_framedata_width(ir_setdata); -uint8_t* get_framedata_name(ir_setdata); -- 2.18.0