Imported Upstream version 1.15.1
[deb_xorg-server.git] / config / config-backends.h
CommitLineData
a09e091a
JB
1/*
2 * Copyright © 2006-2007 Daniel Stone
3 *
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the "Software"),
6 * to deal in the Software without restriction, including without limitation
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 * and/or sell copies of the Software, and to permit persons to whom the
9 * Software is furnished to do so, subject to the following conditions:
10 *
11 * The above copyright notice and this permission notice (including the next
12 * paragraph) shall be included in all copies or substantial portions of the
13 * Software.
14 *
15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
18 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21 * DEALINGS IN THE SOFTWARE.
22 *
23 * Author: Daniel Stone <daniel@fooishbar.org>
24 */
25
26#ifdef HAVE_DIX_CONFIG_H
27#include <dix-config.h>
28#endif
29#include "input.h"
30#include "list.h"
31
32void remove_devices(const char *backend, const char *config_info);
33BOOL device_is_duplicate(const char *config_info);
34
35#ifdef CONFIG_UDEV
36int config_udev_pre_init(void);
37int config_udev_init(void);
38void config_udev_fini(void);
39void config_udev_odev_probe(config_odev_probe_proc_ptr probe_callback);
40#else
41
42#ifdef CONFIG_NEED_DBUS
43#include <dbus/dbus.h>
44
45typedef void (*config_dbus_core_connect_hook) (DBusConnection * connection,
46 void *data);
47typedef void (*config_dbus_core_disconnect_hook) (void *data);
48
49struct config_dbus_core_hook {
50 config_dbus_core_connect_hook connect;
51 config_dbus_core_disconnect_hook disconnect;
52 void *data;
53
54 struct config_dbus_core_hook *next;
55};
56
57int config_dbus_core_init(void);
58void config_dbus_core_fini(void);
59int config_dbus_core_add_hook(struct config_dbus_core_hook *hook);
60void config_dbus_core_remove_hook(struct config_dbus_core_hook *hook);
61#endif
62
63#ifdef CONFIG_DBUS_API
64int config_dbus_init(void);
65void config_dbus_fini(void);
66#endif
67
68#ifdef CONFIG_HAL
69int config_hal_init(void);
70void config_hal_fini(void);
71#endif
72#endif
73
74#ifdef CONFIG_WSCONS
75int config_wscons_init(void);
76void config_wscons_fini(void);
77#endif