Audacious  $Id:Doxyfile42802007-03-2104:39:00Znenolod$
Classes | Defines | Functions | Variables
dbus.c File Reference
#include "config.h"
#include <glib.h>
#include <dbus/dbus.h>
#include <dbus/dbus-glib.h>
#include <dbus/dbus-glib-bindings.h>
#include <dbus/dbus-glib-lowlevel.h>
#include "dbus.h"
#include "dbus-service.h"
#include "dbus-server-bindings.h"
#include <math.h>
#include <libaudcore/eventqueue.h>
#include "audconfig.h"
#include "debug.h"
#include "drct.h"
#include "equalizer.h"
#include "playback.h"
#include "playlist.h"
#include "interface.h"

Go to the source code of this file.

Classes

struct  StatusRequest
struct  PositionRequest
struct  InfoRequest
struct  FieldRequest
struct  AddRequest
struct  MprisMetadataRequest

Defines

#define DBUS_TYPE_G_STRING_VALUE_HASHTABLE   (dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_VALUE))

Functions

static void mpris_playlist_update_hook (gpointer unused, MprisTrackList *obj)
void audacious_rc_class_init (RemoteObjectClass *klass)
void mpris_root_class_init (MprisRootClass *klass)
void mpris_player_class_init (MprisPlayerClass *klass)
void mpris_tracklist_class_init (MprisTrackListClass *klass)
void audacious_rc_init (RemoteObject *object)
void mpris_root_init (MprisRoot *object)
void mpris_player_init (MprisPlayer *object)
void mpris_tracklist_init (MprisTrackList *object)
void init_dbus ()
static GValue * tuple_value_to_gvalue (const Tuple *tuple, const gchar *key)
static void tuple_insert_to_hash_full (GHashTable *md, const Tuple *tuple, const gchar *tuple_key, const gchar *key)
 Retrieves value named tuple_key and inserts it inside hash table.
