/* org.buddiesofbudgie.budgie-desktop.raven.widget.MediaControls.h generated by valac 0.56.18-dirty, the Vala compiler, do not modify */

#ifndef __SRC_RAVEN_WIDGETS_MEDIA_CONTROLS_ORG_BUDDIESOFBUDGIE_BUDGIE_DESKTOP_RAVEN_WIDGET_MEDIACONTROLS_H__
#define __SRC_RAVEN_WIDGETS_MEDIA_CONTROLS_ORG_BUDDIESOFBUDGIE_BUDGIE_DESKTOP_RAVEN_WIDGET_MEDIACONTROLS_H__

#include <libpeas.h>
#include "raven-plugin.h"
#include <glib-object.h>
#include <stdlib.h>
#include <string.h>
#include <glib.h>
#include <gio/gio.h>
#include <float.h>
#include <math.h>
#include <gtk/gtk.h>

G_BEGIN_DECLS

#if !defined(VALA_EXTERN)
#if defined(_MSC_VER)
#define VALA_EXTERN __declspec(dllexport) extern
#elif __GNUC__ >= 4
#define VALA_EXTERN __attribute__((visibility("default"))) extern
#else
#define VALA_EXTERN extern
#endif
#endif

#define TYPE_MEDIA_CONTROLS_RAVEN_PLUGIN (media_controls_raven_plugin_get_type ())
#define MEDIA_CONTROLS_RAVEN_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_CONTROLS_RAVEN_PLUGIN, MediaControlsRavenPlugin))
#define MEDIA_CONTROLS_RAVEN_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_CONTROLS_RAVEN_PLUGIN, MediaControlsRavenPluginClass))
#define IS_MEDIA_CONTROLS_RAVEN_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_CONTROLS_RAVEN_PLUGIN))
#define IS_MEDIA_CONTROLS_RAVEN_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_CONTROLS_RAVEN_PLUGIN))
#define MEDIA_CONTROLS_RAVEN_PLUGIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_CONTROLS_RAVEN_PLUGIN, MediaControlsRavenPluginClass))

typedef struct _MediaControlsRavenPlugin MediaControlsRavenPlugin;
typedef struct _MediaControlsRavenPluginClass MediaControlsRavenPluginClass;
typedef struct _MediaControlsRavenPluginPrivate MediaControlsRavenPluginPrivate;

#define TYPE_MEDIA_CONTROLS_RAVEN_WIDGET (media_controls_raven_widget_get_type ())
#define MEDIA_CONTROLS_RAVEN_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_CONTROLS_RAVEN_WIDGET, MediaControlsRavenWidget))
#define MEDIA_CONTROLS_RAVEN_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_CONTROLS_RAVEN_WIDGET, MediaControlsRavenWidgetClass))
#define IS_MEDIA_CONTROLS_RAVEN_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_CONTROLS_RAVEN_WIDGET))
#define IS_MEDIA_CONTROLS_RAVEN_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_CONTROLS_RAVEN_WIDGET))
#define MEDIA_CONTROLS_RAVEN_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_CONTROLS_RAVEN_WIDGET, MediaControlsRavenWidgetClass))

typedef struct _MediaControlsRavenWidget MediaControlsRavenWidget;
typedef struct _MediaControlsRavenWidgetClass MediaControlsRavenWidgetClass;
typedef struct _MediaControlsRavenWidgetPrivate MediaControlsRavenWidgetPrivate;

#define TYPE_MPRIS_CLIENT (mpris_client_get_type ())
#define MPRIS_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MPRIS_CLIENT, MprisClient))
#define MPRIS_CLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MPRIS_CLIENT, MprisClientClass))
#define IS_MPRIS_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MPRIS_CLIENT))
#define IS_MPRIS_CLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MPRIS_CLIENT))
#define MPRIS_CLIENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MPRIS_CLIENT, MprisClientClass))

typedef struct _MprisClient MprisClient;
typedef struct _MprisClientClass MprisClientClass;
typedef struct _MprisClientPrivate MprisClientPrivate;

