X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/blobdiff_plain/f4522fa75592b9508589a62dc6a503e8eed52432..d0f01ef61a0b9ffe7f7252e08917ed284e2f0b9e:/lib/client-stubs.h diff --git a/lib/client-stubs.h b/lib/client-stubs.h index 19649ac..1962df2 100644 --- a/lib/client-stubs.h +++ b/lib/client-stubs.h @@ -1,6 +1,11 @@ +/* + * Automatically generated file, see scripts/protocol + * + * DO NOT EDIT. + */ /* * This file is part of DisOrder. - * Copyright (C) 2010 Richard Kettlewell + * Copyright (C) 2010-11 Richard Kettlewell * * 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 @@ -17,6 +22,11 @@ */ #ifndef CLIENT_STUBS_H #define CLIENT_STUBS_H +/** @file lib/client-stubs.h + * @brief Generated client API + * + * Don't include this file directly - use @ref client.h instead. + */ /** @brief Adopt a track * @@ -227,6 +237,18 @@ int disorder_move(disorder_client *c, const char *track, long delta); */ int disorder_moveafter(disorder_client *c, const char *target, char **ids, int nids); +/** @brief List recently added tracks + * + * + * + * @param c Client + * @param max Maximum tracks to fetch, or 0 for all available + * @param tracksp Recently added tracks + * @param ntracksp Number of elements in tracksp + * @return 0 on success, non-0 on error + */ +int disorder_new_tracks(disorder_client *c, long max, char ***tracksp, int *ntracksp); + /** @brief Do nothing * * Used as a keepalive. No authentication required. @@ -281,6 +303,16 @@ int disorder_play(disorder_client *c, const char *track, char **idp); */ int disorder_playafter(disorder_client *c, const char *target, char **tracks, int ntracks); +/** @brief Retrieve the playing track + * + * + * + * @param c Client + * @param playingp Details of the playing track + * @return 0 on success, non-0 on error + */ +int disorder_playing(disorder_client *c, struct queue_entry **playingp); + /** @brief Delete a playlist * * Requires the 'play' right and permission to modify the playlist. @@ -367,6 +399,17 @@ int disorder_playlist_unlock(disorder_client *c); */ int disorder_playlists(disorder_client *c, char ***playlistsp, int *nplaylistsp); +/** @brief Get all the preferences for a track + * + * + * + * @param c Client + * @param track Track name + * @param prefsp Track preferences + * @return 0 on success, non-0 on error + */ +int disorder_prefs(disorder_client *c, const char *track, struct kvp **prefsp); + /** @brief List the queue * * @@ -495,6 +538,17 @@ int disorder_resume(disorder_client *c); */ int disorder_revoke(disorder_client *c); +/** @brief Get the server's RTP address information + * + * + * + * @param c Client + * @param addressp Where to store hostname or address + * @param portp Where to store service name or port number + * @return 0 on success, non-0 on error + */ +int disorder_rtp_address(disorder_client *c, char **addressp, char **portp); + /** @brief Terminate the playing track. * * Requires one of the 'scratch mine', 'scratch random' or 'scratch any' rights depending on how the track came to be added to the queue. @@ -505,6 +559,43 @@ int disorder_revoke(disorder_client *c); */ int disorder_scratch(disorder_client *c, const char *id); +/** @brief Schedule a track to play in the future + * + * + * + * @param c Client + * @param when When to play the track + * @param priority Event priority ("normal" or "junk") + * @param track Track to play + * @return 0 on success, non-0 on error + */ +int disorder_schedule_add_play(disorder_client *c, time_t when, const char *priority, const char *track); + +/** @brief Schedule a global setting to be changed in the future + * + * + * + * @param c Client + * @param when When to change the setting + * @param priority Event priority ("normal" or "junk") + * @param pref Global preference to set + * @param value New value of global preference + * @return 0 on success, non-0 on error + */ +int disorder_schedule_add_set_global(disorder_client *c, time_t when, const char *priority, const char *pref, const char *value); + +/** @brief Schedule a global setting to be unset in the future + * + * + * + * @param c Client + * @param when When to change the setting + * @param priority Event priority ("normal" or "junk") + * @param pref Global preference to set + * @return 0 on success, non-0 on error + */ +int disorder_schedule_add_unset_global(disorder_client *c, time_t when, const char *priority, const char *pref); + /** @brief Delete a scheduled event. * * Users can always delete their own scheduled events; with the admin right you can delete any event. @@ -515,6 +606,17 @@ int disorder_scratch(disorder_client *c, const char *id); */ int disorder_schedule_del(disorder_client *c, const char *event); +/** @brief Get the details of scheduled event + * + * + * + * @param c Client + * @param id Event ID + * @param actiondatap Details of event + * @return 0 on success, non-0 on error + */ +int disorder_schedule_get(disorder_client *c, const char *id, struct kvp **actiondatap); + /** @brief List scheduled events * * This just lists IDs. Use 'schedule-get' to retrieve more detail @@ -572,7 +674,7 @@ int disorder_shutdown(disorder_client *c); /** @brief Get server statistics * - * The details of what the server reports are not really defined. The returned strings are intended to be printed out one to a line.. + * The details of what the server reports are not really defined. The returned strings are intended to be printed out one to a line. * * @param c Client * @param statsp List of server information strings. @@ -646,4 +748,26 @@ int disorder_users(disorder_client *c, char ***usersp, int *nusersp); */ int disorder_version(disorder_client *c, char **versionp); +/** @brief Set the volume + * + * + * + * @param c Client + * @param left Left channel volume + * @param right Right channel volume + * @return 0 on success, non-0 on error + */ +int disorder_set_volume(disorder_client *c, long left, long right); + +/** @brief Get the volume + * + * + * + * @param c Client + * @param leftp Left channel volume + * @param rightp Right channel volume + * @return 0 on success, non-0 on error + */ +int disorder_get_volume(disorder_client *c, long *leftp, long *rightp); + #endif