static void tuple_insert_to_hash (GHashTable *md, const Tuple *tuple, const gchar *key)
static void remove_metadata_value (gpointer value)
static GHashTable * make_mpris_metadata (const gchar *filename, const Tuple *tuple)
static void real_position (gint *playlist, gint *entry)
static gboolean get_status_cb (void *data)
static void get_status (struct StatusRequest *request)
static gboolean get_position_cb (void *data)
static void get_position (struct PositionRequest *request)
static gboolean get_info_cb (void *data)
static void get_info (struct InfoRequest *request)
static gboolean get_field_cb (void *data)
static void get_field (struct FieldRequest *request)
static gboolean play_cb (void *unused)
static gboolean pause_cb (void *unused)
static gboolean play_pause_cb (void *unused)
static gboolean seek_cb (void *data)
static gboolean stop_cb (void *unused)
static gboolean prev_cb (void *unused)
static gboolean next_cb (void *unused)
static gboolean jump_cb (void *data)
static gboolean add_cb (void *data)
static gboolean delete_cb (void *data)
static gboolean clear_cb (void *unused)
static gboolean add_to_queue_cb (void *data)
static gboolean remove_from_queue_cb (void *data)
static gboolean clear_queue_cb (void *unused)
static gboolean queue_get_entry_cb (void *data)
static gint queue_get_entry (gint position)
static gboolean queue_find_entry_cb (void *data)
static gint queue_find_entry (gint position)
gboolean add_to_new_playlist_cb (void *data)
static gboolean get_mpris_metadata_cb (void *data)
static void get_mpris_metadata (struct MprisMetadataRequest *request)
static gboolean set_no_playlist_advance_cb (void *no_advance)
static gboolean set_shuffle_cb (void *shuffle)
static gboolean set_repeat_cb (void *repeat)
gboolean mpris_root_identity (MprisRoot *obj, gchar **identity, GError **error)
gboolean mpris_root_quit (MprisPlayer *obj, GError **error)
gboolean mpris_player_next (MprisPlayer *obj, GError **error)
gboolean mpris_player_prev (MprisPlayer *obj, GError **error)
gboolean mpris_player_pause (MprisPlayer *obj, GError **error)
gboolean mpris_player_stop (MprisPlayer *obj, GError **error)
gboolean mpris_player_play (MprisPlayer *obj, GError **error)
gboolean mpris_player_repeat (MprisPlayer *obj, gboolean rpt, GError **error)
static void append_int_value (GValueArray *ar, gint tmp)
static gint get_playback_status (void)
gboolean mpris_player_get_status (MprisPlayer *obj, GValueArray **status, GError **error)
gboolean mpris_player_get_metadata (MprisPlayer *obj, GHashTable **metadata, GError **error)
gboolean mpris_player_get_caps (MprisPlayer *obj, gint *capabilities, GError **error)
gboolean mpris_player_volume_set (MprisPlayer *obj, gint vol, GError **error)
gboolean mpris_player_volume_get (MprisPlayer *obj, gint *vol, GError **error)
gboolean mpris_player_position_set (MprisPlayer *obj, gint pos, GError **error)
gboolean mpris_player_position_get (MprisPlayer *obj, gint *pos, GError **error)
gboolean mpris_emit_caps_change (MprisPlayer *obj)
gboolean mpris_emit_track_change (MprisPlayer *obj)
gboolean mpris_emit_status_change (MprisPlayer *obj, PlaybackStatus status)
gboolean mpris_emit_tracklist_change (MprisTrackList *obj, gint playlist)
gboolean mpris_tracklist_get_metadata (MprisTrackList *obj, gint pos, GHashTable **metadata, GError **error)
gboolean mpris_tracklist_get_current_track (MprisTrackList *obj, gint *pos, GError **error)
gboolean mpris_tracklist_get_length (MprisTrackList *obj, gint *length, GError **error)
gboolean mpris_tracklist_add_track (MprisTrackList *obj, gchar *uri, gboolean play, GError **error)
gboolean mpris_tracklist_del_track (MprisTrackList *obj, gint pos, GError **error)
gboolean mpris_tracklist_loop (MprisTrackList *obj, gboolean loop, GError **error)
gboolean mpris_tracklist_random (MprisTrackList *obj, gboolean random, GError **error)
gboolean audacious_rc_version (RemoteObject *obj, gchar **version, GError **error)
gboolean audacious_rc_quit (RemoteObject *obj, GError **error)
gboolean audacious_rc_eject (RemoteObject *obj, GError **error)
gboolean audacious_rc_main_win_visible (RemoteObject *obj, gboolean *visible, GError **error)
gboolean audacious_rc_show_main_win (RemoteObject *obj, gboolean show, GError **error)
gboolean audacious_rc_get_tuple_fields (RemoteObject *obj, gchar ***fields, GError **error)
gboolean audacious_rc_play (RemoteObject *obj, GError **error)
gboolean audacious_rc_pause (RemoteObject *obj, GError **error)
gboolean audacious_rc_stop (RemoteObject *obj, GError **error)
gboolean audacious_rc_playing (RemoteObject *obj, gboolean *is_playing, GError **error)
gboolean audacious_rc_paused (RemoteObject *obj, gboolean *is_paused, GError **error)
gboolean audacious_rc_stopped (RemoteObject *obj, gboolean *is_stopped, GError **error)
gboolean audacious_rc_status (RemoteObject *obj, gchar **status, GError **error)
gboolean audacious_rc_info (RemoteObject *obj, gint *rate, gint *freq, gint *nch, GError **error)
gboolean audacious_rc_time (RemoteObject *obj, gint *time, GError **error)
gboolean audacious_rc_seek (RemoteObject *obj, guint pos, GError **error)
gboolean audacious_rc_volume (RemoteObject *obj, gint *vl, gint *vr, GError **error)
gboolean audacious_rc_set_volume (RemoteObject *obj, gint vl, gint vr, GError **error)
gboolean audacious_rc_balance (RemoteObject *obj, gint *balance, GError **error)
gboolean audacious_rc_position (RemoteObject *obj, gint *pos, GError **error)
gboolean audacious_rc_advance (RemoteObject *obj, GError **error)
gboolean audacious_rc_reverse (RemoteObject *obj, GError **error)
gboolean audacious_rc_length (RemoteObject *obj, gint *length, GError **error)
gboolean audacious_rc_song_title (RemoteObject *obj, guint pos, gchar **title, GError **error)
gboolean audacious_rc_song_filename (RemoteObject *obj, guint pos, gchar **filename, GError **error)
gboolean audacious_rc_song_length (RemoteObject *obj, guint pos, gint *length, GError **error)
gboolean audacious_rc_song_frames (RemoteObject *obj, guint pos, gint *length, GError **error)
gboolean audacious_rc_song_tuple (RemoteObject *obj, guint pos, gchar *field, GValue *value, GError **error)
gboolean audacious_rc_jump (RemoteObject *obj, guint pos, GError **error)
gboolean audacious_rc_add (RemoteObject *obj, gchar *file, GError **error)
gboolean audacious_rc_add_url (RemoteObject *obj, gchar *file, GError **error)
static GList * string_array_to_list (gchar **strings)
gboolean audacious_rc_add_list (RemoteObject *obj, gchar **filenames, GError **error)
gboolean audacious_rc_open_list (RemoteObject *obj, gchar **filenames, GError **error)
gboolean audacious_rc_open_list_to_temp (RemoteObject *obj, gchar **filenames, GError **error)
gboolean audacious_rc_delete (RemoteObject *obj, guint pos, GError **error)
gboolean audacious_rc_clear (RemoteObject *obj, GError **error)
gboolean audacious_rc_auto_advance (RemoteObject *obj, gboolean *is_advance, GError **error)
gboolean audacious_rc_toggle_auto_advance (RemoteObject *obj, GError **error)
gboolean audacious_rc_repeat (RemoteObject *obj, gboolean *is_repeating, GError **error)
gboolean audacious_rc_toggle_repeat (RemoteObject *obj, GError **error)
gboolean audacious_rc_shuffle (RemoteObject *obj, gboolean *is_shuffling, GError **error)
gboolean audacious_rc_toggle_shuffle (RemoteObject *obj, GError **error)
gboolean audacious_rc_show_prefs_box (RemoteObject *obj, gboolean show, GError **error)
gboolean audacious_rc_show_about_box (RemoteObject *obj, gboolean show, GError **error)
gboolean audacious_rc_show_jtf_box (RemoteObject *obj, gboolean show, GError **error)
gboolean audacious_rc_show_filebrowser (RemoteObject *obj, gboolean show, GError **error)
gboolean audacious_rc_play_pause (RemoteObject *obj, GError **error)
gboolean audacious_rc_get_info (RemoteObject *obj, gint *rate, gint *freq, gint *nch, GError **error)
gboolean audacious_rc_toggle_aot (RemoteObject *obj, gboolean ontop, GError **error)
gboolean audacious_rc_playqueue_add (RemoteObject *obj, gint pos, GError **error)
gboolean audacious_rc_playqueue_remove (RemoteObject *obj, gint pos, GError **error)
gboolean audacious_rc_playqueue_clear (RemoteObject *obj, GError **error)
gboolean audacious_rc_get_playqueue_length (RemoteObject *obj, gint *length, GError **error)
gboolean audacious_rc_queue_get_list_pos (RemoteObject *obj, gint qpos, gint *pos, GError **error)
gboolean audacious_rc_queue_get_queue_pos (RemoteObject *obj, gint pos, gint *qpos, GError **error)
gboolean audacious_rc_playqueue_is_queued (RemoteObject *obj, gint pos, gboolean *is_queued, GError **error)
gboolean audacious_rc_playlist_ins_url_string (RemoteObject *obj, gchar *url, gint pos, GError **error)
gboolean audacious_rc_playlist_add (RemoteObject *obj, void *list, GError **error)
gboolean audacious_rc_playlist_enqueue_to_temp (RemoteObject *obj, gchar *url, GError **error)
gboolean audacious_rc_get_eq (RemoteObject *obj, gdouble *preamp, GArray **bands, GError **error)
gboolean audacious_rc_get_eq_preamp (RemoteObject *obj, gdouble *preamp, GError **error)
gboolean audacious_rc_get_eq_band (RemoteObject *obj, gint band, gdouble *value, GError **error)
gboolean audacious_rc_set_eq (RemoteObject *obj, gdouble preamp, GArray *bands, GError **error)
gboolean audacious_rc_set_eq_preamp (RemoteObject *obj, gdouble preamp, GError **error)
gboolean audacious_rc_set_eq_band (RemoteObject *obj, gint band, gdouble value, GError **error)
gboolean audacious_rc_equalizer_activate (RemoteObject *obj, gboolean active, GError **error)
gboolean audacious_rc_get_active_playlist_name (RemoteObject *obj, gchar **title, GError **error)
DBusGProxy * audacious_get_dbus_proxy (void)

