libmpd 11.8.17
libmpd-database.h File Reference

Go to the source code of this file.

Typedefs

typedef mpd_SearchStats MpdDBStats
 A Structure containing numberOfSongs and playTime.
 

Functions

MpdDatampd_database_get_albums (MpdObj *mi, const char *artist)
 
MpdDatampd_database_get_artists (MpdObj *mi)
 
MpdDatampd_database_get_complete (MpdObj *mi)
 
int mpd_database_update_dir (MpdObj *mi, const char *path)
 
MpdDatampd_database_find (MpdObj *mi, int table, const char *string, int exact)
 
MpdDatampd_database_get_directory (MpdObj *mi, const char *path)
 
MpdDatampd_database_get_directory_recursive (MpdObj *mi, const char *path)
 
mpd_Songmpd_database_get_fileinfo (MpdObj *mi, const char *path)
 
void mpd_database_search_add_constraint (MpdObj *mi, mpd_TagItems field, const char *value)
 
void mpd_database_search_start (MpdObj *mi, int exact)
 
void mpd_database_search_field_start (MpdObj *mi, mpd_TagItems field)
 
MpdDatampd_database_search_commit (MpdObj *mi)
 
void mpd_database_search_stats_start (MpdObj *mi)
 
MpdDBStatsmpd_database_search_stats_commit (MpdObj *mi)
 
void mpd_database_search_free_stats (MpdDBStats *data)
 
int mpd_database_delete_playlist (MpdObj *mi, const char *path)
 
int mpd_database_save_playlist (MpdObj *mi, const char *name)
 
MpdDatampd_database_get_playlist_content (MpdObj *mi, const char *playlist)
 
void mpd_database_playlist_list_add (MpdObj *mi, const char *path, const char *file)
 
void mpd_database_playlist_list_delete (MpdObj *mi, const char *path, int pos)
 
void mpd_database_playlist_clear (MpdObj *mi, const char *path)
 
void mpd_database_playlist_rename (MpdObj *mi, const char *old_name, const char *new_name)
 
int mpd_database_playlist_move (MpdObj *mi, const char *playlist, int old_pos, int new_pos)
 
MpdDatampd_database_playlist_list (MpdObj *mi)
 

Typedef Documentation

◆ MpdDBStats

typedef mpd_SearchStat MpdDBStats

A Structure containing numberOfSongs and playTime.

see mpd_SearchStats

Definition at line 207 of file libmpd-database.h.

Function Documentation

◆ mpd_database_delete_playlist()

int mpd_database_delete_playlist ( MpdObj * mi,
const char * path )
Parameters
miA MpdObj
pathpath of the playlist

Deletes a playlist.

Returns
a MpdError

◆ mpd_database_find()

MpdData * mpd_database_find ( MpdObj * mi,
int table,
const char * string,
int exact )
Parameters
mia MpdObj
tabletable
stringstring to search for
exactif TRUE only return exact matches WARNING: This function is deprecated, use mpd_database_search_start
Returns
a MpdData list

◆ mpd_database_get_albums()

MpdData * mpd_database_get_albums ( MpdObj * mi,
const char * artist )
Parameters
miA MpdObj
artistan artist name

Grabs a list of albums of a certain artist from mpd. if artist is NULL it grabs all albums

Returns
A MpdData list.

◆ mpd_database_get_artists()

MpdData * mpd_database_get_artists ( MpdObj * mi)
Parameters
mia MpdObj

returns a list of all available artists.

Returns
a MpdData list

◆ mpd_database_get_complete()

MpdData * mpd_database_get_complete ( MpdObj * mi)
Parameters
mia MpdObj

Gets the complete database, only returns songs

Returns
a MpdData list with songs

◆ mpd_database_get_directory()

MpdData * mpd_database_get_directory ( MpdObj * mi,
const char * path )
Parameters
mia MpdObj
patha NULL terminated path string

Gets the contents of a directory, it can return songs, directories and playlists

Returns
a MpdData list with songs, directories and playlists

◆ mpd_database_get_directory_recursive()

MpdData * mpd_database_get_directory_recursive ( MpdObj * mi,
const char * path )
Parameters
mia MpdObj
patha string containing the path

Recursively list all the songs directory path

Returns
a MpdData

◆ mpd_database_get_fileinfo()

mpd_Song * mpd_database_get_fileinfo ( MpdObj * mi,
const char * path )
Parameters
miA MpdObj
pathan Path to a file

Grabs the song info for a single file. Make sure you pass a url to a song and not a directory, that might result in strange behaviour.

Returns
a mpd_Song

◆ mpd_database_get_playlist_content()

MpdData * mpd_database_get_playlist_content ( MpdObj * mi,
const char * playlist )
Parameters
mia MpdObj
playlistthe playlist you need the content of.