#define TYPE_MPRIS_PLAYER_IFACE (mpris_player_iface_get_type ())
#define MPRIS_PLAYER_IFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MPRIS_PLAYER_IFACE, MprisPlayerIface))
#define IS_MPRIS_PLAYER_IFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MPRIS_PLAYER_IFACE))
#define MPRIS_PLAYER_IFACE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_MPRIS_PLAYER_IFACE, MprisPlayerIfaceIface))

typedef struct _MprisPlayerIface MprisPlayerIface;
typedef struct _MprisPlayerIfaceIface MprisPlayerIfaceIface;

#define TYPE_MPRIS_IFACE (mpris_iface_get_type ())
#define MPRIS_IFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MPRIS_IFACE, MprisIface))
#define IS_MPRIS_IFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MPRIS_IFACE))
#define MPRIS_IFACE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_MPRIS_IFACE, MprisIfaceIface))

typedef struct _MprisIface MprisIface;
typedef struct _MprisIfaceIface MprisIfaceIface;

#define TYPE_MPRIS_IFACE_PROXY (mpris_iface_proxy_get_type ())

#define TYPE_MPRIS_PLAYER_IFACE_PROXY (mpris_player_iface_proxy_get_type ())

#define TYPE_MPRIS_DBUS_PROP_IFACE (mpris_dbus_prop_iface_get_type ())
#define MPRIS_DBUS_PROP_IFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MPRIS_DBUS_PROP_IFACE, MprisDbusPropIface))
#define IS_MPRIS_DBUS_PROP_IFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MPRIS_DBUS_PROP_IFACE))
#define MPRIS_DBUS_PROP_IFACE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_MPRIS_DBUS_PROP_IFACE, MprisDbusPropIfaceIface))

typedef struct _MprisDbusPropIface MprisDbusPropIface;
typedef struct _MprisDbusPropIfaceIface MprisDbusPropIfaceIface;

#define TYPE_MPRIS_DBUS_PROP_IFACE_PROXY (mpris_dbus_prop_iface_proxy_get_type ())

#define TYPE_MPRIS_DBUS_IMPL (mpris_dbus_impl_get_type ())
#define MPRIS_DBUS_IMPL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MPRIS_DBUS_IMPL, MprisDBusImpl))
#define IS_MPRIS_DBUS_IMPL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MPRIS_DBUS_IMPL))
#define MPRIS_DBUS_IMPL_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_MPRIS_DBUS_IMPL, MprisDBusImplIface))

typedef struct _MprisDBusImpl MprisDBusImpl;
typedef struct _MprisDBusImplIface MprisDBusImplIface;

#define TYPE_MPRIS_DBUS_IMPL_PROXY (mpris_dbus_impl_proxy_get_type ())

#define TYPE_MPRIS_CLIENT_WIDGET (mpris_client_widget_get_type ())
#define MPRIS_CLIENT_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MPRIS_CLIENT_WIDGET, MprisClientWidget))
#define MPRIS_CLIENT_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MPRIS_CLIENT_WIDGET, MprisClientWidgetClass))
#define IS_MPRIS_CLIENT_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MPRIS_CLIENT_WIDGET))
#define IS_MPRIS_CLIENT_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MPRIS_CLIENT_WIDGET))
#define MPRIS_CLIENT_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MPRIS_CLIENT_WIDGET, MprisClientWidgetClass))

typedef struct _MprisClientWidget MprisClientWidget;
typedef struct _MprisClientWidgetClass MprisClientWidgetClass;
typedef struct _MprisClientWidgetPrivate MprisClientWidgetPrivate;

struct _MediaControlsRavenPlugin {
	PeasExtensionBase parent_instance;
	MediaControlsRavenPluginPrivate * priv;
};

struct _MediaControlsRavenPluginClass {
	PeasExtensionBaseClass parent_class;
};

struct _MediaControlsRavenWidget {
	BudgieRavenWidget parent_instance;
	MediaControlsRavenWidgetPrivate * priv;
};

struct _MediaControlsRavenWidgetClass {
	BudgieRavenWidgetClass parent_class;
};

struct _MprisClient {
	GObject parent_instance;
	MprisClientPrivate * priv;
};

