diff options
Diffstat (limited to 'src/module.h')
-rw-r--r-- | src/module.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/module.h b/src/module.h new file mode 100644 index 00000000..d0dfa045 --- /dev/null +++ b/src/module.h @@ -0,0 +1,27 @@ +#ifndef foomodulehfoo +#define foomodulehfoo + +#include <inttypes.h> +#include <ltdl.h> + +#include "core.h" + +struct module { + char *name, *argument; + uint32_t index; + + lt_dlhandle *dl; + + int (*init)(struct core *c, struct module*m); + void (*done)(struct core *c, struct module*m); + + void *userdata; +}; + +struct module* module_load(struct core *c, const char *name, const char*argument); +void module_unload(struct core *c, struct module *m); +void module_unload_by_index(struct core *c, uint32_t index); + +void module_unload_all(struct core *c); + +#endif |