Needs mpd 0.12.0 or higher.

Returns
a MpdData list

◆ mpd_database_playlist_clear()

void mpd_database_playlist_clear ( MpdObj * mi,
const char * path )
Parameters
mia MpdObj
patha string containing the path of the playlist

Clears the content of a stored playlist, also used to create an empty playlist Needs mpd 0.13.0

◆ mpd_database_playlist_list()

MpdData * mpd_database_playlist_list ( MpdObj * mi)

◆ mpd_database_playlist_list_add()

void mpd_database_playlist_list_add ( MpdObj * mi,
const char * path,
const char * file )
Parameters
mia MpdObj
patha string contains the path of the playlist
filea string contains the path of the song to add

Add a path to a stored playlist. Needs 0.13.0

◆ mpd_database_playlist_list_delete()

void mpd_database_playlist_list_delete ( MpdObj * mi,
const char * path,
int pos )
Parameters
mia MpdObj
patha string containing the path of the playlist
posan int representing the position of a song

Deletes the song at position pos from a playlist. Needs mpd 0.13.0

◆ mpd_database_playlist_move()

int mpd_database_playlist_move ( MpdObj * mi,
const char * playlist,
int old_pos,
int new_pos )
Parameters
mia MpdObj
playlista string containing the path of the playlist
old_posan integer representing old position
new_posan integer representing the position to move old_pos to.

Moves songs in a stored playlist Needs mpd 0.13.0

◆ mpd_database_playlist_rename()

void mpd_database_playlist_rename ( MpdObj * mi,
const char * old_name,
const char * new_name )
Parameters
mia MpdObj
olda string, old playlist name
newa string, new playlist name

Renames a stored playlist Needs mpd 0.13.0

◆ mpd_database_save_playlist()

int mpd_database_save_playlist ( MpdObj * mi,
const char * name )
Parameters
mia MpdObj
nameThe name of the playlist

Saves the current playlist to a file.

Returns
a MpdError. MPD_OK if successful, MPD_DATABASE_PLAYLIST_EXIST when the playlist already exists.

◆ mpd_database_search_add_constraint()

void mpd_database_search_add_constraint ( MpdObj * mi,
mpd_TagItems field,
const char * value )
Parameters
miA MpdObj
fieldA mpd_TagItems
valuea string that field needs to match

Adds a constraint to the search

◆ mpd_database_search_commit()

MpdData * mpd_database_search_commit ( MpdObj * mi)
Parameters
miA MpdObj

Commits the search and gathers the result in a MpdData list.

Returns
a MpdData list with the search result, or NULL when nothing is found

◆ mpd_database_search_field_start()

void mpd_database_search_field_start ( MpdObj * mi,
mpd_TagItems field )
Parameters
mia MpdObj
fielda mpd_TagItems

Starts a field search, eg. if you want a list of all albums, you do;

void mpd_database_search_field_start(MpdObj *mi, mpd_TagItems field)
MpdData * mpd_database_search_commit(MpdObj *mi)
@ MPD_TAG_ITEM_ALBUM

You can add constraints using mpd_database_search_add_constraint, for example if you want all albums by eric clapton:

void mpd_database_search_add_constraint(MpdObj *mi, mpd_TagItems field, const char *value)
@ MPD_TAG_ITEM_ARTIST

◆ mpd_database_search_free_stats()

void mpd_database_search_free_stats ( MpdDBStats * data)
Parameters
dataa MpdDBStats

frees the MpdDBStats structure.

◆ mpd_database_search_start()

void mpd_database_search_start ( MpdObj * mi,
int exact )
Parameters
miA MpdObj
exacta boolean indicating if the search is fuzzy or exact

Starts a search, you can add "constraints" by calling mpd_database_search_add_constraint For Example if you want all songs by Eric Clapton you could do:

void mpd_database_search_start(MpdObj *mi, int exact)
#define TRUE
Definition libmpd.h:44

If you only want the songs from the album unplugged:

This function requires mpd 0.12.0 or higher

◆ mpd_database_search_stats_commit()

MpdDBStats * mpd_database_search_stats_commit ( MpdObj * mi)
Parameters
miA MpdObj

Gets statistics results of a search.

Returns
a MpdDBStats

◆ mpd_database_search_stats_start()

void mpd_database_search_stats_start ( MpdObj * mi)
Parameters
miA MpdObj

Starts a search, you can add constraints by calling mpd_database_search_add_constraint. To get the result call mpd_database_search_stats_commit

This function requires mpd 0.13.0 or higher

◆ mpd_database_update_dir()

int mpd_database_update_dir ( MpdObj * mi,
const char * path )
Parameters
miA MpdObj
pathThe path mpd should update.

Force mpd to update (parts of) the database.

Returns
a MpdError

Copyright 2006 Qball Cow