struct _MprisClientClass {
	GObjectClass parent_class;
};

struct _MprisIfaceIface {
	GTypeInterface parent_iface;
	void (*raise) (MprisIface* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*raise_finish) (MprisIface* self, GAsyncResult* _res_, GError** error);
	void (*quit) (MprisIface* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*quit_finish) (MprisIface* self, GAsyncResult* _res_, GError** error);
	gboolean (*get_can_quit) (MprisIface* self);
	void (*set_can_quit) (MprisIface* self, gboolean value);
	gboolean (*get_fullscreen) (MprisIface* self);
	gboolean (*get_can_set_fullscreen) (MprisIface* self);
	gboolean (*get_can_raise) (MprisIface* self);
	gboolean (*get_has_track_list) (MprisIface* self);
	gchar* (*get_identity) (MprisIface* self);
	gchar* (*get_desktop_entry) (MprisIface* self);
	gchar** (*get_supported_uri_schemes) (MprisIface* self, gint* result_length1);
	gchar** (*get_supported_mime_types) (MprisIface* self, gint* result_length1);
};

struct _MprisPlayerIfaceIface {
	GTypeInterface parent_iface;
	void (*next) (MprisPlayerIface* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*next_finish) (MprisPlayerIface* self, GAsyncResult* _res_, GError** error);
	void (*previous) (MprisPlayerIface* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*previous_finish) (MprisPlayerIface* self, GAsyncResult* _res_, GError** error);
	void (*pause) (MprisPlayerIface* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*pause_finish) (MprisPlayerIface* self, GAsyncResult* _res_, GError** error);
	void (*play_pause) (MprisPlayerIface* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*play_pause_finish) (MprisPlayerIface* self, GAsyncResult* _res_, GError** error);
	void (*stop) (MprisPlayerIface* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*stop_finish) (MprisPlayerIface* self, GAsyncResult* _res_, GError** error);
	void (*play) (MprisPlayerIface* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*play_finish) (MprisPlayerIface* self, GAsyncResult* _res_, GError** error);
	void (*seek) (MprisPlayerIface* self, gint64 offset, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*seek_finish) (MprisPlayerIface* self, GAsyncResult* _res_, GError** error);
	void (*open_uri) (MprisPlayerIface* self, const gchar* uri, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*open_uri_finish) (MprisPlayerIface* self, GAsyncResult* _res_, GError** error);
	gchar* (*get_playback_status) (MprisPlayerIface* self);
	gchar* (*get_loop_status) (MprisPlayerIface* self);
	void (*set_loop_status) (MprisPlayerIface* self, const gchar* value);
	gdouble (*get_rate) (MprisPlayerIface* self);
	void (*set_rate) (MprisPlayerIface* self, gdouble value);
	gboolean (*get_shuffle) (MprisPlayerIface* self);
	void (*set_shuffle) (MprisPlayerIface* self, gboolean value);
	GHashTable* (*get_metadata) (MprisPlayerIface* self);
	gdouble (*get_volume) (MprisPlayerIface* self);
	void (*set_volume) (MprisPlayerIface* self, gdouble value);
	gint64 (*get_position) (MprisPlayerIface* self);
	gdouble (*get_minimum_rate) (MprisPlayerIface* self);
	gdouble (*get_maximum_rate) (MprisPlayerIface* self);
	gboolean (*get_can_go_next) (MprisPlayerIface* self);
	gboolean (*get_can_go_previous) (MprisPlayerIface* self);
	gboolean (*get_can_play) (MprisPlayerIface* self);
	gboolean (*get_can_pause) (MprisPlayerIface* self);
	gboolean (*get_can_seek) (MprisPlayerIface* self);
	gboolean (*get_can_control) (MprisPlayerIface* self);
};

struct _MprisDbusPropIfaceIface {
	GTypeInterface parent_iface;
};

