00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION)
00024 #error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents."
00025 #endif
00026
00027 #ifndef DBUS_SERVER_H
00028 #define DBUS_SERVER_H
00029
00030 #include <dbus/dbus-errors.h>
00031 #include <dbus/dbus-message.h>
00032 #include <dbus/dbus-connection.h>
00033 #include <dbus/dbus-protocol.h>
00034
00035 DBUS_BEGIN_DECLS;
00036
00037 typedef struct DBusServer DBusServer;
00038
00039 typedef void (* DBusNewConnectionFunction) (DBusServer *server,
00040 DBusConnection *new_connection,
00041 void *data);
00042
00043 DBusServer* dbus_server_listen (const char *address,
00044 DBusError *error);
00045 DBusServer* dbus_server_ref (DBusServer *server);
00046 void dbus_server_unref (DBusServer *server);
00047 void dbus_server_disconnect (DBusServer *server);
00048 dbus_bool_t dbus_server_get_is_connected (DBusServer *server);
00049 char* dbus_server_get_address (DBusServer *server);
00050 void dbus_server_set_new_connection_function (DBusServer *server,
00051 DBusNewConnectionFunction function,
00052 void *data,
00053 DBusFreeFunction free_data_function);
00054 dbus_bool_t dbus_server_set_watch_functions (DBusServer *server,
00055 DBusAddWatchFunction add_function,
00056 DBusRemoveWatchFunction remove_function,
00057 DBusWatchToggledFunction toggled_function,
00058 void *data,
00059 DBusFreeFunction free_data_function);
00060 dbus_bool_t dbus_server_set_timeout_functions (DBusServer *server,
00061 DBusAddTimeoutFunction add_function,
00062 DBusRemoveTimeoutFunction remove_function,
00063 DBusTimeoutToggledFunction toggled_function,
00064 void *data,
00065 DBusFreeFunction free_data_function);
00066 dbus_bool_t dbus_server_set_auth_mechanisms (DBusServer *server,
00067 const char **mechanisms);
00068
00069 dbus_bool_t dbus_server_allocate_data_slot (dbus_int32_t *slot_p);
00070 void dbus_server_free_data_slot (dbus_int32_t *slot_p);
00071 dbus_bool_t dbus_server_set_data (DBusServer *server,
00072 int slot,
00073 void *data,
00074 DBusFreeFunction free_data_func);
00075 void* dbus_server_get_data (DBusServer *server,
00076 int slot);
00077
00078 DBUS_END_DECLS;
00079
00080 #endif