libmpdclient  2.7
Functions
mpd/queue.h File Reference

MPD client library. More...

Go to the source code of this file.

Functions

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_send_get_queue_song_pos (struct mpd_connection *connection, unsigned pos)
mpd_malloc struct mpd_songmpd_run_get_queue_song_pos (struct mpd_connection *connection, unsigned pos)
bool mpd_send_get_queue_song_id (struct mpd_connection *connection, unsigned id)
mpd_malloc struct mpd_songmpd_run_get_queue_song_id (struct mpd_connection *connection, unsigned id)
bool mpd_send_queue_changes_meta (struct mpd_connection *connection, unsigned version)
bool mpd_send_queue_changes_brief (struct mpd_connection *connection, unsigned version)
bool mpd_recv_queue_change_brief (struct mpd_connection *connection, unsigned *position_r, unsigned *id_r)
bool mpd_send_add (struct mpd_connection *connection, const char *file)
bool mpd_run_add (struct mpd_connection *connection, const char *uri)
bool mpd_send_add_id (struct mpd_connection *connection, const char *file)
bool mpd_send_add_id_to (struct mpd_connection *connection, const char *uri, unsigned to)
int mpd_recv_song_id (struct mpd_connection *connection)
int mpd_run_add_id (struct mpd_connection *connection, const char *file)
int mpd_run_add_id_to (struct mpd_connection *connection, const char *uri, unsigned to)
bool mpd_send_delete (struct mpd_connection *connection, unsigned pos)
bool mpd_run_delete (struct mpd_connection *connection, unsigned pos)
bool mpd_send_delete_range (struct mpd_connection *connection, unsigned start, unsigned end)
bool mpd_run_delete_range (struct mpd_connection *connection, unsigned start, unsigned end)
bool mpd_send_delete_id (struct mpd_connection *connection, unsigned id)
bool mpd_run_delete_id (struct mpd_connection *connection, unsigned id)
bool mpd_send_shuffle (struct mpd_connection *connection)
bool mpd_run_shuffle (struct mpd_connection *connection)
bool mpd_send_shuffle_range (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 (struct mpd_connection *connection)
bool mpd_run_clear (struct mpd_connection *connection)
bool mpd_send_move (struct mpd_connection *connection, unsigned from, unsigned to)
bool mpd_run_move (struct mpd_connection *connection, unsigned from, unsigned to)
bool mpd_send_move_id (struct mpd_connection *connection, unsigned from, unsigned to)
bool mpd_run_move_id (struct mpd_connection *connection, unsigned from, unsigned to)
bool mpd_send_move_range (struct mpd_connection *connection, unsigned start, unsigned end, unsigned to)
bool mpd_run_move_range (struct mpd_connection *connection, unsigned start, unsigned end, unsigned to)
bool mpd_send_swap (struct mpd_connection *connection, unsigned pos1, unsigned pos2)
bool mpd_run_swap (struct mpd_connection *connection, unsigned pos1, unsigned pos2)
bool mpd_send_swap_id (struct mpd_connection *connection, unsigned id1, unsigned id2)
bool mpd_run_swap_id (struct mpd_connection *connection, unsigned id1, unsigned id2)
bool mpd_send_prio (struct mpd_connection *connection, int priority, unsigned position)
bool mpd_run_prio (struct mpd_connection *connection, int priority, unsigned position)
bool mpd_send_prio_range (struct mpd_connection *connection, int priority, unsigned start, unsigned end)
bool mpd_run_prio_range (struct mpd_connection *connection, int priority, unsigned start, unsigned end)
bool mpd_send_prio_id (struct mpd_connection *connection, int priority, unsigned id)
bool mpd_run_prio_id (struct mpd_connection *connection, int priority, unsigned id)

Detailed Description

MPD client library.

Manipulate the queue (current playlist).

Do not include this header directly. Use mpd/client.h instead.

Definition in file queue.h.


Function Documentation

bool mpd_send_list_queue_meta ( struct mpd_connection connection)

Sends the "playlistinfo" command: list all songs in the queue including meta information.

bool mpd_send_list_queue_range_meta ( struct mpd_connection connection,
unsigned  start,
unsigned  end 
)

Like mpd_send_list_queue_meta(), but specifies a (position) range.

Parameters:
connectionthe connection to MPD
startthe start position of the range (including)
endthe end position of the range (excluding)
Returns:
true on success, false on error
bool mpd_send_get_queue_song_pos ( struct mpd_connection connection,
unsigned  pos 
)

Requests information (including tags) about one song in the playlist (command "playlistid").

Parameters:
connectionthe connection to MPD
posthe position of the requested song
mpd_malloc struct mpd_song* mpd_run_get_queue_song_pos ( struct mpd_connection connection,
unsigned  pos 
) [read]

Shortcut for mpd_send_get_queue_song_pos() and mpd_recv_song().

Parameters:
connectionthe connection to MPD
posthe position of the requested song
Returns:
the song at the specified position, or NULL on error
bool mpd_send_get_queue_song_id ( struct mpd_connection connection,
unsigned  id 
)

Requests information (including tags) about one song in the playlist (command "playlistid").

Parameters:
connectionthe connection to MPD
idthe id of the requested song
mpd_malloc struct mpd_song* mpd_run_get_queue_song_id ( struct mpd_connection connection,
unsigned  id 
) [read]

Shortcut for mpd_send_get_queue_song_id() and mpd_recv_song().

Parameters:
connectionthe connection to MPD
idthe id of the requested song
Returns:
the song at the specified id, or NULL on error
bool mpd_send_queue_changes_meta ( struct mpd_connection connection,
unsigned  version 
)

Request the queue changes from MPD since the specified version, including tags. The MPD command is called "plchanges".

Parameters:
connectionthe connection to MPD
versionThe playlist version you want the diff with.
Returns:
true on success, false on error
bool mpd_send_queue_changes_brief ( struct mpd_connection connection,
unsigned  version 
)

A more bandwidth efficient version of the mpd_send_queue_changes_meta(). It only returns the position and id of changed songs. The MPD command is called "plchangesposid".

Parameters:
connectionA valid and connected mpd_connection.
versionThe playlist version you want the diff with.
Returns:
true on success, false on error
bool mpd_recv_queue_change_brief ( struct mpd_connection connection,
unsigned *  position_r,
unsigned *  id_r 
)

Receives a response element of mpd_send_queue_changes_brief().

Parameters:
connectionA valid and connected mpd_connection.
position_rreference to the position of the changed song
id_rreference to the id of the changed song
Returns:
true on success, false on error or if there are no more changes in this response
bool mpd_send_add ( struct mpd_connection connection,
const char *  file 
)

Appends a song to the playlist.

bool mpd_run_add ( struct mpd_connection connection,
const char *  uri 
)

Shortcut for mpd_send_add() and mpd_response_finish().

Parameters:
connectionthe connection to MPD
urithe URI of the song to be added
Returns:
true on success, false on error
bool mpd_send_add_id ( struct mpd_connection connection,
const char *  file 
)

Appends a song to the playlist, and returns its id.

bool mpd_send_add_id_to ( struct mpd_connection connection,
const char *  uri,
unsigned  to 
)

Inserts a song into the playlist, and returns its id.

Parameters:
connectionthe connection to MPD
urithe URI of the song to be added
tothe desired position of the song
Returns:
true on success, false on error
int mpd_recv_song_id ( struct mpd_connection connection)

Returns the id of the new song in the playlist. To be called after mpd_send_add_id().

Returns:
the new song id, -1 on error or if MPD did not send an id
int mpd_run_add_id ( struct mpd_connection connection,
const char *  file 
)

Executes the "addid" command and reads the response.

Returns:
the new song id, -1 on error or if MPD did not send an id
int mpd_run_add_id_to ( struct mpd_connection connection,
const char *  uri,
unsigned  to 
)

Executes the "addid" command and reads the response.

Parameters:
connectionthe connection to MPD
urithe URI of the song to be added
tothe desired position of the song
Returns:
the new song id, -1 on error or if MPD did not send an id
bool mpd_send_delete ( struct mpd_connection connection,
unsigned  pos 
)

Deletes a song from the queue.

Parameters:
connectionthe connection to MPD
posthe position of the song to be deleted
bool mpd_run_delete ( struct mpd_connection connection,
unsigned  pos 
)

Shortcut for mpd_send_delete() and mpd_response_finish().

Parameters:
connectionthe connection to MPD
posthe position of the song to be deleted
Returns:
true on success, false on error
bool mpd_send_delete_range ( struct mpd_connection connection,
unsigned  start,
unsigned  end 
)

Deletes songs from the queue.

Parameters:
connectionthe connection to MPD
startthe start position of the range (including)
endthe end position of the range (excluding)
Returns:
true on success, false on error
bool mpd_run_delete_range ( struct mpd_connection connection,
unsigned  start,
unsigned  end 
)

Shortcut for mpd_send_delete_range() and mpd_response_finish().

Parameters:
connectionthe connection to MPD
startthe start position of the range (including)
endthe end position of the range (excluding)
Returns:
true on success, false on error
bool mpd_send_delete_id ( struct mpd_connection connection,
unsigned  id 
)

Deletes a song from the queue.

Parameters:
connectionthe connection to MPD
idthe id of the song to be deleted
bool mpd_run_delete_id ( struct mpd_connection connection,
unsigned  id 
)

Shortcut for mpd_send_delete_id() and mpd_response_finish().

Parameters:
connectionthe connection to MPD
idthe id of the song to be deleted
Returns:
true on success, false on error
bool mpd_send_shuffle ( struct mpd_connection connection)

Shuffles the queue.

Parameters:
connectionthe connection to MPD
bool mpd_run_shuffle ( struct mpd_connection connection)

Shortcut for mpd_send_shuffle() and mpd_response_finish().

Parameters:
connectionthe connection to MPD
bool mpd_send_shuffle_range ( struct mpd_connection connection,
unsigned  start,
unsigned  end 
)

Shuffles a range within the queue.

Parameters:
connectionthe connection to MPD
startthe start position of the range (including)
endthe end position of the range (excluding)
bool mpd_run_shuffle_range ( struct mpd_connection connection,
unsigned  start,
unsigned  end 
)

Shortcut for mpd_send_shuffle_range() and mpd_response_finish().

Parameters:
connectionthe connection to MPD
startthe start position of the range (including)
endthe end position of the range (excluding)
bool mpd_send_clear ( struct mpd_connection connection)

Clear the queue.

Parameters:
connectionthe connection to MPD
bool mpd_run_clear ( struct mpd_connection connection)

Shortcut for mpd_send_clear() and mpd_response_finish().

Parameters:
connectionthe connection to MPD
bool mpd_send_move ( struct mpd_connection connection,
unsigned  from,
unsigned  to 
)

Moves a song within the queue.

Parameters:
connectionthe connection to MPD
fromthe source song position
tothe new position of the song
bool mpd_run_move ( struct mpd_connection connection,
unsigned  from,
unsigned  to 
)

Shortcut for mpd_send_move() and mpd_response_finish().

Parameters:
connectionthe connection to MPD
fromthe source song position
tothe new position of the song
bool mpd_send_move_id ( struct mpd_connection connection,
unsigned  from,
unsigned  to 
)

Moves a song within the queue.

Parameters:
connectionthe connection to MPD
fromthe source song id
tothe new position of the song (not an id!)
bool mpd_run_move_id ( struct mpd_connection connection,
unsigned  from,
unsigned  to 
)

Shortcut for mpd_send_move_id() and mpd_response_finish().

Parameters:
connectionthe connection to MPD
fromthe source song id
tothe new position of the song (not an id!)
bool mpd_send_move_range ( struct mpd_connection connection,
unsigned  start,
unsigned  end,
unsigned  to 
)

Moves a range of songs within the queue.

Parameters:
connectionthe connection to MPD
startthe start position of the range (including)
endthe end position of the range (excluding)
tothe new position of the song range
Returns:
true on success, false on error
bool mpd_run_move_range ( struct mpd_connection connection,
unsigned  start,
unsigned  end,
unsigned  to 
)

Shortcut for mpd_send_move_id() and mpd_response_finish().

Parameters:
connectionthe connection to MPD
startthe start position of the range (including)
endthe end position of the range (excluding)
tothe new position of the song range
Returns:
true on success, false on error
bool mpd_send_swap ( struct mpd_connection connection,
unsigned  pos1,
unsigned  pos2 
)

Swap the position of two songs in the queue.

Parameters:
connectionthe connection to MPD
pos1the position of one song
pos2the position of the other song
bool mpd_run_swap ( struct mpd_connection connection,
unsigned  pos1,
unsigned  pos2 
)

Shortcut for mpd_send_swap() and mpd_response_finish().

Parameters:
connectionthe connection to MPD
pos1the position of one song
pos2the position of the other song
bool mpd_send_swap_id ( struct mpd_connection connection,
unsigned  id1,
unsigned  id2 
)

Swap the position of two songs in the queue.

Parameters:
connectionthe connection to MPD
id1the id of one song
id2the id of the other song
bool mpd_run_swap_id ( struct mpd_connection connection,
unsigned  id1,
unsigned  id2 
)

Shortcut for mpd_send_swap_id() and mpd_response_finish().

Parameters:
connectionthe connection to MPD
id1the id of one song
id2the id of the other song
bool mpd_send_prio ( struct mpd_connection connection,
int  priority,
unsigned  position 
)

Change the priority of the specified song.

Parameters:
connectionthe connection to MPD
prioritya number between 0 and 255
positionthe position of the song
bool mpd_run_prio ( struct mpd_connection connection,
int  priority,
unsigned  position 
)

Shortcut for mpd_send_prio() and mpd_response_finish().

Parameters:
connectionthe connection to MPD
prioritya number between 0 and 255
startthe start position of the range (including)
endthe end position of the range (excluding)
bool mpd_send_prio_range ( struct mpd_connection connection,
int  priority,
unsigned  start,
unsigned  end 
)

Change the priority of a song range.

Parameters:
connectionthe connection to MPD
prioritya number between 0 and 255
positionthe position of the song
bool mpd_run_prio_range ( struct mpd_connection connection,
int  priority,
unsigned  start,
unsigned  end 
)

Shortcut for mpd_send_prio_range() and mpd_response_finish().

Parameters:
connectionthe connection to MPD
prioritya number between 0 and 255
positionthe position of the song
bool mpd_send_prio_id ( struct mpd_connection connection,
int  priority,
unsigned  id 
)

Change the priority of the specified song.

Parameters:
connectionthe connection to MPD
prioritya number between 0 and 255
idthe id of the song
bool mpd_run_prio_id ( struct mpd_connection connection,
int  priority,
unsigned  id 
)

Shortcut for mpd_send_prio_id() and mpd_response_finish().

Parameters:
connectionthe connection to MPD
prioritya number between 0 and 255
idthe id of the song