Revert "[3.0] Add default value into window member data"
[platform/core/uifw/dali-adaptor.git] / adaptors / wayland / tizen-extension-client-protocol.h
1 #ifndef TIZEN_EXTENSION_CLIENT_PROTOCOL_H
2 #define TIZEN_EXTENSION_CLIENT_PROTOCOL_H
3
4 #ifdef  __cplusplus
5 extern "C" {
6 #endif
7
8 #include <stdint.h>
9 #include <stddef.h>
10 #include "wayland-client.h"
11
12 struct wl_client;
13 struct wl_resource;
14
15 struct tizen_resource;
16 struct tizen_surface_extension;
17 struct wl_surface;
18
19 extern const struct wl_interface tizen_resource_interface;
20 extern const struct wl_interface tizen_surface_extension_interface;
21 extern const struct wl_interface wl_surface_interface;
22
23 struct tizen_resource_listener {
24         /**
25          * resource_id - (none)
26          * @id: (none)
27          */
28         void (*resource_id)(void *data,
29                             struct tizen_resource *tizen_resource,
30                             uint32_t id);
31 };
32
33 static inline int
34 tizen_resource_add_listener(struct tizen_resource *tizen_resource,
35                             const struct tizen_resource_listener *listener, void *data)
36 {
37         return wl_proxy_add_listener((struct wl_proxy *) tizen_resource,
38                                      (void (**)(void)) listener, data);
39 }
40
41 #define TIZEN_RESOURCE_DESTROY  0
42
43 static inline void
44 tizen_resource_set_user_data(struct tizen_resource *tizen_resource, void *user_data)
45 {
46         wl_proxy_set_user_data((struct wl_proxy *) tizen_resource, user_data);
47 }
48
49 static inline void *
50 tizen_resource_get_user_data(struct tizen_resource *tizen_resource)
51 {
52         return wl_proxy_get_user_data((struct wl_proxy *) tizen_resource);
53 }
54
55 static inline void
56 tizen_resource_destroy(struct tizen_resource *tizen_resource)
57 {
58         wl_proxy_marshal((struct wl_proxy *) tizen_resource,
59                          TIZEN_RESOURCE_DESTROY);
60
61         wl_proxy_destroy((struct wl_proxy *) tizen_resource);
62 }
63
64 #define TIZEN_SURFACE_EXTENSION_GET_TIZEN_RESOURCE      0
65
66 static inline void
67 tizen_surface_extension_set_user_data(struct tizen_surface_extension *tizen_surface_extension, void *user_data)
68 {
69         wl_proxy_set_user_data((struct wl_proxy *) tizen_surface_extension, user_data);
70 }
71
72 static inline void *
73 tizen_surface_extension_get_user_data(struct tizen_surface_extension *tizen_surface_extension)
74 {
75         return wl_proxy_get_user_data((struct wl_proxy *) tizen_surface_extension);
76 }
77
78 static inline void
79 tizen_surface_extension_destroy(struct tizen_surface_extension *tizen_surface_extension)
80 {
81         wl_proxy_destroy((struct wl_proxy *) tizen_surface_extension);
82 }
83
84 static inline struct tizen_resource *
85 tizen_surface_extension_get_tizen_resource(struct tizen_surface_extension *tizen_surface_extension, struct wl_surface *surface)
86 {
87         struct wl_proxy *id;
88
89         id = wl_proxy_marshal_constructor((struct wl_proxy *) tizen_surface_extension,
90                          TIZEN_SURFACE_EXTENSION_GET_TIZEN_RESOURCE, &tizen_resource_interface, NULL, surface);
91
92         return (struct tizen_resource *) id;
93 }
94
95 #ifdef  __cplusplus
96 }
97 #endif
98
99 #endif