/usr/include/libmpd-1.0/libmpd/libmpd-status.h is in libmpd-dev 0.20.0-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 | /* 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_LIB_STATUS__
#define __MPD_LIB_STATUS__
/**\defgroup 20status Status
* Functions to get and modify the status/state of mpd.
*/
/*@{*/
/**
* @param mi a #MpdObj
*
* Checks if there is status information available. if not available, it tries to fetch it.
* This function is called from within libmpd, and shouldn't be called from the program.
*
* @returns 0 when successful
*/
int mpd_status_check (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* Marks the current status invalid, the next time status is needed it will be fetched from mpd.
*
* @returns 0 when successful
*/
int mpd_status_queue_update (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* Updates the status field from mpd.
* Call this function every 0.x seconds from the program's main-loop to receive signals when mpd's status has changed.
*
* @returns 0 when succesfull
*/
int mpd_status_update (MpdObj *mi);
/**
* @param mi a #MpdObj
* @param fvol a float between 0.0 and 1.0
*
* Set the output volume
* @returns the new volume or a value below 0 when failed.
*/
float mpd_status_set_volume_as_float (MpdObj *mi, float fvol);
/**
* @param mi a #MpdObj
* @param volume a value between 0 and 100.
*
* Set the output volume
*
* @returns the new volume or < 0 when failed.
*/
int mpd_status_set_volume (MpdObj *mi,int volume);
/**
* @param mi a #MpdObj
*
* Get the audio output volume.
*
* @returns the audio output volume between 0 and 100 or < 0 when failed
*/
int mpd_status_get_volume (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* get the bitrate of the currently playing song in kbs. This is a constantly updating value. (for vbr songs)
*
* @returns bitrate in kbs
*/
int mpd_status_get_bitrate (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* get the samplerate of the currently playing song in bps.
*
* @returns samplerate in bps
*/
unsigned int mpd_status_get_samplerate (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* get the number of channels in the currently playing song. This is usually only 1(mono) or 2(stereo), but this might change in the future.
*
* @returns number of channels
*/
int mpd_status_get_channels (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* get the number of bits per sample of the currently playing song.
*
* @returns bits per sample
*/
int mpd_status_get_bits (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* get the total length of the currently playing song.
*
* @returns time in seconds or <0 when failed.
*/
int mpd_status_get_total_song_time (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* Gets the elapsed time of the currently playing song.
*
* @returns Time in seconds
*/
int mpd_status_get_elapsed_song_time (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* Get the crossfade time. 0 is disabled.
*
* @returns The crossfade time in seconds
*/
int mpd_status_get_crossfade (MpdObj *mi);
/**
* @param mi a #MpdObj
* @param crossfade_time the time to crossfade in seconds
*
* Sets the crossfade time. 0 to disable crossfade.
*
* @returns 0 when successful
*/
int mpd_status_set_crossfade (MpdObj *mi, int crossfade_time);
/**
* @param mi a #MpdObj
*
* Checks if mpd is updating it's music db.
*
* @returns TRUE if mpd is still updating, FALSE if not.
*/
int mpd_status_db_is_updating (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* @returns the error message that mpd last reported, or NULL. Needs to be freed.
*/
char * mpd_status_get_mpd_error(MpdObj *mi);
/*@}*/
/**\defgroup 20stats Stats
* Functions to get mpd statistics
*/
/*@{*/
/**
* @param mi a #MpdObj
*
* Shouldn't be used from the program.
*/
int mpd_stats_update (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* Gets the total number of songs in the database
*
* @returns The total number of songs
*/
int mpd_stats_get_total_songs (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* Gets the total number of artists in the database.
*
* @returns The number of artists in the database
*/
int mpd_stats_get_total_artists (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* Gets the total number of albums in the database
*
* @returns The number of albums in the database
*/
int mpd_stats_get_total_albums (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* Gets the time since mpd has been running
*
* @returns time since mpd has been running in seconds
*/
int mpd_stats_get_uptime (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* Gets the total time of the database
*
* @returns the total time of the database
*/
int mpd_stats_get_db_playtime (MpdObj *mi);
/**
* @param mi a #MpdObj
*
* Gets the time mpd is playing
*
* @returns time that mpd is playing in seconds
*/
int mpd_stats_get_playtime (MpdObj *mi);
/*@}*/
#endif
|