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 
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 
21 struct mpd_pair;
23 
31 struct mpd_playlist;
32 
41 
44 
47 
50 };
51 
52 #ifdef __cplusplus
53 extern "C" {
54 #endif
55 
59 void
60 mpd_playlist_free(struct mpd_playlist *playlist);
61 
67 mpd_malloc
68 struct mpd_playlist *
69 mpd_playlist_dup(const struct mpd_playlist *playlist);
70 
75 mpd_pure
76 const char *
77 mpd_playlist_get_path(const struct mpd_playlist *playlist);
78 
83 mpd_pure
84 time_t
85 mpd_playlist_get_last_modified(const struct mpd_playlist *playlist);
86 
95 mpd_malloc
96 struct mpd_playlist *
97 mpd_playlist_begin(const struct mpd_pair *pair);
98 
107 bool
108 mpd_playlist_feed(struct mpd_playlist *playlist, const struct mpd_pair *pair);
109 
119 bool
120 mpd_send_list_playlists(struct mpd_connection *connection);
121 
128 mpd_malloc
129 struct mpd_playlist *
130 mpd_recv_playlist(struct mpd_connection *connection);
131 
140 bool
141 mpd_send_list_playlist(struct mpd_connection *connection, const char *name);
142 
155 bool
156 mpd_send_list_playlist_range(struct mpd_connection *connection, const char *name,
157  unsigned start, unsigned end);
158 
167 bool
168 mpd_send_list_playlist_meta(struct mpd_connection *connection, const char *name);
169 
182 bool
183 mpd_send_list_playlist_range_meta(struct mpd_connection *connection, const char *name,
184  unsigned start, unsigned end);
185 
193 bool
194 mpd_send_playlist_clear(struct mpd_connection *connection, const char *name);
195 
203 bool
204 mpd_run_playlist_clear(struct mpd_connection *connection, const char *name);
205 
215 bool
216 mpd_send_playlist_add(struct mpd_connection *connection, const char *name,
217  const char *path);
218 
227 bool
228 mpd_run_playlist_add(struct mpd_connection *connection,
229  const char *name, const char *path);
230 
243 bool
244 mpd_send_playlist_add_to(struct mpd_connection *connection, const char *name,
245  const char *uri, unsigned to);
246 
258 bool
259 mpd_run_playlist_add_to(struct mpd_connection *connection,
260  const char *name, const char *uri, unsigned to);
261 
271 bool
272 mpd_send_playlist_move(struct mpd_connection *connection, const char *name,
273  unsigned from, unsigned to);
274 
286 bool
287 mpd_run_playlist_move(struct mpd_connection *connection, const char *name,
288  unsigned from, unsigned to);
289 
303 bool
304 mpd_send_playlist_move_range(struct mpd_connection *connection, const char *name,
305  unsigned start, unsigned end, unsigned to);
306 
320 bool
321 mpd_run_playlist_move_range(struct mpd_connection *connection, const char *name,
322  unsigned start, unsigned end, unsigned to);
323 
332 bool
333 mpd_send_playlist_delete(struct mpd_connection *connection, const char *name,
334  unsigned pos);
335 
344 bool
345 mpd_run_playlist_delete(struct mpd_connection *connection,
346  const char *name, unsigned pos);
347 
359 bool
360 mpd_send_playlist_delete_range(struct mpd_connection *connection, const char *name,
361  unsigned start, unsigned end);
362 
374 bool
376  const char *name, unsigned start, unsigned end);
377 
386 bool
387 mpd_send_save(struct mpd_connection *connection, const char *name);
388 
396 bool
397 mpd_run_save(struct mpd_connection *connection, const char *name);
398 
414 bool
415 mpd_send_save_queue(struct mpd_connection *connection, const char *name,
416  enum mpd_queue_save_mode mode);
417 
428 bool
429 mpd_run_save_queue(struct mpd_connection *connection, const char *name,
430  enum mpd_queue_save_mode mode);
431 
439 const char *
441 
450 mpd_parse_queue_save_mode(const char *mode);
451 
461 bool
462 mpd_send_load(struct mpd_connection *connection, const char *name);
463 
473 bool
474 mpd_run_load(struct mpd_connection *connection, const char *name);
475 
488 bool
489 mpd_send_load_range(struct mpd_connection *connection, const char *name,
490  unsigned start, unsigned end);
491 
504 bool
505 mpd_run_load_range(struct mpd_connection *connection, const char *name,
506  unsigned start, unsigned end);
507 
523 bool
524 mpd_send_load_range_to(struct mpd_connection *connection, const char *name,
525  unsigned start, unsigned end, unsigned to, enum mpd_position_whence whence);
526 
541 bool
542 mpd_run_load_range_to(struct mpd_connection *connection, const char *name,
543  unsigned start, unsigned end, unsigned to, enum mpd_position_whence whence);
544 
553 bool
554 mpd_send_rename(struct mpd_connection *connection,
555  const char *from, const char *to);
556 
565 bool
566 mpd_run_rename(struct mpd_connection *connection,
567  const char *from, const char *to);
568 
576 bool
577 mpd_send_rm(struct mpd_connection *connection, const char *name);
578 
586 bool
587 mpd_run_rm(struct mpd_connection *connection, const char *name);
588 
599 bool
600 mpd_send_playlistlength(struct mpd_connection *connection, const char *name);
601 
602 
617 bool
618 mpd_playlist_search_begin(struct mpd_connection *connection, const char *name,
619  const char *expression);
620 
632 bool
634  unsigned start, unsigned end);
635 
644 bool
645 mpd_playlist_search_commit(struct mpd_connection *connection);
646 
656 void
657 mpd_playlist_search_cancel(struct mpd_connection *connection);
658 
659 #ifdef __cplusplus
660 }
661 #endif
662 
663 #endif
bool mpd_run_playlist_clear(struct mpd_connection *connection, const char *name)
bool mpd_run_rename(struct mpd_connection *connection, const char *from, const char *to)
bool mpd_run_load_range(struct mpd_connection *connection, const char *name, unsigned start, unsigned end)
bool mpd_playlist_feed(struct mpd_playlist *playlist, const struct mpd_pair *pair)
bool mpd_playlist_search_add_window(struct mpd_connection *connection, unsigned start, unsigned end)
bool mpd_run_save_queue(struct mpd_connection *connection, const char *name, enum mpd_queue_save_mode mode)
bool mpd_send_list_playlist_range_meta(struct mpd_connection *connection, const char *name, unsigned start, unsigned end)
mpd_queue_save_mode
Definition: playlist.h:38
bool mpd_send_load(struct mpd_connection *connection, const char *name)
bool mpd_run_playlist_add(struct mpd_connection *connection, const char *name, const char *path)
bool mpd_send_playlist_move(struct mpd_connection *connection, const char *name, unsigned from, unsigned to)
const char * mpd_lookup_queue_save_mode(enum mpd_queue_save_mode mode)
bool mpd_send_playlist_delete(struct mpd_connection *connection, const char *name, unsigned pos)
bool mpd_send_list_playlist_meta(struct mpd_connection *connection, const char *name)
void mpd_playlist_free(struct mpd_playlist *playlist)
bool mpd_send_playlistlength(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_run_playlist_delete_range(struct mpd_connection *connection, const char *name, unsigned start, unsigned end)
bool mpd_playlist_search_begin(struct mpd_connection *connection, const char *name, const char *expression)
bool mpd_playlist_search_commit(struct mpd_connection *connection)
bool mpd_run_rm(struct mpd_connection *connection, const char *name)
time_t mpd_playlist_get_last_modified(const struct mpd_playlist *playlist)
bool mpd_send_list_playlist_range(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)
struct mpd_playlist * mpd_recv_playlist(struct mpd_connection *connection)
bool mpd_send_playlist_delete_range(struct mpd_connection *connection, const char *name, unsigned start, unsigned end)
enum mpd_queue_save_mode mpd_parse_queue_save_mode(const char *mode)
bool mpd_send_playlist_add_to(struct mpd_connection *connection, const char *name, const char *uri, unsigned to)
bool mpd_run_save(struct mpd_connection *connection, const char *name)
bool mpd_send_playlist_add(struct mpd_connection *connection, const char *name, const char *path)
bool mpd_run_load_range_to(struct mpd_connection *connection, const char *name, unsigned start, unsigned end, unsigned to, enum mpd_position_whence whence)
bool mpd_send_list_playlist(struct mpd_connection *connection, const char *name)
bool mpd_send_playlist_move_range(struct mpd_connection *connection, const char *name, unsigned start, unsigned end, unsigned to)
bool mpd_send_playlist_clear(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)
struct mpd_playlist * mpd_playlist_dup(const struct mpd_playlist *playlist)
const char * mpd_playlist_get_path(const struct mpd_playlist *playlist)
struct mpd_playlist * mpd_playlist_begin(const struct mpd_pair *pair)
bool mpd_run_playlist_delete(struct mpd_connection *connection, const char *name, unsigned pos)
MPD client library.
void mpd_playlist_search_cancel(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_load_range_to(struct mpd_connection *connection, const char *name, unsigned start, unsigned end, unsigned to, enum mpd_position_whence whence)
bool mpd_run_load(struct mpd_connection *connection, const char *name)
bool mpd_send_save(struct mpd_connection *connection, const char *name)
bool mpd_send_rename(struct mpd_connection *connection, const char *from, const char *to)
bool mpd_send_list_playlists(struct mpd_connection *connection)
bool mpd_run_playlist_move(struct mpd_connection *connection, const char *name, unsigned from, unsigned to)
Definition: pair.h:16
bool mpd_send_rm(struct mpd_connection *connection, const char *name)
mpd_position_whence
Definition: position.h:13