debug_printf.h   debug_printf.h 
/* libmpd (high level libmpdclient library)
* Copyright (C) 2004-2009 Qball Cow <qball@sarine.nl>
* Project homepage: http://gmpcwiki.sarine.nl/
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
#ifndef __DEBUG_PRINTF_H__ #ifndef __DEBUG_PRINTF_H__
#define __DEBUG_PRINTF_H__ #define __DEBUG_PRINTF_H__
/**\defgroup 100debug Debug /**\defgroup 100debug Debug
*/ */
/*@{*/ /*@{*/
/** /**
*/ */
typedef enum _DebugLevel { typedef enum _DebugLevel {
 End of changes. 1 change blocks. 
0 lines changed or deleted 19 lines changed or added


 libmpd-database.h   libmpd-database.h 
/* /* libmpd (high level libmpdclient library)
* Copyright (C) 2004-2005 Qball Cow <Qball@qballcow.nl> * Copyright (C) 2004-2009 Qball Cow <qball@sarine.nl>
* * Project homepage: http://gmpcwiki.sarine.nl/
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * This program is free software; you can redistribute it and/or modify
* published by the Free Software Foundation; either version 2 of the * it under the terms of the GNU General Public License as published by
* License, or (at your option) any later version. * the Free Software Foundation; either version 2 of the License, or
* * (at your option) any later version.
* This program is distributed in the hope that it will be useful, * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* General Public License for more details. * GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public * You should have received a copy of the GNU General Public License along
* License along with this program; if not, write to the * with this program; if not, write to the Free Software Foundation, Inc.,
* Free Software Foundation, Inc., 59 Temple Place - Suite 330, * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
* Boston, MA 02111-1307, USA. */
*/
#ifndef __MPD_LIB_DATABASE__ #ifndef __MPD_LIB_DATABASE__
#define __MPD_LIB_DATABASE__ #define __MPD_LIB_DATABASE__
/** \defgroup database Database /** \defgroup database Database
*/ */
/*@{*/ /*@{*/
/** /**
* @param mi A #MpdObj * @param mi A #MpdObj
* @param artist an artist name * @param artist an artist name
* *
* Grabs a list of albums of a certain artist from mpd. * Grabs a list of albums of a certain artist from mpd.
* if artist is %NULL it grabs all albums * if artist is %NULL it grabs all albums
* *
* @returns A #MpdData list. * @returns A #MpdData list.
*/ */
MpdData * mpd_database_get_albums (MpdObj *mi, char *artist); MpdData * mpd_database_get_albums (MpdObj *mi,const char *arti st);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* *
* returns a list of all available artists. * returns a list of all available artists.
* *
* @returns a #MpdData list * @returns a #MpdData list
*/ */
MpdData * mpd_database_get_artists (MpdObj *mi); MpdData * mpd_database_get_artists (MpdObj *mi);
skipping to change at line 65 skipping to change at line 65
MpdData * mpd_database_get_complete(MpdObj *mi); MpdData * mpd_database_get_complete(MpdObj *mi);
/** /**
*@param mi A #MpdObj *@param mi A #MpdObj
*@param path The path mpd should update. *@param path The path mpd should update.
* *
* Force mpd to update (parts of) the database. * Force mpd to update (parts of) the database.
* *
* @returns a #MpdError * @returns a #MpdError
*/ */
int mpd_database_update_dir (MpdObj *mi, char *path); int mpd_database_update_dir (MpdObj *mi,const char *path);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param table table * @param table table
* @param string string to search for * @param string string to search for
* @param exact if #TRUE only return exact matches * @param exact if #TRUE only return exact matches
* WARNING: This function is deprecated, use mpd_database_search_start * WARNING: This function is deprecated, use mpd_database_search_start
* @returns a #MpdData list * @returns a #MpdData list
*/ */
MpdData * mpd_database_find(MpdObj *mi, int table, char *string, int exact) ; MpdData * mpd_database_find(MpdObj *mi, int table,const char *string, int e xact);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param path a NULL terminated path string * @param path a NULL terminated path string
* *
* Gets the contents of a directory, it can return songs, directories and p laylists * Gets the contents of a directory, it can return songs, directories and p laylists
* *
* @returns a #MpdData list with songs, directories and playlists * @returns a #MpdData list with songs, directories and playlists
*/ */
MpdData * mpd_database_get_directory(MpdObj *mi,char *path); MpdData * mpd_database_get_directory(MpdObj *mi,const char *path);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param path a string containing the path * @param path a string containing the path
* *
* Recursively list all the songs directory path * Recursively list all the songs directory path
* *
* returns a #MpdData * @returns a #MpdData
*/ */
MpdData * mpd_database_get_directory_recursive(MpdObj *mi, const char *path ); MpdData * mpd_database_get_directory_recursive(MpdObj *mi, const char *path );
/** /**
* @param mi A #MpdObj * @param mi A #MpdObj
* @param path an Path to a file * @param path an Path to a file
* *
* Grabs the song info for a single file. Make sure you pass a url to a son g * Grabs the song info for a single file. Make sure you pass a url to a son g
* and not a directory, that might result in strange behaviour. * and not a directory, that might result in strange behaviour.
* *
skipping to change at line 216 skipping to change at line 216
* This function requires mpd 0.13.0 or higher * This function requires mpd 0.13.0 or higher
*/ */
void mpd_database_search_stats_start(MpdObj *mi); void mpd_database_search_stats_start(MpdObj *mi);
/** /**
* @param mi A #MpdObj * @param mi A #MpdObj
* *
* Gets statistics results of a search. * Gets statistics results of a search.
* *
* return a #MpdDBStats * @returns a #MpdDBStats
*/ */
MpdDBStats * mpd_database_search_stats_commit(MpdObj *mi); MpdDBStats * mpd_database_search_stats_commit(MpdObj *mi);
/** /**
* @param data a #MpdDBStats * @param data a #MpdDBStats
* *
* frees the #MpdDBStats structure. * frees the #MpdDBStats structure.
*/ */
void mpd_database_search_free_stats(MpdDBStats *data); void mpd_database_search_free_stats(MpdDBStats *data);
skipping to change at line 239 skipping to change at line 239
/** \defgroup databasePlaylist Database Playlist /** \defgroup databasePlaylist Database Playlist
* \ingroup database * \ingroup database
*/ */
/*@{*/ /*@{*/
/** /**
* @param mi A #MpdObj * @param mi A #MpdObj
* @param path path of the playlist * @param path path of the playlist
* *
* Deletes a playlist. * Deletes a playlist.
* @returns * @returns a #MpdError
*/ */
int mpd_database_delete_playlist(MpdObj *mi,char *path); int mpd_database_delete_playlist(MpdObj *mi,const char *path);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param name The name of the playlist * @param name The name of the playlist
* *
* Saves the current playlist to a file. * Saves the current playlist to a file.
* *
* @returns a #MpdError. #MPD_OK if successful, * @returns a #MpdError. #MPD_OK if successful,
* #MPD_DATABASE_PLAYLIST_EXIST when the playlist already exists. * #MPD_DATABASE_PLAYLIST_EXIST when the playlist already exists.
*/ */
int mpd_database_save_playlist (MpdObj *mi, char *name); int mpd_database_save_playlist (MpdObj *mi, const char *name);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param playlist the playlist you need the content of. * @param playlist the playlist you need the content of.
* *
* Needs mpd 0.12.0 or higher. * Needs mpd 0.12.0 or higher.
* *
* @returns a #MpdData list * @returns a #MpdData list
*/ */
MpdData *mpd_database_get_playlist_content(MpdObj *mi,char *playlist); MpdData *mpd_database_get_playlist_content(MpdObj *mi,const char *playlist) ;
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param path a string contains the path of the playlist * @param path a string contains the path of the playlist
* @param file a string contains the path of the song to add * @param file a string contains the path of the song to add
* *
* Add a path to a stored playlist. * Add a path to a stored playlist.
* Needs 0.13.0 * Needs 0.13.0
*/ */
void mpd_database_playlist_list_add(MpdObj *mi, const char *path, const cha r *file); void mpd_database_playlist_list_add(MpdObj *mi, const char *path, const cha r *file);
 End of changes. 12 change blocks. 
26 lines changed or deleted 26 lines changed or added


 libmpd-internal.h   libmpd-internal.h 
/* libmpd (high level libmpdclient library)
* Copyright (C) 2004-2009 Qball Cow <qball@sarine.nl>
* Project homepage: http://gmpcwiki.sarine.nl/
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
#ifndef __MPD_INTERNAL_LIB_ #ifndef __MPD_INTERNAL_LIB_
#define __MPD_INTERNAL_LIB_ #define __MPD_INTERNAL_LIB_
#include "libmpdclient.h" #include "libmpdclient.h"
struct _MpdData_real; struct _MpdData_real;
typedef struct _MpdData_real { typedef struct _MpdData_real {
/* MpdDataType */ /* MpdDataType */
MpdDataType type; MpdDataType type;
skipping to change at line 123 skipping to change at line 142
int search_type; int search_type;
int search_field; int search_field;
/** /**
* For tracking changed outputs. * For tracking changed outputs.
* A hack for retarted mpd * A hack for retarted mpd
*/ */
int num_outputs; int num_outputs;
int *output_states; int *output_states;
/**
* For testing supported tags
*/
int supported_tags[MPD_TAG_NUM_OF_ITEM_TYPES];
int has_idle; int has_idle;
}_MpdObj; }_MpdObj;
typedef enum MpdQueueType { typedef enum MpdQueueType {
MPD_QUEUE_ADD, MPD_QUEUE_ADD,
MPD_QUEUE_LOAD, MPD_QUEUE_LOAD,
MPD_QUEUE_DELETE_ID, MPD_QUEUE_DELETE_ID,
MPD_QUEUE_DELETE_POS, MPD_QUEUE_DELETE_POS,
MPD_QUEUE_COMMAND /* abuse!!! */ MPD_QUEUE_COMMAND /* abuse!!! */
} MpdQueueType; } MpdQueueType;
 End of changes. 2 change blocks. 
