diff options
Diffstat (limited to 'src/libmowgli/module/module.h')
-rw-r--r-- | src/libmowgli/module/module.h | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/libmowgli/module/module.h b/src/libmowgli/module/module.h index 54fc344..214fd51 100644 --- a/src/libmowgli/module/module.h +++ b/src/libmowgli/module/module.h @@ -2,7 +2,7 @@ * libmowgli: A collection of useful routines for programming. * module.h: Loadable modules. * - * Copyright (c) 2007 William Pitcock <nenolod -at- sacredspiral.co.uk> + * Copyright (c) 2007, 2014 William Pitcock <william@dereferenced.org> * * Permission to use, copy, modify, and/or distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -24,10 +24,21 @@ #ifndef __MOWGLI_MODULE_H__ #define __MOWGLI_MODULE_H__ -typedef void * mowgli_module_t; +typedef void *mowgli_module_t; extern mowgli_module_t mowgli_module_open(const char *path); -extern void * mowgli_module_symbol(mowgli_module_t module, const char *symbol); +extern void *mowgli_module_symbol(mowgli_module_t module, const char *symbol); extern void mowgli_module_close(mowgli_module_t module); +typedef void mowgli_interface_t; + +typedef struct { + const char *id; + uint32_t abirev; +} mowgli_interface_base_t; + +extern void mowgli_interface_register(mowgli_interface_t *iface); +extern void mowgli_interface_unregister(mowgli_interface_t *iface); +extern mowgli_interface_t *mowgli_interface_get(const char *id, uint32_t abirev); + #endif |