Variables

static DBusGConnection * dbus_conn = NULL
static guint signals [LAST_SIG] = { 0 }
static guint tracklist_signals [LAST_TRACKLIST_SIG] = { 0 }
MprisPlayermpris = NULL
static GThread * main_thread
static GMutex * info_mutex
static GCond * info_cond

Define Documentation

#define DBUS_TYPE_G_STRING_VALUE_HASHTABLE   (dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_VALUE))

Definition at line 103 of file dbus.c.

Referenced by mpris_player_class_init(), and mpris_player_init().


Function Documentation

static gboolean add_cb ( void *  data) [static]

Definition at line 520 of file dbus.c.

Referenced by audacious_rc_playlist_ins_url_string(), and mpris_tracklist_add_track().

gboolean add_to_new_playlist_cb ( void *  data)

Definition at line 623 of file dbus.c.

Referenced by audacious_rc_playlist_enqueue_to_temp().

static gboolean add_to_queue_cb ( void *  data) [static]

Definition at line 553 of file dbus.c.

Referenced by audacious_rc_playqueue_add().

static void append_int_value ( GValueArray *  ar,
gint  tmp 
) [static]

Definition at line 742 of file dbus.c.

Referenced by mpris_emit_status_change(), and mpris_player_get_status().

DBusGProxy* audacious_get_dbus_proxy ( void  )

