comparison src/audacious/plugin.h @ 3684:2f9d8b987e40

Export VfsBuffer functions.
author William Pitcock <nenolod@atheme.org>
date Mon, 01 Oct 2007 23:32:57 -0500
parents 4284187479d7
children 0ba593887cae
comparison
equal deleted inserted replaced
3683:4284187479d7 3684:2f9d8b987e40
166 gboolean (*vfs_register_transport)(VFSConstructor *vtable); 166 gboolean (*vfs_register_transport)(VFSConstructor *vtable);
167 void (*vfs_file_get_contents)(const gchar *filename, gchar **buf, gsize *size); 167 void (*vfs_file_get_contents)(const gchar *filename, gchar **buf, gsize *size);
168 gboolean (*vfs_is_remote)(const gchar * path); 168 gboolean (*vfs_is_remote)(const gchar * path);
169 gboolean (*vfs_is_streaming)(VFSFile *file); 169 gboolean (*vfs_is_streaming)(VFSFile *file);
170 170
171 /* VFS Buffer */
172 VFSFile *(*vfs_buffer_new)(gpointer data, gsize size);
173 VFSFile *(*vfs_buffer_new_from_string)(gchar *str);
171 }; 174 };
172 175
173 /* Convenience macros for accessing the public API. */ 176 /* Convenience macros for accessing the public API. */
174 /* public name vtable mapping */ 177 /* public name vtable mapping */
175 #define aud_vfs_fopen _audvt->vfs_fopen 178 #define aud_vfs_fopen _audvt->vfs_fopen
193 #define aud_vfs_register_transport _audvt->vfs_register_transport 196 #define aud_vfs_register_transport _audvt->vfs_register_transport
194 #define aud_vfs_file_get_contents _audvt->vfs_file_get_contents 197 #define aud_vfs_file_get_contents _audvt->vfs_file_get_contents
195 #define aud_vfs_is_remote _audvt->vfs_is_remote 198 #define aud_vfs_is_remote _audvt->vfs_is_remote
196 #define aud_vfs_is_streaming _audvt->vfs_is_streaming 199 #define aud_vfs_is_streaming _audvt->vfs_is_streaming
197 200
201 #define aud_vfs_buffer_new _audvt->vfs_buffer_new
202 #define aud_vfs_buffer_new_from_string _audvt->vfs_buffer_new_from_string
203
204
198 #define DECLARE_PLUGIN(name, init, fini, ...) \ 205 #define DECLARE_PLUGIN(name, init, fini, ...) \
199 G_BEGIN_DECLS \ 206 G_BEGIN_DECLS \
200 static PluginHeader _pluginInfo = { PLUGIN_MAGIC, __AUDACIOUS_PLUGIN_API__, \ 207 static PluginHeader _pluginInfo = { PLUGIN_MAGIC, __AUDACIOUS_PLUGIN_API__, \
201 (gchar *)#name, init, fini, NULL, __VA_ARGS__ }; \ 208 (gchar *)#name, init, fini, NULL, __VA_ARGS__ }; \
202 static struct _AudaciousFuncVTable1 *_audvt = NULL; \ 209 static struct _AudaciousFuncVTable1 *_audvt = NULL; \