0 lines changed or deleted 24 lines changed or added


 libmpd-player.h   libmpd-player.h 
/* /* libmpd (high level libmpdclient library)
* Copyright (C) 2004-2005 Qball Cow <Qball@qballcow.nl> * Copyright (C) 2004-2009 Qball Cow <qball@sarine.nl>
* * Project homepage: http://gmpcwiki.sarine.nl/
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * This program is free software; you can redistribute it and/or modify
* published by the Free Software Foundation; either version 2 of the * it under the terms of the GNU General Public License as published by
* License, or (at your option) any later version. * the Free Software Foundation; either version 2 of the License, or
* * (at your option) any later version.
* This program is distributed in the hope that it will be useful, * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* General Public License for more details. * GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public * You should have received a copy of the GNU General Public License along
* License along with this program; if not, write to the * with this program; if not, write to the Free Software Foundation, Inc.,
* Free Software Foundation, Inc., 59 Temple Place - Suite 330, * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
* Boston, MA 02111-1307, USA. */
*/
/** /**
* @defgroup Player Player * @defgroup Player Player
* These functions allow the client to control the player part of mpd. * These functions allow the client to control the player part of mpd.
* To use the read functions you need "read" permission on mpd. * To use the read functions you need "read" permission on mpd.
* To use the control functions you need "control" and "read" permission on mpd. * To use the control functions you need "control" and "read" permission on mpd.
*/ */
/* @{*/ /* @{*/
#ifndef __MPD_LIB_PLAYER__ #ifndef __MPD_LIB_PLAYER__
#define __MPD_LIB_PLAYER__ #define __MPD_LIB_PLAYER__
skipping to change at line 148 skipping to change at line 148
* @returns the state of repeat * @returns the state of repeat
*/ */
int mpd_player_get_repeat(MpdObj * mi); int mpd_player_get_repeat(MpdObj * mi);
/** /**
* \param mi a #MpdObj * \param mi a #MpdObj
* \param repeat New state of repeat (1 is enabled, 0 is disabled) * \param repeat New state of repeat (1 is enabled, 0 is disabled)
* *
* Enable/disabled repeat * Enable/disabled repeat
* *
* @returns 0 when succesfull * @returns 0 when successful
*/ */
int mpd_player_set_repeat(MpdObj * mi, int repeat); int mpd_player_set_repeat(MpdObj * mi, int repeat);
/** /**
* \param mi a #MpdObj * \param mi a #MpdObj
* *
* Get the state of random: 1 if enabled, 0 when disabled. * Get the state of random: 1 if enabled, 0 when disabled.
* *
* @returns the state of random * @returns the state of random
*/ */
int mpd_player_get_random(MpdObj * mi); int mpd_player_get_random(MpdObj * mi);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param random New state of random (1 is enabled, 0 is disabled) * @param random New state of random (1 is enabled, 0 is disabled)
* *
* Enable/disabled random * Enable/disable random
* *
* @returns 0 when succesfull * @returns 0 when successful
*/ */
int mpd_player_set_random(MpdObj * mi, int random); int mpd_player_set_random(MpdObj * mi, int random);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param sec Position to seek to. (in seconds) * @param sec Position to seek to. (in seconds)
* *
* Seek through the current song. * Seek through the current song.
* @returns a #MpdError * @returns a #MpdError
*/ */
 End of changes. 5 change blocks. 
