comparison src/audacious/plugin.h @ 3688:8ab4cd5c6462

multifile plugins :(
author William Pitcock <nenolod@atheme.org>
date Tue, 02 Oct 2007 21:47:17 -0500
parents 12e11b15b549
children ec4b447eb8eb
comparison
equal deleted inserted replaced
3687:12e11b15b549 3688:8ab4cd5c6462
287 #define aud_cfg_db_get_bool _audvt->cfg_db_get_bool 287 #define aud_cfg_db_get_bool _audvt->cfg_db_get_bool
288 #define aud_cfg_db_get_float _audvt->cfg_db_get_float 288 #define aud_cfg_db_get_float _audvt->cfg_db_get_float
289 #define aud_cfg_db_get_double _audvt->cfg_db_get_double 289 #define aud_cfg_db_get_double _audvt->cfg_db_get_double
290 #define aud_cfg_db_unset_key _audvt->cfg_db_unset_key 290 #define aud_cfg_db_unset_key _audvt->cfg_db_unset_key
291 291
292 /* for multi-file plugins :( */
293 extern struct _AudaciousFuncVTable1 *_audvt;
294
292 #define DECLARE_PLUGIN(name, init, fini, ...) \ 295 #define DECLARE_PLUGIN(name, init, fini, ...) \
293 G_BEGIN_DECLS \ 296 G_BEGIN_DECLS \
294 static PluginHeader _pluginInfo = { PLUGIN_MAGIC, __AUDACIOUS_PLUGIN_API__, \ 297 static PluginHeader _pluginInfo = { PLUGIN_MAGIC, __AUDACIOUS_PLUGIN_API__, \
295 (gchar *)#name, init, fini, NULL, __VA_ARGS__ }; \ 298 (gchar *)#name, init, fini, NULL, __VA_ARGS__ }; \
296 static struct _AudaciousFuncVTable1 *_audvt = NULL; \ 299 struct _AudaciousFuncVTable1 *_audvt = NULL; \
297 G_MODULE_EXPORT PluginHeader *get_plugin_info(struct _AudaciousFuncVTable1 *_vt) { \ 300 G_MODULE_EXPORT PluginHeader *get_plugin_info(struct _AudaciousFuncVTable1 *_vt) { \
298 _audvt = _vt; \ 301 _audvt = _vt; \
299 return &_pluginInfo; \ 302 return &_pluginInfo; \
300 } \ 303 } \
301 G_END_DECLS 304 G_END_DECLS