aboutsummaryrefslogtreecommitdiff
path: root/src/playlist_print.h
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2009-02-04 22:09:04 +0100
committerMax Kellermann <max@duempel.org>2009-02-04 22:09:04 +0100
commit2a1bef222555cbc0a84b0c90ccf4309b35e6387b (patch)
treeeec3bc0065e9ccd3e4550516a95f1a00c62ea952 /src/playlist_print.h
parentcbea8a2a00e82ead82fbc3bf968f22c004e80931 (diff)
playlist_print: added wrappers for printing the queue
Hide the details of the playlist behind wrapper functions.
Diffstat (limited to 'src/playlist_print.h')
-rw-r--r--src/playlist_print.h66
1 files changed, 66 insertions, 0 deletions
diff --git a/src/playlist_print.h b/src/playlist_print.h
index 3cedeaa7..6513007e 100644
--- a/src/playlist_print.h
+++ b/src/playlist_print.h
@@ -20,8 +20,74 @@
#define PLAYLIST_PRINT_H
#include <stdbool.h>
+#include <stdint.h>
struct client;
+struct playlist;
+struct locate_item_list;
+
+/**
+ * Sends the whole playlist to the client, song URIs only.
+ */
+void
+playlist_print_uris(struct client *client, const struct playlist *playlist);
+
+/**
+ * Sends a range of the playlist to the client, including all known
+ * information about the songs. The "end" offset is decreased
+ * automatically if it is too large; passing UINT_MAX is allowed.
+ * This function however fails when the start offset is invalid.
+ */
+bool
+playlist_print_info(struct client *client, const struct playlist *playlist,
+ unsigned start, unsigned end);
+
+/**
+ * Sends the song with the specified id to the client.
+ *
+ * @return true on suite, false if there is no such song
+ */
+bool
+playlist_print_id(struct client *client, const struct playlist *playlist,
+ unsigned id);
+
+/**
+ * Sends the current song to the client.
+ *
+ * @return true on success, false if there is no current song
+ */
+bool
+playlist_print_current(struct client *client, const struct playlist *playlist);
+
+/**
+ * Find songs in the playlist.
+ */
+void
+playlist_print_find(struct client *client, const struct playlist *playlist,
+ const struct locate_item_list *list);
+
+/**
+ * Search for songs in the playlist.
+ */
+void
+playlist_print_search(struct client *client, const struct playlist *playlist,
+ const struct locate_item_list *list);
+
+/**
+ * Print detailed changes since the specified playlist version.
+ */
+void
+playlist_print_changes_info(struct client *client,
+ const struct playlist *playlist,
+ uint32_t version);
+
+/**
+ * Print changes since the specified playlist version, position only.
+ */
+void
+playlist_print_changes_position(struct client *client,
+ const struct playlist *playlist,
+ uint32_t version);
/**
* Send the stored playlist to the client.