19 lines changed or deleted 19 lines changed or added


 libmpd-playlist.h   libmpd-playlist.h 
/* /* libmpd (high level libmpdclient library)
* Copyright (C) 2004-2005 Qball Cow <Qball@qballcow.nl> * Copyright (C) 2004-2009 Qball Cow <qball@sarine.nl>
* * Project homepage: http://gmpcwiki.sarine.nl/
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * This program is free software; you can redistribute it and/or modify
* published by the Free Software Foundation; either version 2 of the * it under the terms of the GNU General Public License as published by
* License, or (at your option) any later version. * the Free Software Foundation; either version 2 of the License, or
* * (at your option) any later version.
* This program is distributed in the hope that it will be useful, * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* General Public License for more details. * GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public * You should have received a copy of the GNU General Public License along
* License along with this program; if not, write to the * with this program; if not, write to the Free Software Foundation, Inc.,
* Free Software Foundation, Inc., 59 Temple Place - Suite 330, * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
* Boston, MA 02111-1307, USA. */
*/
#ifndef __MPD_LIB_PLAYLIST__ #ifndef __MPD_LIB_PLAYLIST__
#define __MPD_LIB_PLAYLIST__ #define __MPD_LIB_PLAYLIST__
/** /**
* \defgroup Playlist Playlist * \defgroup Playlist Playlist
*/ */
/*@{*/ /*@{*/
/** /**
skipping to change at line 70 skipping to change at line 70
* *
* returns the mpd_Song for playlist entry with songpos. * returns the mpd_Song for playlist entry with songpos.
* *
* @returns a mpd_Song * @returns a mpd_Song
*/ */
mpd_Song * mpd_playlist_get_song_from_pos(MpdObj *mi, int songpos); mpd_Song * mpd_playlist_get_song_from_pos(MpdObj *mi, int songpos);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param start a Songpos
* @param stop a Songpos
*
* returns the MpdData list with song from the playlist from pos start unti
l stop.
* so start = 0, stop = 5 will return song 0,1,2,3,4,5.
*
* @returns a MdpData
*/
MpdData * mpd_playlist_get_song_from_pos_range(MpdObj *mi, int start, int s
top);
/**
* @param mi a #MpdObj
* *
* returns the mpd_Song for the currently playing song * returns the mpd_Song for the currently playing song
* *
* @returns a mpd_Song, this is an internally cached version, and should no t be freed. It's also not guaranteed to stay valid (it will be inside the s ame function if no other mpd_* function gets called.) * @returns a mpd_Song, this is an internally cached version, and should no t be freed. It's also not guaranteed to stay valid (it will be inside the s ame function if no other mpd_* function gets called.)
* if you need to keep it around, make a copy. * if you need to keep it around, make a copy.
*/ */
mpd_Song * mpd_playlist_get_current_song (MpdObj *mi); mpd_Song * mpd_playlist_get_current_song (MpdObj *mi);
/** /**
* mpd_playlist_clear * mpd_playlist_clear
* @param mi a #MpdObj * @param mi a #MpdObj
* *
* Clears the playlist * Clears the playlist
* *
* @returns * @returns 0 on success or #MpdError on error.
*/ */
int mpd_playlist_clear (MpdObj *mi); int mpd_playlist_clear (MpdObj *mi);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* *
* Shuffles the order of the playlist, this is different than playing rando m * Shuffles the order of the playlist, this is different than playing rando m
* *
* @returns * @returns 0 on success or #MpdError on error.
*/ */
int mpd_playlist_shuffle (MpdObj *mi); int mpd_playlist_shuffle (MpdObj *mi);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param old_pos The current position in the playlist * @param old_pos The current position in the playlist
* @param new_pos The new position in the playlist. * @param new_pos The new position in the playlist.
* *
* Moves a song in the playlist. This uses the position of the song, not th e id * Moves a song in the playlist. This uses the position of the song, not th e id
* @returns a #MpdError * @returns a #MpdError
skipping to change at line 153 skipping to change at line 165
int mpd_playlist_get_playlist_length (MpdObj *mi); int mpd_playlist_get_playlist_length (MpdObj *mi);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param path the path of the song to be added. * @param path the path of the song to be added.
* *
* Adds a song to the playlist, use #mpd_playlist_queue_add to add multiple songs. * Adds a song to the playlist, use #mpd_playlist_queue_add to add multiple songs.
* *
* @returns a #MpdError * @returns a #MpdError
*/ */
int mpd_playlist_add (MpdObj *mi, char *p ath); int mpd_playlist_add (MpdObj *mi,const ch ar *path);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param songid a song id. * @param songid a song id.
* *
* Deletes a single song by it's id. * Deletes a single song by it's id.
* *
* @returns a #MpdError * @returns a #MpdError
*/ */
int mpd_playlist_delete_id(MpdObj *mi, int songid); int mpd_playlist_delete_id(MpdObj *mi, int songid);
skipping to change at line 186 skipping to change at line 198
* @param mi a #MpdObj * @param mi a #MpdObj
* @param path a path to a song * @param path a path to a song
* *
* Add a single path and return the id * Add a single path and return the id
* Only use this to add a single song, if you need to add multiple songs, * Only use this to add a single song, if you need to add multiple songs,
* use the #mpd_playlist_queue_add for improved performance * use the #mpd_playlist_queue_add for improved performance
* *
* @returns a #MpdError or the songid of the added song * @returns a #MpdError or the songid of the added song
*/ */
int mpd_playlist_add_get_id(MpdObj *mi, char *path); int mpd_playlist_add_get_id(MpdObj *mi,const char *path);
/*@}*/ /*@}*/
/** \defgroup comqueue Command Queue /** \defgroup comqueue Command Queue
* \ingroup Playlist * \ingroup Playlist
* These functions allow you to queue commands, and send them * These functions allow you to queue commands, and send them
* in one command list to mpd. This is very efficient. * in one command list to mpd. This is very efficient.
* It's advised to use these for large deletions and additions. * It's advised to use these for large deletions and additions.
* These functions don't cause an extra overhead compared to the non_queue functions. * These functions don't cause an extra overhead compared to the non_queue functions.
* Because the non_queue functions just wrap the following. * Because the non_queue functions just wrap the following.
skipping to change at line 208 skipping to change at line 220
/*@{*/ /*@{*/
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param path The path to a song to add * @param path The path to a song to add
* *
* This queues an add command. The actual add isn't done until #mpd_playlis t_queue_commit is called * This queues an add command. The actual add isn't done until #mpd_playlis t_queue_commit is called
* *
* @returns a #MpdError * @returns a #MpdError
*/ */
int mpd_playlist_queue_add (MpdObj *mi,char *path); int mpd_playlist_queue_add (MpdObj *mi,const char *path);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param path The path to a playlist to load * @param path The path to a playlist to load
* *
* This queues a load command. The actual load isn't done until #mpd_playli st_queue_commit is called * This queues a load command. The actual load isn't done until #mpd_playli st_queue_commit is called
* *
* @returns a #MpdError * @returns a #MpdError
*/ */
int mpd_playlist_queue_load (MpdObj *mi,char *path); int mpd_playlist_queue_load (MpdObj *mi,const char *path);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param id The songid of the song you want to delete * @param id The songid of the song you want to delete
* *
* This queues a delete song from playlist command. The actually delete isn 't done until #mpd_playlist_queue_commit is called * This queues a delete song from playlist command. The actually delete isn 't done until #mpd_playlist_queue_commit is called
* @returns a #MpdError * @returns a #MpdError
*/ */
int mpd_playlist_queue_delete_id (MpdObj *mi,int id); int mpd_playlist_queue_delete_id (MpdObj *mi,int id);
 End of changes. 9 change blocks. 
