libmpdclient 2.23
playlist.h
Go to the documentation of this file.
1// SPDX-License-Identifier: BSD-3-Clause
2// Copyright The Music Player Daemon Project
3
11
12#ifndef LIBMPDCLIENT_PLAYLIST_H
13#define LIBMPDCLIENT_PLAYLIST_H
14
15#include "compiler.h"
16#include "position.h"
17
18#include <stdbool.h>
19#include <time.h>
20
21struct mpd_pair;
22struct mpd_connection;
23
31struct mpd_playlist;
32
51
52#ifdef __cplusplus
53extern "C" {
54#endif
55
59void
61
67mpd_malloc
68struct mpd_playlist *
69mpd_playlist_dup(const struct mpd_playlist *playlist);
70
75mpd_pure
76const char *
77mpd_playlist_get_path(const struct mpd_playlist *playlist);
78
83mpd_pure
84time_t
86
95mpd_malloc
96struct mpd_playlist *
97mpd_playlist_begin(const struct mpd_pair *pair);
98
107bool
108mpd_playlist_feed(struct mpd_playlist *playlist, const struct mpd_pair *pair);
109
119bool
121
128mpd_malloc
129struct mpd_playlist *
131
140bool
141mpd_send_list_playlist(struct mpd_connection *connection, const char *name);
142
155bool
156mpd_send_list_playlist_range(struct mpd_connection *connection, const char *name,
157 unsigned start, unsigned end);
158
167bool
168mpd_send_list_playlist_meta(struct mpd_connection *connection, const char *name);
169
182bool
183mpd_send_list_playlist_range_meta(struct mpd_connection *connection, const char *name,
184 unsigned start, unsigned end);
185
193bool
194mpd_send_playlist_clear(struct mpd_connection *connection, const char *name);
195
203bool
204mpd_run_playlist_clear(struct mpd_connection *connection, const char *name);
205
215bool
216mpd_send_playlist_add(struct mpd_connection *connection, const char *name,
217 const char *path);
218
227bool
229 const char *name, const char *path);
230
243bool
244mpd_send_playlist_add_to(struct mpd_connection *connection, const char *name,
245 const char *uri, unsigned to);
246
258bool
260 const char *name, const char *uri, unsigned to);
261
271bool
272mpd_send_playlist_move(struct mpd_connection *connection, const char *name,
273 unsigned from, unsigned to);
274
286bool
287mpd_run_playlist_move(struct mpd_connection *connection, const char *name,
288 unsigned from, unsigned to);
289
303bool
304mpd_send_playlist_move_range(struct mpd_connection *connection, const char *name,
305 unsigned start, unsigned end, unsigned to);
306
320bool
321mpd_run_playlist_move_range(struct mpd_connection *connection, const char *name,
322 unsigned start, unsigned end, unsigned to);
323
332bool
333mpd_send_playlist_delete(struct mpd_connection *connection, const char *name,
334 unsigned pos);
335
344bool
346 const char *name, unsigned pos);
347
359bool
360mpd_send_playlist_delete_range(struct mpd_connection *connection, const char *name,
361 unsigned start, unsigned end);
362
374bool
376 const char *name, unsigned start, unsigned end);
377
386bool
387mpd_send_save(struct mpd_connection *connection, const char *name);
388
396bool
397mpd_run_save(struct mpd_connection *connection, const char *name);
398
414bool
415mpd_send_save_queue(struct mpd_connection *connection, const char *name,
416 enum mpd_queue_save_mode mode);
417
428bool
429mpd_run_save_queue(struct mpd_connection *connection, const char *name,
430 enum mpd_queue_save_mode mode);
431
439const char *
441
451
461bool
462mpd_send_load(struct mpd_connection *connection, const char *name);
463
473bool
474mpd_run_load(struct mpd_connection *connection, const char *name);
475
488bool
489mpd_send_load_range(struct mpd_connection *connection, const char *name,
490 unsigned start, unsigned end);
491
504bool
505mpd_run_load_range(struct mpd_connection *connection, const char *name,
506 unsigned start, unsigned end);
507
523bool
524mpd_send_load_range_to(struct mpd_connection *connection, const char *name,
525 unsigned start, unsigned end, unsigned to, enum mpd_position_whence whence);
526
541bool
542mpd_run_load_range_to(struct mpd_connection *connection, const char *name,
543 unsigned start, unsigned end, unsigned to, enum mpd_position_whence whence);
544
553bool
555 const char *from, const char *to);
556
565bool
567 const char *from, const char *to);
568
576bool
577mpd_send_rm(struct mpd_connection *connection, const char *name);
578
586bool
587mpd_run_rm(struct mpd_connection *connection, const char *name);
588
599bool
600mpd_send_playlistlength(struct mpd_connection *connection, const char *name);
601
602
617bool
618mpd_playlist_search_begin(struct mpd_connection *connection, const char *name,
619 const char *expression);
620
632bool
634 unsigned start, unsigned end);
635
644bool
646
656void
658
659#ifdef __cplusplus
660}
661#endif
662
663#endif
bool mpd_run_playlist_add(struct mpd_connection *connection, const char *name, const char *path)
bool mpd_run_save(struct mpd_connection *connection, const char *name)
bool mpd_send_list_playlist_meta(struct mpd_connection *connection, const char *name)
bool mpd_send_rename(struct mpd_connection *connection, const char *from, const char *to)
bool mpd_send_save(struct mpd_connection *connection, const char *name)
void mpd_playlist_free(struct mpd_playlist *playlist)
bool mpd_playlist_search_add_window(struct mpd_connection *connection, unsigned start, unsigned end)
bool mpd_playlist_feed(struct mpd_playlist *playlist, const struct mpd_pair *pair)
bool mpd_send_playlistlength(struct mpd_connection *connection, const char *name)
bool mpd_run_playlist_delete(struct mpd_connection *connection, const char *name, unsigned pos)
const char * mpd_playlist_get_path(const struct mpd_playlist *playlist)
bool mpd_send_playlist_add_to(struct mpd_connection *connection, const char *name, const char *uri, unsigned to)
bool mpd_run_load_range(struct mpd_connection *connection, const char *name, unsigned start, unsigned end)
const char * mpd_lookup_queue_save_mode(enum mpd_queue_save_mode mode)
bool mpd_send_load_range_to(struct mpd_connection *connection, const char *name, unsigned start, unsigned end, unsigned to, enum mpd_position_whence whence)
mpd_queue_save_mode
Definition playlist.h:38
@ MPD_QUEUE_SAVE_MODE_CREATE
Definition playlist.h:40
@ MPD_QUEUE_SAVE_MODE_UNKNOWN
Definition playlist.h:49
@ MPD_QUEUE_SAVE_MODE_REPLACE
Definition playlist.h:43
@ MPD_QUEUE_SAVE_MODE_APPEND
Definition playlist.h:46
time_t mpd_playlist_get_last_modified(const struct mpd_playlist *playlist)
bool mpd_run_playlist_delete_range(struct mpd_connection *connection, const char *name, unsigned start, unsigned end)
bool mpd_send_playlist_move(struct mpd_connection *connection, const char *name, unsigned from, unsigned to)
bool mpd_playlist_search_begin(struct mpd_connection *connection, const char *name, const char *expression)
bool mpd_run_save_queue(struct mpd_connection *connection, const char *name, enum mpd_queue_save_mode mode)
bool mpd_run_playlist_move(struct mpd_connection *connection, const char *name, unsigned from, unsigned to)
bool mpd_send_playlist_delete(struct mpd_connection *connection, const char *name, unsigned pos)
enum mpd_queue_save_mode mpd_parse_queue_save_mode(const char *mode)
bool mpd_send_playlist_move_range(struct mpd_connection *connection, const char *name, unsigned start, unsigned end, unsigned to)
bool mpd_run_load(struct mpd_connection *connection, const char *name)
bool mpd_send_list_playlist_range_meta(struct mpd_connection *connection, const char *name, unsigned start, unsigned end)
bool mpd_run_playlist_add_to(struct mpd_connection *connection, const char *name, const char *uri, unsigned to)
bool mpd_send_playlist_clear(struct mpd_connection *connection, const char *name)
bool mpd_send_list_playlist_range(struct mpd_connection *connection, const char *name, unsigned start, unsigned end)
bool mpd_send_list_playlists(struct mpd_connection *connection)
bool mpd_run_playlist_move_range(struct mpd_connection *connection, const char *name, unsigned start, unsigned end, unsigned to)
bool mpd_send_playlist_delete_range(struct mpd_connection *connection, const char *name, unsigned start, unsigned end)
struct mpd_playlist * mpd_playlist_begin(const struct mpd_pair *pair)
bool mpd_run_rm(struct mpd_connection *connection, const char *name)
bool mpd_send_list_playlist(struct mpd_connection *connection, const char *name)
bool mpd_run_playlist_clear(struct mpd_connection *connection, const char *name)
bool mpd_send_load_range(struct mpd_connection *connection, const char *name, unsigned start, unsigned end)
bool mpd_send_load(struct mpd_connection *connection, const char *name)
bool mpd_send_save_queue(struct mpd_connection *connection, const char *name, enum mpd_queue_save_mode mode)
bool mpd_playlist_search_commit(struct mpd_connection *connection)
bool mpd_run_load_range_to(struct mpd_connection *connection, const char *name, unsigned start, unsigned end, unsigned to, enum mpd_position_whence whence)
void mpd_playlist_search_cancel(struct mpd_connection *connection)
bool mpd_send_playlist_add(struct mpd_connection *connection, const char *name, const char *path)
bool mpd_run_rename(struct mpd_connection *connection, const char *from, const char *to)
struct mpd_playlist * mpd_playlist_dup(const struct mpd_playlist *playlist)
struct mpd_playlist * mpd_recv_playlist(struct mpd_connection *connection)
bool mpd_send_rm(struct mpd_connection *connection, const char *name)
MPD client library.
mpd_position_whence
Definition position.h:13