22 #include "../../SDL_internal.h"
27 #ifdef HAVE_DBUS_DBUS_H
28 #define SDL_USE_LIBDBUS 1
30 #include <dbus/dbus.h>
33 typedef struct SDL_DBusContext {
34 DBusConnection *session_conn;
35 DBusConnection *system_conn;
37 DBusConnection *(*bus_get_private)(DBusBusType, DBusError *);
38 dbus_bool_t (*bus_register)(DBusConnection *, DBusError *);
39 void (*bus_add_match)(DBusConnection *,
const char *, DBusError *);
40 DBusConnection * (*connection_open_private)(
const char *, DBusError *);
41 void (*connection_set_exit_on_disconnect)(DBusConnection *, dbus_bool_t);
42 dbus_bool_t (*connection_get_is_connected)(DBusConnection *);
43 dbus_bool_t (*connection_add_filter)(DBusConnection *, DBusHandleMessageFunction,
void *, DBusFreeFunction);
44 dbus_bool_t (*connection_try_register_object_path)(DBusConnection *,
const char *,
45 const DBusObjectPathVTable *,
void *, DBusError *);
46 dbus_bool_t (*connection_send)(DBusConnection *, DBusMessage *, dbus_uint32_t *);
47 DBusMessage *(*connection_send_with_reply_and_block)(DBusConnection *, DBusMessage *,
int, DBusError *);
48 void (*connection_close)(DBusConnection *);
49 void (*connection_unref)(DBusConnection *);
50 void (*connection_flush)(DBusConnection *);
51 dbus_bool_t (*connection_read_write)(DBusConnection *,
int);
52 DBusDispatchStatus (*connection_dispatch)(DBusConnection *);
53 dbus_bool_t (*message_is_signal)(DBusMessage *,
const char *,
const char *);
54 DBusMessage *(*message_new_method_call)(
const char *,
const char *,
const char *,
const char *);
55 dbus_bool_t (*message_append_args)(DBusMessage *,
int, ...);
56 dbus_bool_t (*message_append_args_valist)(DBusMessage *,
int, va_list);
57 void (*message_iter_init_append)(DBusMessage *, DBusMessageIter *);
58 dbus_bool_t (*message_iter_open_container)(DBusMessageIter *,
int,
const char *, DBusMessageIter *);
59 dbus_bool_t (*message_iter_append_basic)(DBusMessageIter *,
int,
const void *);
60 dbus_bool_t (*message_iter_close_container)(DBusMessageIter *, DBusMessageIter *);
61 dbus_bool_t (*message_get_args)(DBusMessage *, DBusError *,
int, ...);
62 dbus_bool_t (*message_get_args_valist)(DBusMessage *, DBusError *,
int, va_list);
63 dbus_bool_t (*message_iter_init)(DBusMessage *, DBusMessageIter *);
64 dbus_bool_t (*message_iter_next)(DBusMessageIter *);
65 void (*message_iter_get_basic)(DBusMessageIter *,
void *);
66 int (*message_iter_get_arg_type)(DBusMessageIter *);
67 void (*message_iter_recurse)(DBusMessageIter *, DBusMessageIter *);
68 void (*message_unref)(DBusMessage *);
69 dbus_bool_t (*threads_init_default)(
void);
70 void (*error_init)(DBusError *);
71 dbus_bool_t (*error_is_set)(
const DBusError *);
72 void (*error_free)(DBusError *);
73 char *(*get_local_machine_id)(
void);
75 void (*free_string_array)(
char **);
80 extern void SDL_DBus_Init(
void);
81 extern void SDL_DBus_Quit(
void);
82 extern SDL_DBusContext * SDL_DBus_GetContext(
void);
85 extern SDL_bool SDL_DBus_CallMethod(
const char *node,
const char *
path,
const char *interface,
const char *method, ...);
86 extern SDL_bool SDL_DBus_CallVoidMethod(
const char *node,
const char *
path,
const char *interface,
const char *method, ...);
87 extern SDL_bool SDL_DBus_QueryProperty(
const char *node,
const char *
path,
const char *interface,
const char *property,
const int expectedtype,
void *
result);
90 extern SDL_bool SDL_DBus_CallMethodOnConnection(DBusConnection *conn,
const char *node,
const char *
path,
const char *interface,
const char *method, ...);
91 extern SDL_bool SDL_DBus_CallVoidMethodOnConnection(DBusConnection *conn,
const char *node,
const char *
path,
const char *interface,
const char *method, ...);
92 extern SDL_bool SDL_DBus_QueryPropertyOnConnection(DBusConnection *conn,
const char *node,
const char *
path,
const char *interface,
const char *property,
const int expectedtype,
void *
result);
94 extern void SDL_DBus_ScreensaverTickle(
void);
SDL_PRINTF_FORMAT_STRING const char int SDL_PRINTF_FORMAT_STRING const char int SDL_PRINTF_FORMAT_STRING const char int SDL_PRINTF_FORMAT_STRING const char const char SDL_SCANF_FORMAT_STRING const char return SDL_ThreadFunction const char void return Uint32 return Uint32 void
GLsizei const GLchar *const * path
typedef int(__stdcall *FARPROC)()