-#define DISORDER_PLAYING_ENABLED 0x00000001 /* play is enabled */
-#define DISORDER_RANDOM_ENABLED 0x00000002 /* random play is enabled */
-#define DISORDER_TRACK_PAUSED 0x00000004 /* track is paused */
+
+/** @brief Play is enabled */
+#define DISORDER_PLAYING_ENABLED 0x00000001
+
+/** @brief Random play is enabled */
+#define DISORDER_RANDOM_ENABLED 0x00000002
+
+/** @brief Track is paused
+ *
+ * This is only meaningful if @ref DISORDER_PLAYING is set
+ */
+#define DISORDER_TRACK_PAUSED 0x00000004
+
+/** @brief Track is playing
+ *
+ * This can be set even if the current track is paused (in which case @ref
+ * DISORDER_TRACK_PAUSED) will also be set.
+ */
+#define DISORDER_PLAYING 0x00000008
+
+/** @brief Connected to server
+ *
+ * By connected it is meant that commands have a reasonable chance of being
+ * processed soon, not merely that a TCP connection exists - for instance if
+ * the client is still authenticating then that does not count as connected.
+ */
+#define DISORDER_CONNECTED 0x00000010
+
+char *disorder_eclient_interpret_state(unsigned long statebits);