Definition at line 1468 of file dbus.c.

Referenced by do_remote().

gboolean audacious_rc_add ( RemoteObject obj,
gchar *  file,
GError **  error 
)

Definition at line 1176 of file dbus.c.

gboolean audacious_rc_add_list ( RemoteObject obj,
gchar **  filenames,
GError **  error 
)

Definition at line 1196 of file dbus.c.

gboolean audacious_rc_add_url ( RemoteObject obj,
gchar *  file,
GError **  error 
)

Definition at line 1181 of file dbus.c.

gboolean audacious_rc_advance ( RemoteObject obj,
GError **  error 
)

Definition at line 1091 of file dbus.c.

gboolean audacious_rc_auto_advance ( RemoteObject obj,
gboolean is_advance,
GError **  error 
)

Definition at line 1238 of file dbus.c.

gboolean audacious_rc_balance ( RemoteObject obj,
gint balance,
GError **  error 
)

Definition at line 1074 of file dbus.c.

void audacious_rc_class_init ( RemoteObjectClass klass)

Definition at line 107 of file dbus.c.

gboolean audacious_rc_clear ( RemoteObject obj,
GError **  error 
)

Definition at line 1232 of file dbus.c.

gboolean audacious_rc_delete ( RemoteObject obj,
guint  pos,
GError **  error 
)

Definition at line 1226 of file dbus.c.

gboolean audacious_rc_eject ( RemoteObject obj,
GError **  error 
)

Definition at line 946 of file dbus.c.

gboolean audacious_rc_equalizer_activate ( RemoteObject obj,
gboolean  active,
GError **  error 
)

Definition at line 1450 of file dbus.c.

gboolean audacious_rc_get_active_playlist_name ( RemoteObject obj,
gchar **  title,
GError **  error 
)

Definition at line 1457 of file dbus.c.

gboolean audacious_rc_get_eq ( RemoteObject obj,
gdouble preamp,
GArray **  bands,
GError **  error 
)

Definition at line 1398 of file dbus.c.

gboolean audacious_rc_get_eq_band ( RemoteObject obj,
gint  band,
gdouble value,
GError **  error 
)

Definition at line 1417 of file dbus.c.

gboolean audacious_rc_get_eq_preamp ( RemoteObject obj,
gdouble preamp,
GError **  error 
)

Definition at line 1411 of file dbus.c.

gboolean audacious_rc_get_info ( RemoteObject obj,
gint rate,
gint freq,
gint nch,
GError **  error 
)

Definition at line 1312 of file dbus.c.

gboolean audacious_rc_get_playqueue_length ( RemoteObject obj,
gint length,
GError **  error 
)

Definition at line 1347 of file dbus.c.

gboolean audacious_rc_get_tuple_fields ( RemoteObject obj,
gchar ***  fields,
GError **  error 
)

Definition at line 966 of file dbus.c.

gboolean audacious_rc_info ( RemoteObject obj,
gint rate,
gint freq,
gint nch,
GError **  error 
)

Definition at line 1036 of file dbus.c.

void audacious_rc_init ( RemoteObject object)

Definition at line 131 of file dbus.c.

gboolean audacious_rc_jump ( RemoteObject obj,
guint  pos,
GError **  error 
)

Definition at line 1170 of file dbus.c.

gboolean audacious_rc_length ( RemoteObject obj,
gint length,
GError **  error 
)

Definition at line 1103 of file dbus.c.

gboolean audacious_rc_main_win_visible ( RemoteObject obj,
gboolean visible,
GError **  error 
)

Definition at line 952 of file dbus.c.

gboolean audacious_rc_open_list ( RemoteObject obj,
gchar **  filenames,
GError **  error 
)

Definition at line 1206 of file dbus.c.

gboolean audacious_rc_open_list_to_temp ( RemoteObject obj,
gchar **  filenames,
GError **  error 
)

Definition at line 1216 of file dbus.c.

gboolean audacious_rc_pause ( RemoteObject obj,
GError **  error 
)

