screen: add ds_tizen_screen
[platform/core/uifw/libds-tizen.git] / include / libds-tizen / screen.h
1 #ifndef LIBDS_TIZEN_SCREEN_H
2 #define LIBDS_TIZEN_SCREEN_H
3
4 #include <stdint.h>
5 #include <wayland-server.h>
6
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10
11 struct ds_tizen_screen;
12 struct ds_tizen_splitscreen;
13 struct ds_tizen_splitscreen_region;
14
15 enum ds_tizen_screen_capability
16 {
17     DS_TIZEN_SCREEN_CAPABILITY_NONE,
18     DS_TIZEN_SCREEN_CAPABILITY_SPLITSCREEN,
19 };
20
21 WL_EXPORT struct ds_tizen_screen *
22 ds_tizen_screen_create(struct wl_display *display);
23
24 WL_EXPORT void
25 ds_tizen_screen_add_capability(struct ds_tizen_screen *screen,
26         enum ds_tizen_screen_capability cap);
27
28 WL_EXPORT void
29 ds_tizen_screen_add_destroy_listener(struct ds_tizen_screen *screen,
30         struct wl_listener *listener);
31
32 WL_EXPORT void
33 ds_tizen_screen_add_get_splitscreen_listener(
34         struct ds_tizen_screen *screen,
35         struct wl_listener *listener);
36
37
38 WL_EXPORT void
39 ds_tizen_splitscreen_add_destroy_listener(
40         struct ds_tizen_splitscreen *splitscreen,
41         struct wl_listener *listener);
42
43 WL_EXPORT void
44 ds_tizen_splitscreen_add_activate_listener(
45         struct ds_tizen_splitscreen *splitscreen,
46         struct wl_listener *listener);
47
48 WL_EXPORT void
49 ds_tizen_splitscreen_add_deactivate_listener(
50         struct ds_tizen_splitscreen *splitscreen,
51         struct wl_listener *listener);
52
53 WL_EXPORT struct ds_tizen_splitscreen_region *
54 ds_tizen_splitscreen_region_create(
55         struct ds_tizen_splitscreen *splitscreen,
56         const char *name, int32_t x, int32_t y, uint32_t w, uint32_t h);
57
58 WL_EXPORT void
59 ds_tizen_splitscreen_region_add_destroy_listener(
60         struct ds_tizen_splitscreen_region *splitscreen_region,
61         struct wl_listener *listener);
62
63 WL_EXPORT void
64 ds_tizen_splitscreen_region_add_assign_appid_listener(
65         struct ds_tizen_splitscreen_region *splitscreen_region,
66         struct wl_listener *listener);
67
68 #ifdef __cplusplus
69 }
70 #endif
71
72 #endif