chiark / gitweb /
Low level playlist database operations: read, createwrite, list, delete.
[disorder] / lib / trackdb.h
index f97ee5f338319d724ae13205afc6bd69b616e0d4..97c761ee7c178041fb1cf5fd9810b452edf0ab6c 100644 (file)
 #ifndef TRACKDB_H
 #define TRACKDB_H
 
-struct ev_source;
+#include <pcre.h>
+
+#include "event.h"
+#include "rights.h"
 
 extern const struct cache_type cache_files_type;
 extern unsigned long cache_files_hits, cache_files_misses;
@@ -183,6 +186,25 @@ void trackdb_add_rescanned(void (*rescanned)(void *ru),
                            void *ru);
 int trackdb_rescan_underway(void);
 
+int playlist_parse_name(const char *name,
+                        char **ownerp,
+                        char **sharep);
+int trackdb_playlist_get(const char *name,
+                         const char *who,
+                         char ***tracksp,
+                         int *ntracksp,
+                         char **sharep);
+int trackdb_playlist_set(const char *name,
+                         const char *who,
+                         char **tracks,
+                         int ntracks,
+                         const char *share);
+void trackdb_playlist_list(const char *who,
+                           char ***playlistsp,
+                           int *nplaylistsp);
+int trackdb_playlist_delete(const char *name,
+                            const char *who);
+
 #endif /* TRACKDB_H */
 
 /*