X-Git-Url: https://git.draconx.ca/gitweb/upkg.git/blobdiff_plain/71adb9bfdbddaa51139bcc4ee9822aff816e8fce..03eb9c441bba9f41d36cfd8f2cf1d43a5ee42252:/src/module.c diff --git a/src/module.c b/src/module.c index 88a7f81..eec80e7 100644 --- a/src/module.c +++ b/src/module.c @@ -25,9 +25,31 @@ #include #include -#include "module.h" #include "avl.h" +#define UPKG_MODULE_TYPE (upkg_module_get_type()) +#define UPKG_MODULE(obj) \ + G_TYPE_CHECK_INSTANCE_CAST(obj, UPKG_MODULE_TYPE, UPkgModule) +#define UPKG_MODULE_CLASS(class) \ + G_TYPE_CHECK_CLASS_CAST(class, UPKG_MODULE_TYPE, UPkgModuleClass) +#define IS_UPKG_MODULE(obj) \ + G_TYPE_CHECK_INSTANCE_TYPE(obj, UPKG_MODULE_TYPE) +#define IS_UPKG_MODULE_CLASS(class) \ + G_TYPE_CHECK_CLASS_TYPE(class, UPKG_MODULE_TYPE, UPkgModuleClass) + +typedef struct UPkgModule UPkgModule; +typedef struct UPkgModuleClass UPkgModuleClass; + +struct UPkgModule { + GTypeModule parent; + + lt_dlhandle dl; +}; + +struct UPkgModuleClass { + GTypeModuleClass parent; +}; + static unsigned initialized; static struct avl_table *package_tree;