#ifndef MODULE_H_ #define MODULE_H_ #include #include #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; }; UPkgModule *upkg_module_new(const char *name); int module_init(void); int module_exit(void); GType module_get_class(const char *package, const char *class); #endif