aboutsummaryrefslogtreecommitdiff
path: root/plugin_registry.h
diff options
context:
space:
mode:
authorTrumeet <yuuta@yuuta.moe>2021-07-08 21:20:11 -0700
committerTrumeet <yuuta@yuuta.moe>2021-07-08 21:20:11 -0700
commit097ddb404f2a67398821c6a27f24db5cb939b79d (patch)
treefd3f9325e8c33ada2aefcebf645f73425f38af12 /plugin_registry.h
parent2fe493287c572ea988d6e79981f1fba02891a01f (diff)
downloadextmc-097ddb404f2a67398821c6a27f24db5cb939b79d.tar
extmc-097ddb404f2a67398821c6a27f24db5cb939b79d.tar.gz
extmc-097ddb404f2a67398821c6a27f24db5cb939b79d.tar.bz2
extmc-097ddb404f2a67398821c6a27f24db5cb939b79d.zip
feat: require a string unique ID as plugin identificationHEADmaster
This greatly simplifies the management of plugins, but no longer supports loading the same plugin twice.
Diffstat (limited to 'plugin_registry.h')
-rw-r--r--plugin_registry.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/plugin_registry.h b/plugin_registry.h
index a38808e..bc0ed18 100644
--- a/plugin_registry.h
+++ b/plugin_registry.h
@@ -5,17 +5,18 @@
#define EPLUGINEXCEED 10
#define EPLUGINNOTFOUND 74
+#define EPLUGINEXISTS 117
int plugin_registry_init();
void plugin_registry_free();
int plugin_size();
-struct plugin *plugin_get(int id);
+struct plugin *plugin_get(const char *id);
struct plugin *plugin_get_by_index(int index);
-int plugin_registry_unload(int stderr_fd, int id);
-int plugin_registry_load(int stderr_fd, const char *path, int *id);
+int plugin_registry_unload(int stderr_fd, const char *id);
+int plugin_registry_load(int stderr_fd, const char *path);
-void plugcall_setup_handle(struct plugin *plugin, struct epg_handle *handle);
+void plugcall_setup_handle(const struct plugin *plugin, struct epg_handle *handle);
void plugcall_player_join(void *arg);
void plugcall_player_leave(void *arg);