4 #include <wayland-server.h>
6 #include "libds/surface.h"
11 void (*commit)(struct ds_surface *surface);
15 ds_surface_create(struct wl_client *client, uint32_t version, uint32_t id);
18 ds_surface_from_resource(struct wl_resource *resource);
21 ds_surface_set_role(struct ds_surface *surface,
22 const struct ds_surface_role *role, void *role_data,
23 struct wl_resource *error_resource, uint32_t error_code);
25 const struct ds_surface_role *
26 ds_surface_get_role(struct ds_surface *surface);
29 ds_surface_get_role_data(struct ds_surface *surface);
32 ds_surface_reset_role_data(struct ds_surface *surface);
35 ds_surface_has_buffer(struct ds_surface *surface);
38 ds_surface_is_ancestor_of(struct ds_surface *surface,
39 struct ds_surface *target_surface);
42 ds_surface_is_subsurface(struct ds_surface *surface);
44 struct ds_subsurface *
45 ds_subsurface_create(struct wl_resource *subcomp_resource,
46 struct ds_surface *surface, struct ds_surface *parent,
47 uint32_t version, uint32_t id);
50 ds_surface_get_wl_resource(struct ds_surface *surface);