struct _MprisDBusImplIface {
	GTypeInterface parent_iface;
	void (*list_names) (MprisDBusImpl* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	gchar** (*list_names_finish) (MprisDBusImpl* self, GAsyncResult* _res_, gint* result_length1, GError** error);
};

struct _MprisClientWidget {
	GtkBox parent_instance;
	MprisClientWidgetPrivate * priv;
};

struct _MprisClientWidgetClass {
	GtkBoxClass parent_class;
};

GType media_controls_raven_plugin_register_type (GTypeModule * module);
VALA_EXTERN GType media_controls_raven_plugin_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MediaControlsRavenPlugin, g_object_unref)
VALA_EXTERN MediaControlsRavenPlugin* media_controls_raven_plugin_new (void);
VALA_EXTERN MediaControlsRavenPlugin* media_controls_raven_plugin_construct (GType object_type);
GType media_controls_raven_widget_register_type (GTypeModule * module);
VALA_EXTERN GType media_controls_raven_widget_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MediaControlsRavenWidget, g_object_unref)
VALA_EXTERN MediaControlsRavenWidget* media_controls_raven_widget_new (const gchar* uuid,
                                                           GSettings* settings);
VALA_EXTERN MediaControlsRavenWidget* media_controls_raven_widget_construct (GType object_type,
                                                                 const gchar* uuid,
                                                                 GSettings* settings);
VALA_EXTERN void media_controls_raven_widget_setup_dbus (MediaControlsRavenWidget* self,
                                             GAsyncReadyCallback _callback_,
                                             gpointer _user_data_);
VALA_EXTERN void media_controls_raven_widget_setup_dbus_finish (MediaControlsRavenWidget* self,
                                                    GAsyncResult* _res_);
VALA_EXTERN void peas_register_types (GTypeModule* module);
GType mpris_client_register_type (GTypeModule * module);
VALA_EXTERN GType mpris_client_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MprisClient, g_object_unref)
VALA_EXTERN GType mpris_iface_proxy_get_type (void) G_GNUC_CONST ;
VALA_EXTERN void mpris_iface_proxy_register_dynamic_type (GTypeModule* module);
VALA_EXTERN guint mpris_iface_register_object (void* object,
                                   GDBusConnection* connection,
                                   const gchar* path,
                                   GError** error);
GType mpris_iface_register_type (GTypeModule * module);
VALA_EXTERN GType mpris_iface_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MprisIface, g_object_unref)
VALA_EXTERN GType mpris_player_iface_proxy_get_type (void) G_GNUC_CONST ;
VALA_EXTERN void mpris_player_iface_proxy_register_dynamic_type (GTypeModule* module);
VALA_EXTERN guint mpris_player_iface_register_object (void* object,
                                          GDBusConnection* connection,
                                          const gchar* path,
                                          GError** error);
GType mpris_player_iface_register_type (GTypeModule * module);
VALA_EXTERN GType mpris_player_iface_get_type (void) G_GNUC_CONST ;
GType mpris_dbus_prop_iface_register_type (GTypeModule * module);
VALA_EXTERN GType mpris_dbus_prop_iface_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MprisDbusPropIface, g_object_unref)
VALA_EXTERN GType mpris_dbus_prop_iface_proxy_get_type (void) G_GNUC_CONST ;
VALA_EXTERN void mpris_dbus_prop_iface_proxy_register_dynamic_type (GTypeModule* module);
VALA_EXTERN guint mpris_dbus_prop_iface_register_object (void* object,
                                             GDBusConnection* connection,
                                             const gchar* path,
                                             GError** error);
VALA_EXTERN MprisClient* mpris_client_new (MprisPlayerIface* player,
                               MprisDbusPropIface* prop);
VALA_EXTERN MprisClient* mpris_client_construct (GType object_type,
                                     MprisPlayerIface* player,
                                     MprisDbusPropIface* prop);
VALA_EXTERN MprisPlayerIface* mpris_client_get_player (MprisClient* self);
VALA_EXTERN void mpris_client_set_player (MprisClient* self,
                              MprisPlayerIface* value);
VALA_EXTERN MprisDbusPropIface* mpris_client_get_prop (MprisClient* self);
VALA_EXTERN void mpris_client_set_prop (MprisClient* self,
                            MprisDbusPropIface* value);
