libmpdclient  2.19
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 
193 bool
195  unsigned version,
196  unsigned start, unsigned end);
197 
208 bool
210  unsigned *position_r, unsigned *id_r);
211 
219 bool
220 mpd_send_add(struct mpd_connection *connection, const char *file);
221 
229 bool
230 mpd_run_add(struct mpd_connection *connection, const char *uri);
231 
240 bool
241 mpd_send_add_id(struct mpd_connection *connection, const char *file);
242 
252 bool
253 mpd_send_add_id_to(struct mpd_connection *connection, const char *uri,
254  unsigned to);
255 
263 int
264 mpd_recv_song_id(struct mpd_connection *connection);
265 
274 int
275 mpd_run_add_id(struct mpd_connection *connection, const char *file);
276 
286 int
287 mpd_run_add_id_to(struct mpd_connection *connection, const char *uri,
288  unsigned to);
289 
297 bool
298 mpd_send_delete(struct mpd_connection *connection, unsigned pos);
299 
307 bool
308 mpd_run_delete(struct mpd_connection *connection, unsigned pos);
309 
321 bool
322 mpd_send_delete_range(struct mpd_connection *connection,
323  unsigned start, unsigned end);
324 
336 bool
337 mpd_run_delete_range(struct mpd_connection *connection,
338  unsigned start, unsigned end);
339 
347 bool
348 mpd_send_delete_id(struct mpd_connection *connection, unsigned id);
349 
357 bool
358 mpd_run_delete_id(struct mpd_connection *connection, unsigned id);
359 
366 bool
367 mpd_send_shuffle(struct mpd_connection *connection);
368 
375 bool
376 mpd_run_shuffle(struct mpd_connection *connection);
377 
389 bool
390 mpd_send_shuffle_range(struct mpd_connection *connection,
391  unsigned start, unsigned end);
392 
404 bool
405 mpd_run_shuffle_range(struct mpd_connection *connection,
406  unsigned start, unsigned end);
407 
414 bool
415 mpd_send_clear(struct mpd_connection *connection);
416 
423 bool
424 mpd_run_clear(struct mpd_connection *connection);
425 
434 bool
435 mpd_send_move(struct mpd_connection *connection, unsigned from, unsigned to);
436 
445 bool
446 mpd_run_move(struct mpd_connection *connection, unsigned from, unsigned to);
447 
456 bool
457 mpd_send_move_id(struct mpd_connection *connection, unsigned from, unsigned to);
458 
467 bool
468 mpd_run_move_id(struct mpd_connection *connection, unsigned from, unsigned to);
469 
482 bool
483 mpd_send_move_range(struct mpd_connection *connection,
484  unsigned start, unsigned end, unsigned to);
485 
498 bool
499 mpd_run_move_range(struct mpd_connection *connection,
500  unsigned start, unsigned end, unsigned to);
501 
510 bool
511 mpd_send_swap(struct mpd_connection *connection, unsigned pos1, unsigned pos2);
512 
521 bool
522 mpd_run_swap(struct mpd_connection *connection, unsigned pos1, unsigned pos2);
523 
532 bool
533 mpd_send_swap_id(struct mpd_connection *connection, unsigned id1, unsigned id2);
534 
543 bool
544 mpd_run_swap_id(struct mpd_connection *connection, unsigned id1, unsigned id2);
545 
557 bool
558 mpd_send_add_tag_id(struct mpd_connection *connection, unsigned id,
559  enum mpd_tag_type tag, const char *value);
560 
572 bool
573 mpd_run_add_tag_id(struct mpd_connection *connection, unsigned id,
574  enum mpd_tag_type tag, const char *value);
575 
586 bool
587 mpd_send_clear_tag_id(struct mpd_connection *connection, unsigned id,
588  enum mpd_tag_type tag);
589 
600 bool
601 mpd_run_clear_tag_id(struct mpd_connection *connection, unsigned id,
602  enum mpd_tag_type tag);
603 
613 bool
614 mpd_send_clear_all_tags_id(struct mpd_connection *connection, unsigned id);
615 
625 bool
626 mpd_run_clear_all_tags_id(struct mpd_connection *connection, unsigned id);
627 
638 bool
639 mpd_send_prio(struct mpd_connection *connection, int priority,
640  unsigned position);
641 
652 bool
653 mpd_run_prio(struct mpd_connection *connection, int priority,
654  unsigned position);
655 
669 bool
670 mpd_send_prio_range(struct mpd_connection *connection, int priority,
671  unsigned start, unsigned end);
672 
686 bool
687 mpd_run_prio_range(struct mpd_connection *connection, int priority,
688  unsigned start, unsigned end);
689 
700 bool
701 mpd_send_prio_id(struct mpd_connection *connection, int priority,
702  unsigned id);
703 
714 bool
715 mpd_run_prio_id(struct mpd_connection *connection, int priority,
716  unsigned id);
717 
734 bool
735 mpd_send_range_id(struct mpd_connection *connection, unsigned id,
736  float start, float end);
737 
751 bool
752 mpd_run_range_id(struct mpd_connection *connection, unsigned id,
753  float start, float end);
754 #ifdef __cplusplus
755 }
756 #endif
757 
758 #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)
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)
bool mpd_run_range_id(struct mpd_connection *connection, unsigned id, float start, float end)
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_range_id(struct mpd_connection *connection, unsigned id, float start, float end)
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)
bool mpd_recv_queue_change_brief(struct mpd_connection *connection, unsigned *position_r, unsigned *id_r)
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
struct mpd_song * mpd_run_get_queue_song_id(struct mpd_connection *connection, unsigned id)
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)
struct mpd_song * mpd_run_get_queue_song_pos(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)