From 1e4b86af1ae16b9eeb4f952f2735b65536bcdc7c Mon Sep 17 00:00:00 2001 From: Kristian Høgsberg Date: Sun, 23 Nov 2008 23:41:08 -0500 Subject: Expose screenshooting as an interface, drop SIGUSR hack. This pulls in a bit of extra infrastructure for discovering adertised objects on the client side. --- wayland.h | 35 ++++------------------------------- 1 file changed, 4 insertions(+), 31 deletions(-) (limited to 'wayland.h') diff --git a/wayland.h b/wayland.h index ddfe0d2..d15229f 100644 --- a/wayland.h +++ b/wayland.h @@ -2,28 +2,7 @@ #define WAYLAND_H #include - -/* GCC visibility */ -#if defined(__GNUC__) && __GNUC__ >= 4 -#define WL_EXPORT __attribute__ ((visibility("default"))) -#else -#define WL_EXPORT -#endif - -#define ARRAY_LENGTH(a) (sizeof (a) / sizeof (a)[0]) - -#define container_of(ptr, type, member) ({ \ - const typeof( ((type *)0)->member ) *__mptr = (ptr); \ - (type *)( (char *)__mptr - offsetof(type,member) );}) - -struct wl_list { - struct wl_list *prev; - struct wl_list *next; -}; - -void wl_list_init(struct wl_list *list); -void wl_list_insert(struct wl_list *list, struct wl_list *elm); -void wl_list_remove(struct wl_list *elm); +#include "wayland-util.h" enum { WL_EVENT_READABLE = 0x01, @@ -52,15 +31,6 @@ struct wl_event_source *wl_event_loop_add_idle(struct wl_event_loop *loop, wl_event_loop_idle_func_t func, void *data); -struct wl_hash { - struct wl_object **objects; - uint32_t count, alloc, id; -}; - -int wl_hash_insert(struct wl_hash *hash, struct wl_object *object); -struct wl_object *wl_hash_lookup(struct wl_hash *hash, uint32_t id); -void wl_hash_delete(struct wl_hash *hash, struct wl_object *object); - struct wl_client; enum { @@ -122,8 +92,11 @@ void wl_surface_iterator_destroy(struct wl_surface_iterator *iterator); struct wl_object * wl_input_device_create(struct wl_display *display, const char *path, uint32_t id); +void +wl_display_add_object(struct wl_display *display, struct wl_object *object); int wl_display_add_global(struct wl_display *display, struct wl_object *object); + void wl_display_post_relative_event(struct wl_display *display, struct wl_object *source, int dx, int dy); -- cgit