VALA_EXTERN GType mpris_dbus_impl_proxy_get_type (void) G_GNUC_CONST ;
VALA_EXTERN void mpris_dbus_impl_proxy_register_dynamic_type (GTypeModule* module);
VALA_EXTERN guint mpris_dbus_impl_register_object (void* object,
                                       GDBusConnection* connection,
                                       const gchar* path,
                                       GError** error);
GType mpris_dbus_impl_register_type (GTypeModule * module);
VALA_EXTERN GType mpris_dbus_impl_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MprisDBusImpl, g_object_unref)
VALA_EXTERN void mpris_dbus_impl_list_names (MprisDBusImpl* self,
                                 GAsyncReadyCallback _callback_,
                                 gpointer _user_data_);
VALA_EXTERN gchar** mpris_dbus_impl_list_names_finish (MprisDBusImpl* self,
                                           GAsyncResult* _res_,
                                           gint* result_length1,
                                           GError** error);
VALA_EXTERN void mpris_iface_raise (MprisIface* self,
                        GAsyncReadyCallback _callback_,
                        gpointer _user_data_);
VALA_EXTERN void mpris_iface_raise_finish (MprisIface* self,
                               GAsyncResult* _res_,
                               GError** error);
VALA_EXTERN void mpris_iface_quit (MprisIface* self,
                       GAsyncReadyCallback _callback_,
                       gpointer _user_data_);
VALA_EXTERN void mpris_iface_quit_finish (MprisIface* self,
                              GAsyncResult* _res_,
                              GError** error);
VALA_EXTERN gboolean mpris_iface_get_can_quit (MprisIface* self);
VALA_EXTERN void mpris_iface_set_can_quit (MprisIface* self,
                               gboolean value);
VALA_EXTERN gboolean mpris_iface_get_fullscreen (MprisIface* self);
VALA_EXTERN gboolean mpris_iface_get_can_set_fullscreen (MprisIface* self);
VALA_EXTERN gboolean mpris_iface_get_can_raise (MprisIface* self);
VALA_EXTERN gboolean mpris_iface_get_has_track_list (MprisIface* self);
VALA_EXTERN gchar* mpris_iface_get_identity (MprisIface* self);
VALA_EXTERN gchar* mpris_iface_get_desktop_entry (MprisIface* self);
VALA_EXTERN gchar** mpris_iface_get_supported_uri_schemes (MprisIface* self,
                                               gint* result_length1);
VALA_EXTERN gchar** mpris_iface_get_supported_mime_types (MprisIface* self,
                                              gint* result_length1);
VALA_EXTERN void mpris_player_iface_next (MprisPlayerIface* self,
                              GAsyncReadyCallback _callback_,
                              gpointer _user_data_);
VALA_EXTERN void mpris_player_iface_next_finish (MprisPlayerIface* self,
                                     GAsyncResult* _res_,
                                     GError** error);
VALA_EXTERN void mpris_player_iface_previous (MprisPlayerIface* self,
                                  GAsyncReadyCallback _callback_,
                                  gpointer _user_data_);
VALA_EXTERN void mpris_player_iface_previous_finish (MprisPlayerIface* self,
                                         GAsyncResult* _res_,
                                         GError** error);
VALA_EXTERN void mpris_player_iface_pause (MprisPlayerIface* self,
                               GAsyncReadyCallback _callback_,
                               gpointer _user_data_);
VALA_EXTERN void mpris_player_iface_pause_finish (MprisPlayerIface* self,
                                      GAsyncResult* _res_,
                                      GError** error);
VALA_EXTERN void mpris_player_iface_play_pause (MprisPlayerIface* self,
                                    GAsyncReadyCallback _callback_,
                                    gpointer _user_data_);
VALA_EXTERN void mpris_player_iface_play_pause_finish (MprisPlayerIface* self,
                                           GAsyncResult* _res_,
                                           GError** error);
VALA_EXTERN void mpris_player_iface_stop (MprisPlayerIface* self,
                              GAsyncReadyCallback _callback_,
                              gpointer _user_data_);
VALA_EXTERN void mpris_player_iface_stop_finish (MprisPlayerIface* self,
                                     GAsyncResult* _res_,
                                     GError** error);