Definition at line 988 of file dbus.c.

gboolean audacious_rc_paused ( RemoteObject obj,
gboolean is_paused,
GError **  error 
)

Definition at line 1009 of file dbus.c.

gboolean audacious_rc_play ( RemoteObject obj,
GError **  error 
)

Definition at line 982 of file dbus.c.

gboolean audacious_rc_play_pause ( RemoteObject obj,
GError **  error 
)

Definition at line 1306 of file dbus.c.

gboolean audacious_rc_playing ( RemoteObject obj,
gboolean is_playing,
GError **  error 
)

Definition at line 1000 of file dbus.c.

gboolean audacious_rc_playlist_add ( RemoteObject obj,
void *  list,
GError **  error 
)

Definition at line 1386 of file dbus.c.

gboolean audacious_rc_playlist_enqueue_to_temp ( RemoteObject obj,
gchar *  url,
GError **  error 
)

Definition at line 1391 of file dbus.c.

gboolean audacious_rc_playlist_ins_url_string ( RemoteObject obj,
gchar *  url,
gint  pos,
GError **  error 
)

Definition at line 1374 of file dbus.c.

Referenced by audacious_rc_add(), audacious_rc_add_url(), and audacious_rc_playlist_add().

gboolean audacious_rc_playqueue_add ( RemoteObject obj,
gint  pos,
GError **  error 
)

Definition at line 1329 of file dbus.c.

gboolean audacious_rc_playqueue_clear ( RemoteObject obj,
GError **  error 
)

Definition at line 1341 of file dbus.c.

gboolean audacious_rc_playqueue_is_queued ( RemoteObject obj,
gint  pos,
gboolean is_queued,
GError **  error 
)

Definition at line 1368 of file dbus.c.

gboolean audacious_rc_playqueue_remove ( RemoteObject obj,
gint  pos,
GError **  error 
)

Definition at line 1335 of file dbus.c.

gboolean audacious_rc_position ( RemoteObject obj,
gint pos,
GError **  error 
)

Definition at line 1082 of file dbus.c.

gboolean audacious_rc_queue_get_list_pos ( RemoteObject obj,
gint  qpos,
gint pos,
GError **  error 
)

Definition at line 1356 of file dbus.c.

gboolean audacious_rc_queue_get_queue_pos ( RemoteObject obj,
gint  pos,
gint qpos,
GError **  error 
)

Definition at line 1362 of file dbus.c.

gboolean audacious_rc_quit ( RemoteObject obj,
GError **  error 
)

Definition at line 940 of file dbus.c.

gboolean audacious_rc_repeat ( RemoteObject obj,
gboolean is_repeating,
GError **  error 
)

Definition at line 1251 of file dbus.c.

gboolean audacious_rc_reverse ( RemoteObject obj,
GError **  error 
)

Definition at line 1097 of file dbus.c.

gboolean audacious_rc_seek ( RemoteObject obj,
guint  pos,
GError **  error 
)

Definition at line 1056 of file dbus.c.

gboolean audacious_rc_set_eq ( RemoteObject obj,
gdouble  preamp,
GArray *  bands,
GError **  error 
)

Definition at line 1423 of file dbus.c.

gboolean audacious_rc_set_eq_band ( RemoteObject obj,
gint  band,
gdouble  value,
GError **  error 
)

Definition at line 1443 of file dbus.c.

gboolean audacious_rc_set_eq_preamp ( RemoteObject obj,
gdouble  preamp,
GError **  error 
)

Definition at line 1436 of file dbus.c.

gboolean audacious_rc_set_volume ( RemoteObject obj,
gint  vl,
gint  vr,
GError **  error 
)

Definition at line 1068 of file dbus.c.

gboolean audacious_rc_show_about_box ( RemoteObject obj,
gboolean  show,
GError **  error 
)

Definition at line 1282 of file dbus.c.

gboolean audacious_rc_show_filebrowser ( RemoteObject obj,
gboolean  show,
GError **  error 
)

Definition at line 1297 of file dbus.c.

gboolean audacious_rc_show_jtf_box ( RemoteObject obj,
gboolean  show,
GError **  error 
)

Definition at line 1288 of file dbus.c.

gboolean audacious_rc_show_main_win ( RemoteObject obj,
gboolean  show,
GError **  error 
)

Definition at line 959 of file dbus.c.

gboolean audacious_rc_show_prefs_box ( RemoteObject obj,
gboolean  show,
GError **  error 
)

Definition at line 1276 of file dbus.c.

gboolean audacious_rc_shuffle ( RemoteObject obj,
gboolean is_shuffling,
GError **  error 
)

