X-Git-Url: https://git.draconx.ca/gitweb/upkg.git/blobdiff_plain/aa72d53735c595550e417882b9aa8d1473b9b57c..67b795eeb9c9515adb9450562a3e7e15eb63a21d:/src/uobject/uobject.h diff --git a/src/uobject/uobject.h b/src/uobject/uobject.h index e0b2256..4347800 100644 --- a/src/uobject/uobject.h +++ b/src/uobject/uobject.h @@ -41,7 +41,7 @@ typedef struct UObjectClass UObjectClass; struct UObject { GObject parent; - struct upkg *pkg; + GTypeModule *pkg; struct upkg_file *pkg_file; char *pkg_name; }; @@ -54,9 +54,14 @@ struct UObjectClass { GType u_object_get_type(void); -int u_object_deserialize(GObject *obj, struct upkg *pkg, unsigned long idx); +int u_object_deserialize(GObject *obj, GTypeModule *pkg, unsigned long idx); -GObject *u_object_new_from_package(struct upkg *pkg, unsigned long idx); +float u_unpack_binary32_le(const unsigned char *buf); + +GObject *u_object_new_from_package(GTypeModule *pkg, unsigned long idx); + +/* Resolve an object reference from one object to another. */ +GObject *u_object_get_by_link(GObject *obj, long link); /* Logging helpers for UObject class implementations. */ void u_vlog_full(GObject *o, GLogLevelFlags level, const char *fmt, va_list ap);