Code

mpdclient: export mpdclient_finish_command
[ncmpc.git] / src / mpdclient.h
index 383634fb78398c2e10726ca88d3acc7f03e4cb19..d46b8a1c71460a45162a94cfdbd9599940b73858 100644 (file)
@@ -2,6 +2,7 @@
 #define MPDCLIENT_H
 
 #include "playlist.h"
+#include "mpdclient.h"
 
 #include <mpd/client.h>
 
@@ -41,11 +42,38 @@ struct mpdclient {
        enum mpd_idle events;
 };
 
+enum {
+       /**
+        * all idle events the version of libmpdclient, ncmpc is compiled
+        * against, supports
+        */
+       MPD_IDLE_ALL = MPD_IDLE_DATABASE
+               | MPD_IDLE_STORED_PLAYLIST
+               | MPD_IDLE_QUEUE
+               | MPD_IDLE_PLAYER
+               | MPD_IDLE_MIXER
+               | MPD_IDLE_OUTPUT
+               | MPD_IDLE_OPTIONS
+               | MPD_IDLE_UPDATE
+#if LIBMPDCLIENT_CHECK_VERSION(2,5,0)
+               | MPD_IDLE_STICKER
+               | MPD_IDLE_SUBSCRIPTION
+               | MPD_IDLE_MESSAGE
+#endif
+};
+
 /** functions ***************************************************************/
 
 bool
 mpdclient_handle_error(struct mpdclient *c);
 
+static inline bool
+mpdclient_finish_command(struct mpdclient *c)
+{
+       return mpd_response_finish(c->connection)
+               ? true : mpdclient_handle_error(c);
+}
+
 struct mpdclient *
 mpdclient_new(void);
 
@@ -76,7 +104,7 @@ mpdclient_get_current_song(const struct mpdclient *c)
 
 bool
 mpdclient_connect(struct mpdclient *c, const gchar *host, gint port,
-                 gfloat timeout_, const gchar *password);
+                 unsigned timeout_ms, const gchar *password);
 
 void
 mpdclient_disconnect(struct mpdclient *c);