00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00039 #ifndef MPD_IDLE_H
00040 #define MPD_IDLE_H
00041
00042 #include <mpd/compiler.h>
00043
00044 #include <stdbool.h>
00045
00046 struct mpd_pair;
00047 struct mpd_connection;
00048
00052 enum mpd_idle {
00054 MPD_IDLE_DATABASE = 0x1,
00055
00058 MPD_IDLE_STORED_PLAYLIST = 0x2,
00059
00061 MPD_IDLE_QUEUE = 0x4,
00062
00064 MPD_IDLE_PLAYLIST = MPD_IDLE_QUEUE,
00065
00067 MPD_IDLE_PLAYER = 0x8,
00068
00070 MPD_IDLE_MIXER = 0x10,
00071
00073 MPD_IDLE_OUTPUT = 0x20,
00074
00076 MPD_IDLE_OPTIONS = 0x40,
00077
00079 MPD_IDLE_UPDATE = 0x80,
00080
00082 MPD_IDLE_STICKER = 0x100,
00083
00085 MPD_IDLE_SUBSCRIPTION = 0x200,
00086
00088 MPD_IDLE_MESSAGE = 0x400,
00089 };
00090
00091 #ifdef __cplusplus
00092 extern "C" {
00093 #endif
00094
00101 mpd_const
00102 const char *
00103 mpd_idle_name(enum mpd_idle idle);
00104
00111 mpd_pure
00112 enum mpd_idle
00113 mpd_idle_name_parse(const char *name);
00114
00121 bool
00122 mpd_send_idle(struct mpd_connection *connection);
00123
00131 bool
00132 mpd_send_idle_mask(struct mpd_connection *connection, enum mpd_idle mask);
00133
00139 bool
00140 mpd_send_noidle(struct mpd_connection *connection);
00141
00148 mpd_pure
00149 enum mpd_idle
00150 mpd_idle_parse_pair(const struct mpd_pair *pair);
00151
00164 enum mpd_idle
00165 mpd_recv_idle(struct mpd_connection *connection, bool disable_timeout);
00166
00174 enum mpd_idle
00175 mpd_run_idle(struct mpd_connection *connection);
00176
00185 enum mpd_idle
00186 mpd_run_idle_mask(struct mpd_connection *connection, enum mpd_idle mask);
00187
00196 enum mpd_idle
00197 mpd_run_noidle(struct mpd_connection *connection);
00198
00199 #ifdef __cplusplus
00200 }
00201 #endif
00202
00203 #endif