VALA_EXTERN void mpris_player_iface_play (MprisPlayerIface* self,
                              GAsyncReadyCallback _callback_,
                              gpointer _user_data_);
VALA_EXTERN void mpris_player_iface_play_finish (MprisPlayerIface* self,
                                     GAsyncResult* _res_,
                                     GError** error);
VALA_EXTERN void mpris_player_iface_seek (MprisPlayerIface* self,
                              gint64 offset,
                              GAsyncReadyCallback _callback_,
                              gpointer _user_data_);
VALA_EXTERN void mpris_player_iface_seek_finish (MprisPlayerIface* self,
                                     GAsyncResult* _res_,
                                     GError** error);
VALA_EXTERN void mpris_player_iface_open_uri (MprisPlayerIface* self,
                                  const gchar* uri,
                                  GAsyncReadyCallback _callback_,
                                  gpointer _user_data_);
VALA_EXTERN void mpris_player_iface_open_uri_finish (MprisPlayerIface* self,
                                         GAsyncResult* _res_,
                                         GError** error);
VALA_EXTERN gchar* mpris_player_iface_get_playback_status (MprisPlayerIface* self);
VALA_EXTERN gchar* mpris_player_iface_get_loop_status (MprisPlayerIface* self);
VALA_EXTERN void mpris_player_iface_set_loop_status (MprisPlayerIface* self,
                                         const gchar* value);
VALA_EXTERN gdouble mpris_player_iface_get_rate (MprisPlayerIface* self);
VALA_EXTERN void mpris_player_iface_set_rate (MprisPlayerIface* self,
                                  gdouble value);
VALA_EXTERN gboolean mpris_player_iface_get_shuffle (MprisPlayerIface* self);
VALA_EXTERN void mpris_player_iface_set_shuffle (MprisPlayerIface* self,
                                     gboolean value);
VALA_EXTERN GHashTable* mpris_player_iface_get_metadata (MprisPlayerIface* self);
VALA_EXTERN gdouble mpris_player_iface_get_volume (MprisPlayerIface* self);
VALA_EXTERN void mpris_player_iface_set_volume (MprisPlayerIface* self,
                                    gdouble value);
VALA_EXTERN gint64 mpris_player_iface_get_position (MprisPlayerIface* self);
VALA_EXTERN gdouble mpris_player_iface_get_minimum_rate (MprisPlayerIface* self);
VALA_EXTERN gdouble mpris_player_iface_get_maximum_rate (MprisPlayerIface* self);
VALA_EXTERN gboolean mpris_player_iface_get_can_go_next (MprisPlayerIface* self);
VALA_EXTERN gboolean mpris_player_iface_get_can_go_previous (MprisPlayerIface* self);
VALA_EXTERN gboolean mpris_player_iface_get_can_play (MprisPlayerIface* self);
VALA_EXTERN gboolean mpris_player_iface_get_can_pause (MprisPlayerIface* self);
VALA_EXTERN gboolean mpris_player_iface_get_can_seek (MprisPlayerIface* self);
VALA_EXTERN gboolean mpris_player_iface_get_can_control (MprisPlayerIface* self);
VALA_EXTERN void new_iface (const gchar* busname,
                GAsyncReadyCallback _callback_,
                gpointer _user_data_);
VALA_EXTERN MprisClient* new_iface_finish (GAsyncResult* _res_);
GType mpris_client_widget_register_type (GTypeModule * module);
VALA_EXTERN GType mpris_client_widget_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MprisClientWidget, g_object_unref)
VALA_EXTERN MprisClientWidget* mpris_client_widget_new (MprisClient* client,
                                            gint width);
VALA_EXTERN MprisClientWidget* mpris_client_widget_construct (GType object_type,
                                                  MprisClient* client,
                                                  gint width);
VALA_EXTERN void mpris_client_widget_update_width (MprisClientWidget* self,
                                       gint new_width);
VALA_EXTERN void mpris_client_widget_update_from_meta (MprisClientWidget* self);
VALA_EXTERN GtkWidget* create_row (const gchar* name,
                       const gchar* icon,
                       GIcon* gicon);

G_END_DECLS

#endif
