changeset 3735:d41d03630f27

export PlaylistContainer API in vtable.
author William Pitcock <nenolod@atheme.org>
date Sat, 13 Oct 2007 20:35:58 -0500
parents e82ec5cb017c
children 269449ad845e
files src/audacious/plugin.h src/audacious/pluginenum.c
diffstat 2 files changed, 19 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/audacious/plugin.h	Sat Oct 13 19:58:38 2007 -0500
+++ b/src/audacious/plugin.h	Sat Oct 13 20:35:58 2007 -0500
@@ -42,6 +42,7 @@
 #include "audacious/tuple_formatter.h"
 #include "audacious/eventqueue.h"
 #include "audacious/configdb.h"
+#include "audacious/playlist_container.h"
 
 #define PLUGIN(x)         ((Plugin *)(x))
 #define INPUT_PLUGIN(x)   ((InputPlugin *)(x))
@@ -308,6 +309,12 @@
                        gsize *arg_bytes_read, gsize *arg_bytes_write,
                        GError **arg_error);
 
+    /* PlaylistContainer API. */
+    void (*playlist_container_register)(PlaylistContainer *plc);
+    void (*playlist_container_unregister)(PlaylistContainer *plc);
+    void (*playlist_container_read)(gchar *filename, gint pos);
+    void (*playlist_container_write)(gchar *filename, gint pos);
+    PlaylistContainer *(*playlist_container_find)(gchar *ext);
 };
 
 /* Convenience macros for accessing the public API. */
@@ -412,6 +419,12 @@
 #define aud_convert_title_text		_audvt->convert_title_text
 #define aud_chardet_to_utf8		_audvt->chardet_to_utf8
 
+#define aud_playlist_container_register		_audvt->playlist_container_register
+#define aud_playlist_container_unregister	_audvt->playlist_container_unregister
+#define aud_playlist_container_read		_audvt->playlist_container_read
+#define aud_playlist_container_write		_audvt->playlist_container_write
+#define aud_playlist_container_find		_audvt->playlist_container_find
+
 /* for multi-file plugins :( */
 extern struct _AudaciousFuncTableV1 *_audvt;
 
--- a/src/audacious/pluginenum.c	Sat Oct 13 19:58:38 2007 -0500
+++ b/src/audacious/pluginenum.c	Sat Oct 13 20:35:58 2007 -0500
@@ -147,6 +147,12 @@
     .str_skip_chars = str_skip_chars,
     .convert_title_text = convert_title_text,
     .chardet_to_utf8 = chardet_to_utf8,
+
+    .playlist_container_register = playlist_container_register,
+    .playlist_container_unregister = playlist_container_unregister,
+    .playlist_container_read = playlist_container_read,
+    .playlist_container_write = playlist_container_write,
+    .playlist_container_find = playlist_container_find,
 };
 
 /*****************************************************************/