libmpdclient  2.18
queue.h
Go to the documentation of this file.
1 /* libmpdclient
2  (c) 2003-2019 The Music Player Daemon Project
3  This project's homepage is: http://www.musicpd.org
4 
5  Redistribution and use in source and binary forms, with or without
6  modification, are permitted provided that the following conditions
7  are met:
8 
9  - Redistributions of source code must retain the above copyright
10  notice, this list of conditions and the following disclaimer.
11 
12  - Redistributions in binary form must reproduce the above copyright
13  notice, this list of conditions and the following disclaimer in the
14  documentation and/or other materials provided with the distribution.
15 
16  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17  ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR
20  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
21  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
22  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
23  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
24  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
25  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
26  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 */
28 
37 #ifndef MPD_QUEUE_H
38 #define MPD_QUEUE_H
39 
40 #include "compiler.h"
41 #include "tag.h"
42 
43 #include <stdbool.h>
44 
45 struct mpd_connection;
46 
47 #ifdef __cplusplus
48 extern "C" {
49 #endif
50 
64 bool
65 mpd_send_list_queue_meta(struct mpd_connection *connection);
66 
79 bool
81  unsigned start, unsigned end);
82 
91 bool
92 mpd_send_get_queue_song_pos(struct mpd_connection *connection, unsigned pos);
93 
101 mpd_malloc
102 struct mpd_song *
103 mpd_run_get_queue_song_pos(struct mpd_connection *connection, unsigned pos);
104 
113 bool
114 mpd_send_get_queue_song_id(struct mpd_connection *connection, unsigned id);
115 
123 mpd_malloc
124 struct mpd_song *
125 mpd_run_get_queue_song_id(struct mpd_connection *connection, unsigned id);
126 
138 bool
140  unsigned version);
141 
158 bool
160  unsigned version,
161  unsigned start, unsigned end);
162 
174 bool
176  unsigned version);
177 
192 bool
194  unsigned version,
195  unsigned start, unsigned end);
196 
207 bool
209  unsigned *position_r, unsigned *id_r);
210 
218 bool
219 mpd_send_add(struct mpd_connection *connection, const char *file);
220 
228 bool
229 mpd_run_add(struct mpd_connection *connection, const char *uri);
230 
239 bool
240 mpd_send_add_id(struct mpd_connection *connection, const char *file);
241 
251 bool
252 mpd_send_add_id_to(struct mpd_connection *connection, const char *uri,
253  unsigned to);
254 
262 int
263 mpd_recv_song_id(struct mpd_connection *connection);
264 
273 int
274 mpd_run_add_id(struct mpd_connection *connection, const char *file);
275 
285 int
286 mpd_run_add_id_to(struct mpd_connection *connection, const char *uri,
287  unsigned to);
288 
296 bool
297 mpd_send_delete(struct mpd_connection *connection, unsigned pos);
298 
306 bool
307 mpd_run_delete(struct mpd_connection *connection, unsigned pos);
308 
320 bool
321 mpd_send_delete_range(struct mpd_connection *connection,
322  unsigned start, unsigned end);
323 
335 bool
336 mpd_run_delete_range(struct mpd_connection *connection,
337  unsigned start, unsigned end);
338 
346 bool
347 mpd_send_delete_id(struct mpd_connection *connection, unsigned id);
348 
356 bool
357 mpd_run_delete_id(struct mpd_connection *connection, unsigned id);
358 
365 bool
366 mpd_send_shuffle(struct mpd_connection *connection);
367 
374 bool
375 mpd_run_shuffle(struct mpd_connection *connection);
376 
388 bool
389 mpd_send_shuffle_range(struct mpd_connection *connection,
390  unsigned start, unsigned end);
391 
403 bool
404 mpd_run_shuffle_range(struct mpd_connection *connection,
405  unsigned start, unsigned end);
406 
413 bool
414 mpd_send_clear(struct mpd_connection *connection);
415 
422 bool
423 mpd_run_clear(struct mpd_connection *connection);
424 
433 bool
434 mpd_send_move(struct mpd_connection *connection, unsigned from, unsigned to);
435 
444 bool
445 mpd_run_move(struct mpd_connection *connection, unsigned from, unsigned to);
446 
455 bool
456 mpd_send_move_id(struct mpd_connection *connection, unsigned from, unsigned to);
457 
466 bool
467 mpd_run_move_id(struct mpd_connection *connection, unsigned from, unsigned to);
468 
481 bool
482 mpd_send_move_range(struct mpd_connection *connection,
483  unsigned start, unsigned end, unsigned to);
484 
497 bool
498 mpd_run_move_range(struct mpd_connection *connection,
499  unsigned start, unsigned end, unsigned to);
500 
509 bool
510 mpd_send_swap(struct mpd_connection *connection, unsigned pos1, unsigned pos2);
511 
520 bool
521 mpd_run_swap(struct mpd_connection *connection, unsigned pos1, unsigned pos2);
522 
531 bool
532 mpd_send_swap_id(struct mpd_connection *connection, unsigned id1, unsigned id2);
533 
542 bool
543 mpd_run_swap_id(struct mpd_connection *connection, unsigned id1, unsigned id2);
544 
556 bool
557 mpd_send_add_tag_id(struct mpd_connection *connection, unsigned id,
558  enum mpd_tag_type tag, const char *value);
559 
571 bool
572 mpd_run_add_tag_id(struct mpd_connection *connection, unsigned id,
573  enum mpd_tag_type tag, const char *value);
574 
585 bool
586 mpd_send_clear_tag_id(struct mpd_connection *connection, unsigned id,
587  enum mpd_tag_type tag);
588 
599 bool
600 mpd_run_clear_tag_id(struct mpd_connection *connection, unsigned id,
601  enum mpd_tag_type tag);
602 
612 bool
613 mpd_send_clear_all_tags_id(struct mpd_connection *connection, unsigned id);
614 
624 bool
625 mpd_run_clear_all_tags_id(struct mpd_connection *connection, unsigned id);
626 
637 bool
638 mpd_send_prio(struct mpd_connection *connection, int priority,
639  unsigned position);
640 
651 bool
652 mpd_run_prio(struct mpd_connection *connection, int priority,
653  unsigned position);
654 
668 bool
669 mpd_send_prio_range(struct mpd_connection *connection, int priority,
670  unsigned start, unsigned end);
671 
685 bool
686 mpd_run_prio_range(struct mpd_connection *connection, int priority,
687  unsigned start, unsigned end);
688 
699 bool
700 mpd_send_prio_id(struct mpd_connection *connection, int priority,
701  unsigned id);
702 
713 bool
714 mpd_run_prio_id(struct mpd_connection *connection, int priority,
715  unsigned id);
716 
717 #ifdef __cplusplus
718 }
719 #endif
720 
721 #endif
bool mpd_run_add(struct mpd_connection *connection, const char *uri)
bool mpd_send_delete_id(struct mpd_connection *connection, unsigned id)
bool mpd_run_delete_range(struct mpd_connection *connection, unsigned start, unsigned end)
bool mpd_run_prio_id(struct mpd_connection *connection, int priority, unsigned id)
bool mpd_send_move_range(struct mpd_connection *connection, unsigned start, unsigned end, unsigned to)
bool mpd_send_list_queue_meta(struct mpd_connection *connection)
bool mpd_send_list_queue_range_meta(struct mpd_connection *connection, unsigned start, unsigned end)
mpd_malloc struct mpd_song * mpd_run_get_queue_song_id(struct mpd_connection *connection, unsigned id)
bool mpd_run_shuffle_range(struct mpd_connection *connection, unsigned start, unsigned end)
bool mpd_send_clear_all_tags_id(struct mpd_connection *connection, unsigned id)
bool mpd_send_move_id(struct mpd_connection *connection, unsigned from, unsigned to)
bool mpd_send_swap_id(struct mpd_connection *connection, unsigned id1, unsigned id2)
bool mpd_send_queue_changes_brief_range(struct mpd_connection *connection, unsigned version, unsigned start, unsigned end)
bool mpd_send_get_queue_song_id(struct mpd_connection *connection, unsigned id)
mpd_tag_type
Definition: tag.h:45
bool mpd_run_prio(struct mpd_connection *connection, int priority, unsigned position)
bool mpd_run_prio_range(struct mpd_connection *connection, int priority, unsigned start, unsigned end)
bool mpd_send_shuffle(struct mpd_connection *connection)
bool mpd_run_move(struct mpd_connection *connection, unsigned from, unsigned to)
bool mpd_send_prio(struct mpd_connection *connection, int priority, unsigned position)
bool mpd_run_shuffle(struct mpd_connection *connection)
bool mpd_run_move_id(struct mpd_connection *connection, unsigned from, unsigned to)
mpd_malloc struct mpd_song * mpd_run_get_queue_song_pos(struct mpd_connection *connection, unsigned pos)
bool mpd_recv_queue_change_brief(struct mpd_connection *connection, unsigned *position_r, unsigned *id_r)
Compiler specific definitions.
bool mpd_send_get_queue_song_pos(struct mpd_connection *connection, unsigned pos)
int mpd_recv_song_id(struct mpd_connection *connection)
bool mpd_run_add_tag_id(struct mpd_connection *connection, unsigned id, enum mpd_tag_type tag, const char *value)
bool mpd_send_queue_changes_meta_range(struct mpd_connection *connection, unsigned version, unsigned start, unsigned end)
bool mpd_run_clear_all_tags_id(struct mpd_connection *connection, unsigned id)
bool mpd_run_clear_tag_id(struct mpd_connection *connection, unsigned id, enum mpd_tag_type tag)
bool mpd_send_queue_changes_brief(struct mpd_connection *connection, unsigned version)
bool mpd_run_swap_id(struct mpd_connection *connection, unsigned id1, unsigned id2)
bool mpd_send_add_id(struct mpd_connection *connection, const char *file)
bool mpd_run_delete(struct mpd_connection *connection, unsigned pos)
bool mpd_run_move_range(struct mpd_connection *connection, unsigned start, unsigned end, unsigned to)
bool mpd_send_move(struct mpd_connection *connection, unsigned from, unsigned to)
bool mpd_send_swap(struct mpd_connection *connection, unsigned pos1, unsigned pos2)
bool mpd_run_delete_id(struct mpd_connection *connection, unsigned id)
bool mpd_send_shuffle_range(struct mpd_connection *connection, unsigned start, unsigned end)
int mpd_run_add_id(struct mpd_connection *connection, const char *file)
bool mpd_run_clear(struct mpd_connection *connection)
bool mpd_send_delete_range(struct mpd_connection *connection, unsigned start, unsigned end)
bool mpd_send_add_id_to(struct mpd_connection *connection, const char *uri, unsigned to)
bool mpd_send_prio_range(struct mpd_connection *connection, int priority, unsigned start, unsigned end)
bool mpd_send_add(struct mpd_connection *connection, const char *file)
Definition: song.h:49
int mpd_run_add_id_to(struct mpd_connection *connection, const char *uri, unsigned to)
bool mpd_run_swap(struct mpd_connection *connection, unsigned pos1, unsigned pos2)
bool mpd_send_clear(struct mpd_connection *connection)
bool mpd_send_clear_tag_id(struct mpd_connection *connection, unsigned id, enum mpd_tag_type tag)
bool mpd_send_queue_changes_meta(struct mpd_connection *connection, unsigned version)
bool mpd_send_delete(struct mpd_connection *connection, unsigned pos)
bool mpd_send_prio_id(struct mpd_connection *connection, int priority, unsigned id)
bool mpd_send_add_tag_id(struct mpd_connection *connection, unsigned id, enum mpd_tag_type tag, const char *value)