Definition at line 1263 of file dbus.c.

gboolean audacious_rc_song_filename ( RemoteObject obj,
guint  pos,
gchar **  filename,
GError **  error 
)

Definition at line 1123 of file dbus.c.

gboolean audacious_rc_song_frames ( RemoteObject obj,
guint  pos,
gint length,
GError **  error 
)

Definition at line 1141 of file dbus.c.

gboolean audacious_rc_song_length ( RemoteObject obj,
guint  pos,
gint length,
GError **  error 
)

Definition at line 1134 of file dbus.c.

gboolean audacious_rc_song_title ( RemoteObject obj,
guint  pos,
gchar **  title,
GError **  error 
)

Definition at line 1112 of file dbus.c.

gboolean audacious_rc_song_tuple ( RemoteObject obj,
guint  pos,
gchar *  field,
GValue *  value,
GError **  error 
)

Definition at line 1153 of file dbus.c.

gboolean audacious_rc_status ( RemoteObject obj,
gchar **  status,
GError **  error 
)

Definition at line 1027 of file dbus.c.

gboolean audacious_rc_stop ( RemoteObject obj,
GError **  error 
)

Definition at line 994 of file dbus.c.

gboolean audacious_rc_stopped ( RemoteObject obj,
gboolean is_stopped,
GError **  error 
)

Definition at line 1018 of file dbus.c.

gboolean audacious_rc_time ( RemoteObject obj,
gint time,
GError **  error 
)

Definition at line 1047 of file dbus.c.

gboolean audacious_rc_toggle_aot ( RemoteObject obj,
gboolean  ontop,
GError **  error 
)

Definition at line 1323 of file dbus.c.

gboolean audacious_rc_toggle_auto_advance ( RemoteObject obj,
GError **  error 
)

Definition at line 1244 of file dbus.c.

gboolean audacious_rc_toggle_repeat ( RemoteObject obj,
GError **  error 
)

Definition at line 1257 of file dbus.c.

gboolean audacious_rc_toggle_shuffle ( RemoteObject obj,
GError **  error 
)

Definition at line 1269 of file dbus.c.

gboolean audacious_rc_version ( RemoteObject obj,
gchar **  version,
GError **  error 
)

Definition at line 934 of file dbus.c.

gboolean audacious_rc_volume ( RemoteObject obj,
gint vl,
gint vr,
GError **  error 
)

Definition at line 1062 of file dbus.c.

static gboolean clear_cb ( void *  unused) [static]

Definition at line 547 of file dbus.c.

Referenced by audacious_rc_clear().

static gboolean clear_queue_cb ( void *  unused) [static]

Definition at line 565 of file dbus.c.

Referenced by audacious_rc_playqueue_clear().

static gboolean delete_cb ( void *  data) [static]

Definition at line 541 of file dbus.c.

Referenced by audacious_rc_delete(), and mpris_tracklist_del_track().

static void get_field ( struct FieldRequest request) [static]

Definition at line 450 of file dbus.c.

Referenced by audacious_rc_song_tuple().

static gboolean get_field_cb ( void *  data) [static]

Definition at line 433 of file dbus.c.

Referenced by get_field().

static void get_info ( struct InfoRequest request) [static]
static gboolean get_info_cb ( void *  data) [static]

Definition at line 400 of file dbus.c.

Referenced by get_info().

static void get_mpris_metadata ( struct MprisMetadataRequest request) [static]

Definition at line 656 of file dbus.c.

Referenced by mpris_player_get_metadata(), and mpris_tracklist_get_metadata().

static gboolean get_mpris_metadata_cb ( void *  data) [static]

Definition at line 630 of file dbus.c.

Referenced by get_mpris_metadata().

static gint get_playback_status ( void  ) [static]

Definition at line 751 of file dbus.c.

Referenced by mpris_emit_status_change(), and mpris_player_get_status().

static void get_position ( struct PositionRequest request) [static]
static gboolean get_position_cb ( void *  data) [static]

Definition at line 372 of file dbus.c.

Referenced by get_position().

static void get_status ( struct StatusRequest request) [static]
static gboolean get_status_cb ( void *  data) [static]

Definition at line 336 of file dbus.c.

Referenced by get_status().

void init_dbus ( )

Definition at line 217 of file dbus.c.

Referenced by init_two().

static gboolean jump_cb ( void *  data) [static]

Definition at line 514 of file dbus.c.

Referenced by audacious_rc_jump().

static GHashTable* make_mpris_metadata ( const gchar *  filename,
const Tuple tuple 
) [static]

