[Xfce4-commits] <xfce4-mpc-plugin:master> Add skeleton for getting/setting outputs in simple-libmpd
Landry Breuil
noreply at xfce.org
Sat May 15 00:18:02 CEST 2010
Updating branch refs/heads/master
to 43bea1d2dccfc9c124f2bda144d5ae33b1943e4b (commit)
from 7e0dbc4b630506ee65e0428d4a64e0f67e6aa55b (commit)
commit 43bea1d2dccfc9c124f2bda144d5ae33b1943e4b
Author: Landry Breuil <landry at xfce.org>
Date: Fri May 14 18:22:27 2010 +0200
Add skeleton for getting/setting outputs in simple-libmpd
adds mpd_server_get_output_devices(), mpd_server_set_output_device(),
mpd_Output struct and amend MpdData struct to also hold it.
panel-plugin/simple-libmpd.c | 8 ++++++++
panel-plugin/simple-libmpd.h | 19 +++++++++++++++++++
2 files changed, 27 insertions(+), 0 deletions(-)
diff --git a/panel-plugin/simple-libmpd.c b/panel-plugin/simple-libmpd.c
index d62e8ac..232591e 100644
--- a/panel-plugin/simple-libmpd.c
+++ b/panel-plugin/simple-libmpd.c
@@ -501,6 +501,14 @@ MpdData* mpd_data_get_next(MpdData* md)
return md;
}
+MpdData* mpd_server_get_output_devices(MpdObj* mo)
+{
+}
+
+int mpd_server_set_output_device (MpdObj* mo, int id, int state)
+{
+}
+
void mpd_status_set_volume(MpdObj* mo, int newvol)
{
char outbuf[15];
diff --git a/panel-plugin/simple-libmpd.h b/panel-plugin/simple-libmpd.h
index f314bac..1bc7752 100644
--- a/panel-plugin/simple-libmpd.h
+++ b/panel-plugin/simple-libmpd.h
@@ -51,6 +51,12 @@ typedef struct {
} mpd_Song;
typedef struct {
+ int id;
+ char* name;
+ int enabled;
+} mpd_Output;
+
+typedef struct {
gchar* host;
int port;
gchar* pass;
@@ -68,12 +74,23 @@ typedef struct {
int buflen;
} MpdObj;
+typedef enum {
+ MPD_DATA_TYPE_SONG,
+ MPD_DATA_TYPE_OUTPUT_DEV
+} MpdDataType;
+
/* here, i must cheat, too hard to follow libmpd's behaviour */
typedef struct {
+ /* holds type = song or output */
+ MpdDataType type;
/* ptr to current song */
mpd_Song* song;
/* vector of all songs in playlist */
mpd_Song* allsongs;
+ /* ptr to current output */
+ mpd_Output* output_dev;
+ /* vector of all outputs */
+ mpd_Output* alloutputs;
int nb;
int cur;
} MpdData;
@@ -96,6 +113,8 @@ int mpd_player_get_current_song_pos(MpdObj*);
MpdData* mpd_playlist_get_changes(MpdObj*, int);
MpdData* mpd_data_get_next(MpdData*);
mpd_Song* mpd_playlist_get_current_song(MpdObj*);
+MpdData* mpd_server_get_output_devices(MpdObj*);
+int mpd_server_set_output_device (MpdObj*, int, int);
int mpd_playlist_get_playlist_length(MpdObj*);
int mpd_check_error(MpdObj*);
void mpd_set_hostname(MpdObj*, char*);
More information about the Xfce4-commits
mailing list