22 lines changed or deleted 36 lines changed or added


 libmpd-status.h   libmpd-status.h 
/* /* libmpd (high level libmpdclient library)
* Copyright (C) 2004-2005 Qball Cow <Qball@qballcow.nl> * Copyright (C) 2004-2009 Qball Cow <qball@sarine.nl>
* * Project homepage: http://gmpcwiki.sarine.nl/
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * This program is free software; you can redistribute it and/or modify
* published by the Free Software Foundation; either version 2 of the * it under the terms of the GNU General Public License as published by
* License, or (at your option) any later version. * the Free Software Foundation; either version 2 of the License, or
* * (at your option) any later version.
* This program is distributed in the hope that it will be useful, * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* General Public License for more details. * GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public * You should have received a copy of the GNU General Public License along
* License along with this program; if not, write to the * with this program; if not, write to the Free Software Foundation, Inc.,
* Free Software Foundation, Inc., 59 Temple Place - Suite 330, * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
* Boston, MA 02111-1307, USA. */
*/
#ifndef __MPD_LIB_STATUS__ #ifndef __MPD_LIB_STATUS__
#define __MPD_LIB_STATUS__ #define __MPD_LIB_STATUS__
/**\defgroup 20status Status /**\defgroup 20status Status
* Functions to get and modify the status/state of mpd. * Functions to get and modify the status/state of mpd.
*/ */
/*@{*/ /*@{*/
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
skipping to change at line 58 skipping to change at line 58
* *
* Updates the status field from mpd. * Updates the status field from mpd.
* Call this function every 0.x seconds from the program's main-loop to rec eive signals when mpd's status has changed. * Call this function every 0.x seconds from the program's main-loop to rec eive signals when mpd's status has changed.
* *
* @returns 0 when succesfull * @returns 0 when succesfull
*/ */
int mpd_status_update (MpdObj *mi); int mpd_status_update (MpdObj *mi);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param fvol an float between 0.0 and 1.0 * @param fvol a float between 0.0 and 1.0
* *
* Set the output volume * Set the output volume
* @returns the new volume or a value below 0 when failed. * @returns the new volume or a value below 0 when failed.
*/ */
float mpd_status_set_volume_as_float (MpdObj *mi, float f vol); float mpd_status_set_volume_as_float (MpdObj *mi, float f vol);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param volume a value between 0 and 100. * @param volume a value between 0 and 100.
* *
skipping to change at line 218 skipping to change at line 218
* *
* Gets the total number of albums in the database * Gets the total number of albums in the database
* *
* @returns The number of albums in the database * @returns The number of albums in the database
*/ */
int mpd_stats_get_total_albums (MpdObj *mi); int mpd_stats_get_total_albums (MpdObj *mi);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* *
* Gets the time mpd is running * Gets the time since mpd has been running
* *
* @returns time that mpd is running in seconds * @returns time since mpd has been running in seconds
*/ */
int mpd_stats_get_uptime (MpdObj *mi); int mpd_stats_get_uptime (MpdObj *mi);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* *
* Gets the total time of the database * Gets the total time of the database
* *
* @returns the total time of the database * @returns the total time of the database
*/ */
int mpd_stats_get_db_playtime (MpdObj *mi); int mpd_stats_get_db_playtime (MpdObj *mi);
 End of changes. 5 change blocks. 