Definition at line 295 of file dbus.c.

Referenced by get_mpris_metadata_cb(), and mpris_emit_track_change().

gboolean mpris_emit_caps_change ( MprisPlayer obj)

Definition at line 813 of file dbus.c.

gboolean mpris_emit_status_change ( MprisPlayer obj,
PlaybackStatus  status 
)

Definition at line 843 of file dbus.c.

gboolean mpris_emit_track_change ( MprisPlayer obj)

Definition at line 819 of file dbus.c.

gboolean mpris_emit_tracklist_change ( MprisTrackList obj,
gint  playlist 
)

Definition at line 861 of file dbus.c.

Referenced by mpris_playlist_update_hook().

void mpris_player_class_init ( MprisPlayerClass klass)

Definition at line 115 of file dbus.c.

gboolean mpris_player_get_caps ( MprisPlayer obj,
gint capabilities,
GError **  error 
)

Definition at line 779 of file dbus.c.

gboolean mpris_player_get_metadata ( MprisPlayer obj,
GHashTable **  metadata,
GError **  error 
)

Definition at line 770 of file dbus.c.

gboolean mpris_player_get_status ( MprisPlayer obj,
GValueArray **  status,
GError **  error 
)

Definition at line 759 of file dbus.c.

void mpris_player_init ( MprisPlayer object)

Definition at line 171 of file dbus.c.

gboolean mpris_player_next ( MprisPlayer obj,
GError **  error 
)

Definition at line 706 of file dbus.c.

gboolean mpris_player_pause ( MprisPlayer obj,
GError **  error 
)

Definition at line 718 of file dbus.c.

gboolean mpris_player_play ( MprisPlayer obj,
GError **  error 
)

Definition at line 730 of file dbus.c.

gboolean mpris_player_position_get ( MprisPlayer obj,
gint pos,
GError **  error 
)

Definition at line 803 of file dbus.c.

gboolean mpris_player_position_set ( MprisPlayer obj,
gint  pos,
GError **  error 
)

Definition at line 797 of file dbus.c.

gboolean mpris_player_prev ( MprisPlayer obj,
GError **  error 
)

Definition at line 712 of file dbus.c.

gboolean mpris_player_repeat ( MprisPlayer obj,
gboolean  rpt,
GError **  error 
)

Definition at line 736 of file dbus.c.

gboolean mpris_player_stop ( MprisPlayer obj,
GError **  error 
)

Definition at line 724 of file dbus.c.

gboolean mpris_player_volume_get ( MprisPlayer obj,
gint vol,
GError **  error 
)

Definition at line 791 of file dbus.c.

gboolean mpris_player_volume_set ( MprisPlayer obj,
gint  vol,
GError **  error 
)

Definition at line 785 of file dbus.c.

static void mpris_playlist_update_hook ( gpointer  unused,
MprisTrackList obj 
) [static]

Definition at line 867 of file dbus.c.

Referenced by mpris_tracklist_init().

void mpris_root_class_init ( MprisRootClass klass)

Definition at line 111 of file dbus.c.

gboolean mpris_root_identity ( MprisRoot obj,
gchar **  identity,
GError **  error 
)

Definition at line 692 of file dbus.c.

void mpris_root_init ( MprisRoot object)

Definition at line 163 of file dbus.c.

gboolean mpris_root_quit ( MprisPlayer obj,
GError **  error 
)

Definition at line 698 of file dbus.c.

gboolean mpris_tracklist_add_track ( MprisTrackList obj,
gchar *  uri,
gboolean  play,
GError **  error 
)

Definition at line 901 of file dbus.c.

void mpris_tracklist_class_init ( MprisTrackListClass klass)

Definition at line 125 of file dbus.c.

gboolean mpris_tracklist_del_track ( MprisTrackList obj,
gint  pos,
GError **  error 
)

Definition at line 913 of file dbus.c.

gboolean mpris_tracklist_get_current_track ( MprisTrackList obj,
gint pos,
GError **  error 
)

Definition at line 883 of file dbus.c.

gboolean mpris_tracklist_get_length ( MprisTrackList obj,
gint length,
GError **  error 
)

Definition at line 892 of file dbus.c.

gboolean mpris_tracklist_get_metadata ( MprisTrackList obj,
gint  pos,
GHashTable **  metadata,
GError **  error 
)

Definition at line 874 of file dbus.c.

void mpris_tracklist_init ( MprisTrackList object)

Definition at line 195 of file dbus.c.

gboolean mpris_tracklist_loop ( MprisTrackList obj,
gboolean  loop,
GError **  error 
)

Definition at line 919 of file dbus.c.

