Mercurial > audlegacy
diff src/audacious/plugin.h @ 3232:2453bf125b4f trunk
Automated merge with ssh://hg.atheme.org//hg/audacious
| author | William Pitcock <nenolod@atheme-project.org> |
|---|---|
| date | Fri, 03 Aug 2007 20:39:42 -0500 |
| parents | 06baa146fc1d 2619f4c62abe |
| children | 88f602569477 |
line wrap: on
line diff
--- a/src/audacious/plugin.h Fri Aug 03 20:39:35 2007 -0500 +++ b/src/audacious/plugin.h Fri Aug 03 20:39:42 2007 -0500 @@ -46,6 +46,7 @@ #define EFFECT_PLUGIN(x) ((EffectPlugin *)(x)) #define GENERAL_PLUGIN(x) ((GeneralPlugin *)(x)) #define VIS_PLUGIN(x) ((VisPlugin *)(x)) +#define DISCOVERY_PLUGIN(x) ((DiscoveryPlugin *)(x)) #define LOWLEVEL_PLUGIN(x) ((LowlevelPlugin *)(x)) @@ -78,7 +79,7 @@ typedef struct _EffectPlugin EffectPlugin; typedef struct _GeneralPlugin GeneralPlugin; typedef struct _VisPlugin VisPlugin; - +typedef struct _DiscoveryPlugin DiscoveryPlugin; typedef struct _LowlevelPlugin LowlevelPlugin; typedef struct _InputPlayback InputPlayback; @@ -102,15 +103,16 @@ EffectPlugin **ep_list; GeneralPlugin **gp_list; VisPlugin **vp_list; + DiscoveryPlugin **dp_list; } PluginHeader; #define PLUGIN_MAGIC 0x8EAC8DE2 -#define DECLARE_PLUGIN(name, init, fini, ip_list, op_list, ep_list, gp_list, vp_list) \ +#define DECLARE_PLUGIN(name, init, fini, ip_list, op_list, ep_list, gp_list, vp_list, dp_list) \ G_BEGIN_DECLS \ static PluginHeader _pluginInfo = { PLUGIN_MAGIC, __AUDACIOUS_PLUGIN_API__, \ (gchar *)#name, init, fini, NULL, ip_list, op_list, ep_list, gp_list, \ - vp_list }; \ + vp_list,dp_list }; \ G_MODULE_EXPORT PluginHeader *get_plugin_info(void) { \ return &_pluginInfo; \ } \ @@ -278,6 +280,17 @@ void (*render_freq) (gint16 freq_data[2][256]); }; +struct _DiscoveryPlugin { + gpointer handle; + gchar *filename; + gchar *description; + + void (*init) (void); + void (*cleanup) (void); + void (*about) (void); + void (*configure) (void); + gchar *(*get_devices); +}; G_BEGIN_DECLS
