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,
44 void *, DBusFreeFunction);
45 dbus_bool_t (*connection_try_register_object_path)(DBusConnection *,
const char *,
46 const DBusObjectPathVTable *,
void *, DBusError *);
47 dbus_bool_t (*connection_send)(DBusConnection *, DBusMessage *, dbus_uint32_t *);
48 DBusMessage *(*connection_send_with_reply_and_block)(DBusConnection *, DBusMessage *, int, DBusError *);
49 void (*connection_close)(DBusConnection *);
50 void (*connection_unref)(DBusConnection *);
51 void (*connection_flush)(DBusConnection *);
52 dbus_bool_t (*connection_read_write)(DBusConnection *, int);
53 DBusDispatchStatus (*connection_dispatch)(DBusConnection *);
54 dbus_bool_t (*message_is_signal)(DBusMessage *,
const char *,
const char *);
55 DBusMessage *(*message_new_method_call)(
const char *,
const char *,
const char *,
const char *);
56 dbus_bool_t (*message_append_args)(DBusMessage *, int, ...);
57 dbus_bool_t (*message_append_args_valist)(DBusMessage *, int, va_list);
58 dbus_bool_t (*message_get_args)(DBusMessage *, DBusError *, int, ...);
59 dbus_bool_t (*message_get_args_valist)(DBusMessage *, DBusError *, int, va_list);
60 dbus_bool_t (*message_iter_init)(DBusMessage *, DBusMessageIter *);
61 dbus_bool_t (*message_iter_next)(DBusMessageIter *);
62 void (*message_iter_get_basic)(DBusMessageIter *,
void *);
63 int (*message_iter_get_arg_type)(DBusMessageIter *);
64 void (*message_iter_recurse)(DBusMessageIter *, DBusMessageIter *);
65 void (*message_unref)(DBusMessage *);
66 void (*error_init)(DBusError *);
67 dbus_bool_t (*error_is_set)(
const DBusError *);
68 void (*error_free)(DBusError *);
69 char *(*get_local_machine_id)(
void);
71 void (*free_string_array)(
char **);
76 extern void SDL_DBus_Init(
void);
77 extern void SDL_DBus_Quit(
void);
78 extern SDL_DBusContext * SDL_DBus_GetContext(
void);
81 extern SDL_bool SDL_DBus_CallMethod(
const char *node,
const char *
path,
const char *interface,
const char *method, ...);
82 extern SDL_bool SDL_DBus_CallVoidMethod(
const char *node,
const char *
path,
const char *interface,
const char *method, ...);
83 extern SDL_bool SDL_DBus_QueryProperty(
const char *node,
const char *
path,
const char *interface,
const char *property,
const int expectedtype,
void *
result);
86 extern SDL_bool SDL_DBus_CallMethodOnConnection(DBusConnection *conn,
const char *node,
const char *
path,
const char *interface,
const char *method, ...);
87 extern SDL_bool SDL_DBus_CallVoidMethodOnConnection(DBusConnection *conn,
const char *node,
const char *
path,
const char *interface,
const char *method, ...);
88 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);
90 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