database.h File Reference

Database. More...

Go to the source code of this file.

## Functions

bool | mpd_send_list_all (struct mpd_connection *connection, const char *path)
bool | mpd_send_list_all_meta (struct mpd_connection *connection, const char *path)
bool | mpd_send_list_meta (struct mpd_connection *connection, const char *path)
bool | mpd_send_read_comments (struct mpd_connection *connection, const char *path)
bool | mpd_send_update (struct mpd_connection *connection, const char *path)
bool | mpd_send_rescan (struct mpd_connection *connection, const char *path)
unsigned | mpd_recv_update_id (struct mpd_connection *connection)
unsigned | mpd_run_update (struct mpd_connection *connection, const char *path)
unsigned | mpd_run_rescan (struct mpd_connection *connection, const char *path)

## Detailed Description

Database.

This file declares functions which query or update MPD's music database.

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

Definition in file database.h.

## Function Documentation

bool mpd_send_list_all | ( | struct mpd_connection * | connection,
|  | const char * | path
| ) |  |

Get a recursive list of all directories, songs and playlist from MPD. They are returned without metadata. This is a rather expensive operation, because the response may be large.

Parameters

  connection | the connection to MPD
  path | an optional base path for the query

Returns
  true on success, false on error

bool mpd_send_list_all_meta | ( | struct mpd_connection * | connection,
|  | const char * | path
| ) |  |

Like mpd_send_list_all(), but return metadata. This operation is even more expensive, because the response is larger. If it is larger than a configurable server-side limit, MPD may disconnect you.

To read the response, you may use mpd_recv_entity().

Parameters

  connection | the connection to MPD
  path | an optional base path for the query

Returns
  true on success, false on error

bool mpd_send_list_meta | ( | struct mpd_connection * | connection,
|  | const char * | path
| ) |  |

Get a list of all directories, songs and playlist in a directory from MPD, including metadata.

To read the response, you may use mpd_recv_entity().

Parameters

  connection | the connection to MPD
  path | the directory to be listed

Returns
  true on success, false on error

bool mpd_send_read_comments | ( | struct mpd_connection * | connection,
|  | const char * | path
| ) |  |

Send "readcomments". Read the "comments" of a song file. This returns key/value pairs which can be read using mpd_recv_pair().

Parameters

  connection | the connection to MPD
  path | the relative path of the song file within the music directory or an arbitrary file path starting with file:///

Returns
  true on success, false on error

bool mpd_send_update | ( | struct mpd_connection * | connection,
|  | const char * | path
| ) |  |

Instructs MPD to update the music database: find new files, remove deleted files, update modified files.

Parameters

  connection | the connection to MPD
  path | optional path to update; if NULL, then all of the music directory is updated

Returns
  true on success, false on error

bool mpd_send_rescan | ( | struct mpd_connection * | connection,
|  | const char * | path
| ) |  |

Like mpd_send_update(), but also rescans unmodified files.

Parameters

  connection | the connection to MPD
  path | optional path to update; if NULL, then all of the music directory is updated

Returns
  true on success, false on error

unsigned mpd_recv_update_id | ( | struct mpd_connection * | connection | ) |

Receives the id the of the update job which was submitted by mpd_send_update().

Parameters

  connection | the connection to MPD

Returns
  a positive job id on success, 0 on error

unsigned mpd_run_update | ( | struct mpd_connection * | connection,
|  | const char * | path
| ) |  |

Shortcut for mpd_send_update() and mpd_recv_update_id().

Parameters

  connection | the connection to MPD
  path | optional path to update; if NULL, then all of the music directory is updated

Returns
  a positive job id on success, 0 on error

unsigned mpd_run_rescan | ( | struct mpd_connection * | connection,
|  | const char * | path
| ) |  |

Like mpd_run_update(), but also rescans unmodified files.

Parameters

  connection | the connection to MPD
  path | optional path to update; if NULL, then all of the music directory is updated

Returns
  a positive job id on success, 0 on error