gboolean mpris_tracklist_random ( MprisTrackList obj,
gboolean  random,
GError **  error 
)

Definition at line 926 of file dbus.c.

static gboolean next_cb ( void *  unused) [static]

Definition at line 508 of file dbus.c.

Referenced by audacious_rc_advance(), and mpris_player_next().

static gboolean pause_cb ( void *  unused) [static]

Definition at line 474 of file dbus.c.

Referenced by audacious_rc_pause(), and mpris_player_pause().

static gboolean play_cb ( void *  unused) [static]

Definition at line 463 of file dbus.c.

Referenced by audacious_rc_play(), and mpris_player_play().

static gboolean play_pause_cb ( void *  unused) [static]

Definition at line 480 of file dbus.c.

Referenced by audacious_rc_play_pause().

static gboolean prev_cb ( void *  unused) [static]

Definition at line 502 of file dbus.c.

Referenced by audacious_rc_reverse(), and mpris_player_prev().

static gint queue_find_entry ( gint  position) [static]

Definition at line 608 of file dbus.c.

Referenced by audacious_rc_playqueue_is_queued(), and audacious_rc_queue_get_queue_pos().

static gboolean queue_find_entry_cb ( void *  data) [static]

Definition at line 597 of file dbus.c.

Referenced by queue_find_entry().

static gint queue_get_entry ( gint  position) [static]

Definition at line 582 of file dbus.c.

Referenced by audacious_rc_queue_get_list_pos().

static gboolean queue_get_entry_cb ( void *  data) [static]

Definition at line 571 of file dbus.c.

Referenced by queue_get_entry().

static void real_position ( gint playlist,
gint entry 
) [static]

Definition at line 326 of file dbus.c.

Referenced by get_field_cb(), get_info_cb(), get_mpris_metadata_cb(), and get_position_cb().

static gboolean remove_from_queue_cb ( void *  data) [static]

Definition at line 559 of file dbus.c.

Referenced by audacious_rc_playqueue_remove().

static void remove_metadata_value ( gpointer  value) [static]

Definition at line 289 of file dbus.c.

Referenced by make_mpris_metadata().

static gboolean seek_cb ( void *  data) [static]

Definition at line 490 of file dbus.c.

Referenced by audacious_rc_seek(), and mpris_player_position_set().

static gboolean set_no_playlist_advance_cb ( void *  no_advance) [static]

Definition at line 669 of file dbus.c.

Referenced by audacious_rc_toggle_auto_advance().

static gboolean set_repeat_cb ( void *  repeat) [static]

Definition at line 683 of file dbus.c.

Referenced by audacious_rc_toggle_repeat(), and mpris_tracklist_loop().

static gboolean set_shuffle_cb ( void *  shuffle) [static]

Definition at line 676 of file dbus.c.

Referenced by audacious_rc_toggle_shuffle(), and mpris_tracklist_random().

static gboolean stop_cb ( void *  unused) [static]

Definition at line 496 of file dbus.c.

Referenced by audacious_rc_stop(), and mpris_player_stop().

static GList* string_array_to_list ( gchar **  strings) [static]
static void tuple_insert_to_hash ( GHashTable *  md,
const Tuple tuple,
const gchar *  key 
) [static]

Definition at line 283 of file dbus.c.

Referenced by make_mpris_metadata().

static void tuple_insert_to_hash_full ( GHashTable *  md,
const Tuple tuple,
const gchar *  tuple_key,
const gchar *  key 
) [static]

Retrieves value named tuple_key and inserts it inside hash table.

Parameters:
[in,out]mdGHashTable to insert into
[in]tupleTuple to read data from
[in]tuple_keyTuple field key
[in]keykey used for inserting into hash table.

Definition at line 275 of file dbus.c.

Referenced by make_mpris_metadata(), and tuple_insert_to_hash().

static GValue* tuple_value_to_gvalue ( const Tuple tuple,
const gchar *  key 
) [static]

Definition at line 245 of file dbus.c.

Referenced by get_field_cb(), and tuple_insert_to_hash_full().


Variable Documentation

DBusGConnection* dbus_conn = NULL [static]
GCond* info_cond [static]
GMutex* info_mutex [static]
GThread* main_thread [static]
MprisPlayer* mpris = NULL

Definition at line 92 of file dbus.c.

guint signals[LAST_SIG] = { 0 } [static]
guint tracklist_signals[LAST_TRACKLIST_SIG] = { 0 } [static]

Definition at line 90 of file dbus.c.

Referenced by mpris_emit_tracklist_change(), and mpris_tracklist_class_init().