19 lines changed or deleted 19 lines changed or added


 libmpd-strfsong.h   libmpd-strfsong.h 
/* libmpd (high level libmpdclient library)
* Copyright (C) 2004-2009 Qball Cow <qball@sarine.nl>
* Project homepage: http://gmpcwiki.sarine.nl/
* Based on mpc's songToFormatedString modified for glib and ncmpc
* (c) 2003-2004 by normalperson and Warren Dukes (shank@mercury.chem.pitt.
edu)
* and Daniel Brown (danb@cs.utexas.edu)
* and Kalle Wallin (kaw@linux.se)
* and Qball Cow (Qball@qballcow.nl)
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
#ifndef __STRFSONG_H__ #ifndef __STRFSONG_H__
#define __STRFSONG_H__ #define __STRFSONG_H__
#include "libmpd.h" #include "libmpd.h"
/** /**
* \ingroup Misc * \ingroup Misc
* @param s A buffer to write the string in * @param s A buffer to write the string in
* @param max The max length of the buffer * @param max The max length of the buffer
* @param format The markup string * @param format The markup string
* @param song A mpd_Song * @param song A mpd_Song
 End of changes. 1 change blocks. 
0 lines changed or deleted 26 lines changed or added


 libmpd-version.h   libmpd-version.h 
/* libmpd (high level libmpdclient library)
* Copyright (C) 2004-2009 Qball Cow <qball@sarine.nl>
* Project homepage: http://gmpcwiki.sarine.nl/
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
#ifndef LIBMPD_VERSION #ifndef LIBMPD_VERSION
#define LIBMPD_VERSION "0.17.0" #define LIBMPD_VERSION "0.17.96"
#define LIBMPD_MAJOR_VERSION (0)
#define LIBMPD_MINOR_VERSION (17)
#define LIBMPD_MICRO_VERSION (1)
#endif #endif
 End of changes. 2 change blocks. 
1 lines changed or deleted 24 lines changed or added


 libmpd.h   libmpd.h 
/* /* libmpd (high level libmpdclient library)
* Copyright (C) 2004-2005 Qball Cow <Qball@qballcow.nl> * Copyright (C) 2004-2009 Qball Cow <qball@sarine.nl>
* * Project homepage: http://gmpcwiki.sarine.nl/
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * This program is free software; you can redistribute it and/or modify
* published by the Free Software Foundation; either version 2 of the * it under the terms of the GNU General Public License as published by
* License, or (at your option) any later version. * the Free Software Foundation; either version 2 of the License, or
* * (at your option) any later version.
* This program is distributed in the hope that it will be useful, * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* General Public License for more details. * GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public * You should have received a copy of the GNU General Public License along
* License along with this program; if not, write to the * with this program; if not, write to the Free Software Foundation, Inc.,
* Free Software Foundation, Inc., 59 Temple Place - Suite 330, * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
* Boston, MA 02111-1307, USA. */
*/
/** /**
* \example testcase.c * \example testcase.c
* A small example of a console client using libmpd. * A small example of a console client using libmpd.
*/ */
/** \defgroup 1Basic Basic /** \defgroup 1Basic Basic
*/ */
/*@{*/ /*@{*/
skipping to change at line 163 skipping to change at line 163
void *userdata; void *userdata;
void (*freefunc)(void *userdata); void (*freefunc)(void *userdata);
} MpdData; } MpdData;
#include "libmpd-player.h" #include "libmpd-player.h"
#include "libmpd-status.h" #include "libmpd-status.h"
#include "libmpd-database.h" #include "libmpd-database.h"
#include "libmpd-playlist.h" #include "libmpd-playlist.h"
#include "libmpd-strfsong.h" #include "libmpd-strfsong.h"
#include "libmpd-sticker.h"
/** /**
* mpd_new_default * mpd_new_default
* *
* Create a new #MpdObj with default settings. * Create a new #MpdObj with default settings.
* Hostname will be set to "localhost". * Hostname will be set to "localhost".
* Port will be 6600. * Port will be 6600.
* *
* same as calling: * same as calling:
* @code * @code
skipping to change at line 206 skipping to change at line 207
* set the hostname * set the hostname
* *
* @returns a #MpdError. (#MPD_OK if everything went ok) * @returns a #MpdError. (#MPD_OK if everything went ok)
*/ */
int mpd_set_hostname(MpdObj * mi, char *hostname); int mpd_set_hostname(MpdObj * mi, char *hostname);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* *
* gets the set hostname * gets the set hostname
* returns: a const char *
* @returns a const char representing the hostname
*/ */
const char * mpd_get_hostname(MpdObj *mi); const char * mpd_get_hostname(MpdObj *mi);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param password The new password to use * @param password The new password to use
* *
* Set the password * Set the password
* *
* @returns a #MpdError. (#MPD_OK if everything went ok) * @returns a #MpdError. (#MPD_OK if everything went ok)
*/ */
int mpd_set_password(MpdObj * mi, char *password); int mpd_set_password(MpdObj * mi,const char *password);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param port The port to use. (Default: 6600) * @param port The port to use. (Default: 6600)
* *
* Set the Port number * Set the Port number
* *
* *
* @returns a #MpdError. (#MPD_OK if everything went ok) * @returns a #MpdError. (#MPD_OK if everything went ok)
*/ */
int mpd_set_port(MpdObj * mi, int port); int mpd_set_port(MpdObj * mi, int port);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param timeout: A timeout (in seconds) * @param timeout: A timeout (in seconds)
* *
* Set the timeout of the connection. * Set the timeout of the connection.
* If allready connected the timeout of the running connection * If already connected the timeout of the running connection
* *
* @returns a #MpdError. (MPD_OK if everything went ok) * @returns a #MpdError. (MPD_OK if everything went ok)
*/ */
int mpd_set_connection_timeout(MpdObj * mi, float timeout); int mpd_set_connection_timeout(MpdObj * mi, float timeout);
int mpd_connect_real(MpdObj *mi,mpd_Connection *connection); int mpd_connect_real(MpdObj *mi,mpd_Connection *connection);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* *
* Connect to the mpd daemon. * Connect to the mpd daemon.
skipping to change at line 289 skipping to change at line 291
* *
* Free the #MpdObj, when still connected the connection will be disconnect ed first * Free the #MpdObj, when still connected the connection will be disconnect ed first
*/ */
void mpd_free(MpdObj * mi); void mpd_free(MpdObj * mi);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* *
* Forces libmpd to re-authenticate itself. * Forces libmpd to re-authenticate itself.
* *
* When succesfull it will trigger the "permission" changed signal. * When successful it will trigger the "permission" changed signal.
* *
* @returns: a #MpdError * @returns: a #MpdError
*/ */
int mpd_send_password(MpdObj * mi); int mpd_send_password(MpdObj * mi);
/* /*
* signals * signals
*/ */
/** /**
skipping to change at line 356 skipping to change at line 358
MPD_CST_PERMISSION = 0x2000, MPD_CST_PERMISSION = 0x2000,
/** The bitrate of the playing song has changed. */ /** The bitrate of the playing song has changed. */
MPD_CST_BITRATE = 0x4000, MPD_CST_BITRATE = 0x4000,
/** the audio format of the playing song changed.*/ /** the audio format of the playing song changed.*/
MPD_CST_AUDIOFORMAT = 0x8000, MPD_CST_AUDIOFORMAT = 0x8000,
/** the queue has changed */ /** the queue has changed */
MPD_CST_STORED_PLAYLIST = 0x20000, MPD_CST_STORED_PLAYLIST = 0x20000,
/** server error */ /** server error */
MPD_CST_SERVER_ERROR = 0x40000, MPD_CST_SERVER_ERROR = 0x40000,
/** output changed */ /** output changed */
MPD_CST_OUTPUT = 0x80000 MPD_CST_OUTPUT = 0x80000,
/** Sticker changed */
MPD_CST_STICKER = 0x100000
} ChangedStatusType; } ChangedStatusType;
/* callback typedef's */ /* callback typedef's */
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param what a #ChangedStatusType that determines what changed triggered the signal. This is a bitmask. * @param what a #ChangedStatusType that determines what changed triggered the signal. This is a bitmask.
* @param userdata user data set when the signal handler was connected. * @param userdata user data set when the signal handler was connected.
* *
* Signal that get's called when the state of mpd has changed. Look #Change dStatusType to see the possible events. * Signal that gets called when the state of mpd has changed. Look #Changed StatusType to see the possible events.
*/ */
typedef void (*StatusChangedCallback) (MpdObj * mi, ChangedStatusType what, void *userdata); typedef void (*StatusChangedCallback) (MpdObj * mi, ChangedStatusType what, void *userdata);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param id The error Code. * @param id The error Code.
* @param msg human-readable informative error message. * @param msg human-readable informative error message.
* @param userdata user data set when the signal handler was connected. * @param userdata user data set when the signal handler was connected.
* This signal is called when an error has occured in the communication wit h mpd. * This signal is called when an error has occurred in the communication wi th mpd.
* *
* return: TRUE if libmpd should disconnect. * return: TRUE if libmpd should disconnect.
*/ */
typedef int (*ErrorCallback) (MpdObj * mi, int id, char *msg, void *userdat a); typedef int (*ErrorCallback) (MpdObj * mi, int id, char *msg, void *userdat a);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param connect 1 if you are now connected, 0 if you are disconnected. * @param connect 1 if you are now connected, 0 if you are disconnected.
* @param userdata user data set when the signal handler was connected. * @param userdata user data set when the signal handler was connected.
* Signal is triggered when the connection state changes. * Signal is triggered when the connection state changes.
skipping to change at line 514 skipping to change at line 518
* @returns unix Timestamp * @returns unix Timestamp
*/ */
long unsigned mpd_server_get_database_update_time(MpdObj * mi); long unsigned mpd_server_get_database_update_time(MpdObj * mi);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* @param major the major version number * @param major the major version number
* @param minor the minor version number * @param minor the minor version number
* @param micro the micro version number * @param micro the micro version number
* *
* Checks if the connected mpd server version is equal or higer. * Checks if the connected mpd server version is equal or higher.
* *
* @returns #TRUE when version of mpd equals or is higher, else #FALSE * @returns #TRUE when version of mpd equals or is higher, else #FALSE
*/ */
int mpd_server_check_version(MpdObj * mi, int major, int minor, int micro); int mpd_server_check_version(MpdObj * mi, int major, int minor, int micro);
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* *
* @return a string with version or NULL when not connected * @return a string with version or NULL when not connected
*/ */
skipping to change at line 578 skipping to change at line 582
/** /**
* @param mi a #MpdObj * @param mi a #MpdObj
* *
* Reports if the connected mpd supports the idle command. * Reports if the connected mpd supports the idle command.
* *
* @returns a boolean, TRUE if it has idle support * @returns a boolean, TRUE if it has idle support
*/ */
int mpd_server_has_idle(MpdObj *mi); int mpd_server_has_idle(MpdObj *mi);
/**
* @param mi a #MpdObj
* @param tag a #mpd_TagItems
*
* Returns if mpd supports this tag.
*
* return 1 if support 0 if not
*/
int mpd_server_tag_supported(MpdObj *mi, int tag);
#endif #endif
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
 End of changes. 12 change blocks. 
