diff options
author | Suren A. Chilingaryan <csa@dside.dyndns.org> | 2005-07-13 16:49:47 +0000 |
---|---|---|
committer | Suren A. Chilingaryan <csa@dside.dyndns.org> | 2005-07-13 16:49:47 +0000 |
commit | 7233ff9095194b38586ce438379f08691a0fecdd (patch) | |
tree | 8c14b8899914b4ae9e0d6f62e14dd6b3519983cd /src/plugin.h | |
parent | fad788d3f02564486039886b1de1cbf976776ac3 (diff) | |
download | librcc-7233ff9095194b38586ce438379f08691a0fecdd.tar.gz librcc-7233ff9095194b38586ce438379f08691a0fecdd.tar.bz2 librcc-7233ff9095194b38586ce438379f08691a0fecdd.tar.xz librcc-7233ff9095194b38586ce438379f08691a0fecdd.zip |
Engine Plugins
Diffstat (limited to 'src/plugin.h')
-rw-r--r-- | src/plugin.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/plugin.h b/src/plugin.h index 1325f03..e742d5f 100644 --- a/src/plugin.h +++ b/src/plugin.h @@ -13,4 +13,27 @@ rcc_library_handle rccLibraryOpen(char *filename); void rccLibraryClose(rcc_library_handle handle); void* rccLibraryFind(rcc_library_handle handle, const char *symbol); + +typedef enum rcc_plugin_type_t { + RCC_PLUGIN_TYPE_SYSTEMLIB = 0, + RCC_PLUGIN_TYPE_ENGINE, + RCC_PLUGIN_TYPE_MAX +} rcc_plugin_type; + +struct rcc_plugin_handle_t { + const char *sn; + rcc_library_handle handle; + void *info_function; +// rcc_library_type type; +}; + +typedef struct rcc_plugin_handle_t rcc_plugin_handle_s; +typedef struct rcc_plugin_handle_t *rcc_plugin_handle; + +int rccPluginInit(); +void rccPluginFree(); + +rcc_plugin_handle rccPluginLoad(rcc_plugin_type type, const char *name); +rcc_engine *rccPluginEngineGetInfo(const char *name, const char *language); + #endif /* _RCC_PLUGIN_H */ |