24 lines changed or deleted 38 lines changed or added


 libmpdclient.h   libmpdclient.h 
skipping to change at line 92 skipping to change at line 92
MPD_TAG_ITEM_TITLE, MPD_TAG_ITEM_TITLE,
MPD_TAG_ITEM_TRACK, MPD_TAG_ITEM_TRACK,
MPD_TAG_ITEM_NAME, MPD_TAG_ITEM_NAME,
MPD_TAG_ITEM_GENRE, MPD_TAG_ITEM_GENRE,
MPD_TAG_ITEM_DATE, MPD_TAG_ITEM_DATE,
MPD_TAG_ITEM_COMPOSER, MPD_TAG_ITEM_COMPOSER,
MPD_TAG_ITEM_PERFORMER, MPD_TAG_ITEM_PERFORMER,
MPD_TAG_ITEM_COMMENT, MPD_TAG_ITEM_COMMENT,
MPD_TAG_ITEM_DISC, MPD_TAG_ITEM_DISC,
MPD_TAG_ITEM_FILENAME, MPD_TAG_ITEM_FILENAME,
MPD_TAG_ITEM_ALBUM_ARTIST,
MPD_TAG_ITEM_ANY, MPD_TAG_ITEM_ANY,
MPD_TAG_NUM_OF_ITEM_TYPES MPD_TAG_NUM_OF_ITEM_TYPES
} mpd_TagItems; } mpd_TagItems;
extern char * mpdTagItemKeys[MPD_TAG_NUM_OF_ITEM_TYPES]; extern char * mpdTagItemKeys[MPD_TAG_NUM_OF_ITEM_TYPES];
/* internal stuff don't touch this struct */ /* internal stuff don't touch this struct */
typedef struct _mpd_ReturnElement { typedef struct _mpd_ReturnElement {
char * name; char * name;
char * value; char * value;
skipping to change at line 285 skipping to change at line 286
char *genre; char *genre;
/* Composer */ /* Composer */
char *composer; char *composer;
/* Performer */ /* Performer */
char *performer; char *performer;
/* Disc */ /* Disc */
char *disc; char *disc;
/* Comment */ /* Comment */
char *comment; char *comment;
/* AlbumArtist */
char *albumartist;
/* length of song in seconds, check that it is not MPD_SONG_NO_TIME */ /* length of song in seconds, check that it is not MPD_SONG_NO_TIME */
int time; int time;
/* if plchanges/playlistinfo/playlistid used, is the position of the /* if plchanges/playlistinfo/playlistid used, is the position of the
* song in the playlist */ * song in the playlist */
int pos; int pos;
/* song id for a song in the playlist */ /* song id for a song in the playlist */
int id; int id;
} mpd_Song; } mpd_Song;
/* mpd_newSong /* mpd_newSong
skipping to change at line 313 skipping to change at line 316
/* mpd_freeSong /* mpd_freeSong
* use to free memory allocated by mpd_newSong * use to free memory allocated by mpd_newSong
* also it will free memory pointed to by file, artist, etc, so be careful * also it will free memory pointed to by file, artist, etc, so be careful
*/ */
void mpd_freeSong(mpd_Song * song); void mpd_freeSong(mpd_Song * song);
/* mpd_songDup /* mpd_songDup
* works like strDup, but for a mpd_Song * works like strDup, but for a mpd_Song
*/ */
mpd_Song * mpd_songDup(mpd_Song * song); mpd_Song * mpd_songDup(const mpd_Song * song);
/* DIRECTORY STUFF */ /* DIRECTORY STUFF */
/* mpd_Directory /* mpd_Directory
* used to store info fro directory (right now that just the path) * used to store info fro directory (right now that just the path)
*/ */
typedef struct _mpd_Directory { typedef struct _mpd_Directory {
char * path; char * path;
} mpd_Directory; } mpd_Directory;
skipping to change at line 522 skipping to change at line 525
void mpd_sendRandomCommand(mpd_Connection * connection, int randomMode); void mpd_sendRandomCommand(mpd_Connection * connection, int randomMode);
void mpd_sendSetvolCommand(mpd_Connection * connection, int volumeChange); void mpd_sendSetvolCommand(mpd_Connection * connection, int volumeChange);
/* WARNING: don't use volume command, its depreacted */ /* WARNING: don't use volume command, its depreacted */
void mpd_sendVolumeCommand(mpd_Connection * connection, int volumeChange); void mpd_sendVolumeCommand(mpd_Connection * connection, int volumeChange);
void mpd_sendCrossfadeCommand(mpd_Connection * connection, int seconds); void mpd_sendCrossfadeCommand(mpd_Connection * connection, int seconds);
void mpd_sendUpdateCommand(mpd_Connection * connection, char * path); void mpd_sendUpdateCommand(mpd_Connection * connection,const char * path);
/* returns the update job id, call this after a update command*/ /* returns the update job id, call this after a update command*/
int mpd_getUpdateId(mpd_Connection * connection); int mpd_getUpdateId(mpd_Connection * connection);
void mpd_sendPasswordCommand(mpd_Connection * connection, const char * pass ); void mpd_sendPasswordCommand(mpd_Connection * connection, const char * pass );
/* after executing a command, when your done with it to get its status /* after executing a command, when your done with it to get its status
* (you want to check connection->error for an error) * (you want to check connection->error for an error)
*/ */
void mpd_finishCommand(mpd_Connection * connection); void mpd_finishCommand(mpd_Connection * connection);
skipping to change at line 600 skipping to change at line 603
char *mpd_getNextTagType(mpd_Connection * connection); char *mpd_getNextTagType(mpd_Connection * connection);
/** /**
* @param connection a MpdConnection * @param connection a MpdConnection
* @param path the path to the playlist. * @param path the path to the playlist.
* *
* List the content, with full metadata, of a stored playlist. * List the content, with full metadata, of a stored playlist.
* *
*/ */
void mpd_sendListPlaylistInfoCommand(mpd_Connection *connection, char *path ); void mpd_sendListPlaylistInfoCommand(mpd_Connection *connection,const char *path);
/** /**
* @param connection a MpdConnection * @param connection a MpdConnection
* @param path the path to the playlist. * @param path the path to the playlist.
* *
* List the content of a stored playlist. * List the content of a stored playlist.
* *
*/ */
void mpd_sendListPlaylistCommand(mpd_Connection *connection, char *path); void mpd_sendListPlaylistCommand(mpd_Connection *connection,const char *pat h);
/** /**
* @param connection a #mpd_Connection * @param connection a #mpd_Connection
* @param exact if to match exact * @param exact if to match exact
* *
* starts a search, use mpd_addConstraintSearch to add * starts a search, use mpd_addConstraintSearch to add
* a constraint to the search, and mpd_commitSearch to do the actual search * a constraint to the search, and mpd_commitSearch to do the actual search
*/ */
void mpd_startSearch(mpd_Connection *connection, int exact); void mpd_startSearch(mpd_Connection *connection, int exact);
skipping to change at line 659 skipping to change at line 662
* mpd_startSearch will return a list of songs (and you need mpd_getNextIn foEntity) * mpd_startSearch will return a list of songs (and you need mpd_getNextIn foEntity)
* this one will return a list of only one field (the one specified with ty pe) and you need * this one will return a list of only one field (the one specified with ty pe) and you need
* mpd_getNextTag to get the results * mpd_getNextTag to get the results
*/ */
void mpd_startFieldSearch(mpd_Connection *connection, int type); void mpd_startFieldSearch(mpd_Connection *connection, int type);
void mpd_startPlaylistSearch(mpd_Connection *connection, int exact); void mpd_startPlaylistSearch(mpd_Connection *connection, int exact);
void mpd_startStatsSearch(mpd_Connection *connection); void mpd_startStatsSearch(mpd_Connection *connection);
void mpd_sendPlaylistClearCommand(mpd_Connection *connection, char *path); void mpd_sendPlaylistClearCommand(mpd_Connection *connection,const char *pa th);
void mpd_sendPlaylistAddCommand(mpd_Connection *connection, void mpd_sendPlaylistAddCommand(mpd_Connection *connection,
char *playlist, char *path); const char *playlist,const char *path);
void mpd_sendPlaylistMoveCommand(mpd_Connection *connection, void mpd_sendPlaylistMoveCommand(mpd_Connection *connection,
char *playlist, int from, int to); const char *playlist, int from, int to);
void mpd_sendPlaylistDeleteCommand(mpd_Connection *connection, void mpd_sendPlaylistDeleteCommand(mpd_Connection *connection,
char *playlist, int pos); const char *playlist, int pos);
void mpd_sendClearErrorCommand(mpd_Connection * connection); void mpd_sendClearErrorCommand(mpd_Connection * connection);
void mpd_sendGetEventsCommand(mpd_Connection *connection); void mpd_sendGetEventsCommand(mpd_Connection *connection);
char * mpd_getNextEvent(mpd_Connection *connection); char * mpd_getNextEvent(mpd_Connection *connection);
void mpd_sendListPlaylistsCommand(mpd_Connection * connection); void mpd_sendListPlaylistsCommand(mpd_Connection * connection);
/* Stickers*/
char * mpd_getNextSticker (mpd_Connection * connection);
void mpd_sendSetSongSticker(mpd_Connection *connection, const char *song, c
onst char *sticker, const char *value);
void mpd_sendGetSongSticker(mpd_Connection *connection, const char *song,
const char *sticker);
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif #endif
 End of changes. 11 change blocks. 
8 lines changed or deleted 18 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/