2 * Copyright (c) 2013, TOYOTA MOTOR CORPORATION.
4 * This program is licensed under the terms and conditions of the
5 * Apache License, version 2.0. The full text of the Apache License is at
6 * http://www.apache.org/licenses/LICENSE-2.0
10 * @brief header file of user experience library for HomeScreen
15 #ifndef _ICO_UXF_PROTO_H_
16 #define _ICO_UXF_PROTO_H_
22 /* Initialize/terminate/MainLoop/Others */
24 int ico_uxf_init(const char *name);
25 /* Initialize(for general application) */
26 int ico_uxf_shutdown(void);
28 void ico_uxf_main_loop_iterate(void);
29 /* Iterate mainLoop */
30 int ico_uxf_callback_set(const unsigned int mask,
31 Ico_Uxf_Event_Cb func, const int arg);
32 /* Add event callback function */
33 int ico_uxf_callback_remove(const unsigned int mask,
34 Ico_Uxf_Event_Cb func, const int arg);
35 /* Remove event callback function */
36 void ico_uxf_timer_wake(const int msec);
40 int ico_uxf_window_event_mask(const int window, const unsigned int mask);
41 /* Set event to receive through the window*/
42 int ico_uxf_window_attribute_get(const int window, Ico_Uxf_WindowAttr *attr);
43 /* Get window attribute */
44 int ico_uxf_window_query_display(const int display, Ico_Uxf_DisplayAttr *attr);
45 /* Get display attribute */
46 int ico_uxf_window_query_displays(Ico_Uxf_DisplayAttr attr[], const int num);
47 /* Get all displays attribute */
48 int ico_uxf_window_query_layer(const int display, const int layer,
49 Ico_Uxf_LayerAttr *attr);
50 /* Get layer attribute */
51 int ico_uxf_window_query_layers(const int display,
52 Ico_Uxf_LayerAttr attr[], const int num);
53 /* Get all layers attribute */
54 int ico_uxf_window_query_windows(const int display,
55 Ico_Uxf_WindowAttr attr[], const int num);
56 /* Get all windows attribute */
57 void ico_uxf_window_screen_size_get(int *width, int *height);
58 /* Get display size */
59 int ico_uxf_window_layer(const int window, const int layer);
60 /* Set window layer */
61 int ico_uxf_layer_visible(const int display, const int layer, const int visible);
63 int ico_uxf_window_show(const int window);
65 int ico_uxf_window_hide(const int window);
67 int ico_uxf_window_visible_animation(const int window, const int show);
68 /* Show/Hide with animation */
69 int ico_uxf_window_visible_raise(const int window,
70 const int visible, const int raise);
71 /* Set window show/hide and raise/lower */
72 int ico_uxf_window_resize(const int window, const int w, const int h);
73 /* Resize window size */
74 int ico_uxf_window_resize_flag(const int window, const int w, const int h, const int flag);
75 /* Resize window size (with option) */
76 int ico_uxf_window_move(const int window, const int x, const int y, const int anima);
78 int ico_uxf_window_raise(const int window);
80 int ico_uxf_window_lower(const int window);
82 int ico_uxf_window_active(const int window, const int target);
84 int ico_uxf_window_animation(const int window, const int type,
85 const char *animation, const int time);
86 /* Set window animation */
87 void ico_uxf_window_animation_control(const int control, const int animation);
88 /* Set animation control */
89 int ico_uxf_window_control(const char *appid, const int winidx,
90 const int control, const int onoff);
91 /* Window visible control from AppsController*/
92 void ico_uxf_window_hook(Ico_Uxf_Hook func);
93 /* Set window control hook */
95 Ico_Uxf_InputDev *ico_uxf_inputdev_attribute_get(const int devidx);
96 /* get input device attribute */
97 Ico_Uxf_InputSw *ico_uxf_inputsw_attribute_get(Ico_Uxf_InputDev *inputdev, const int swidx);
98 /* get input switch attribute */
99 int ico_uxf_input_control(const int add, const char *appid,
100 const char *device, const int input, const int keycode);
101 /* control input switch */
103 int ico_uxf_process_execute(const char *name);
104 /* Start application */
105 int ico_uxf_process_terminate(const char *process);
106 /* Stop application */
107 int ico_uxf_process_attribute_get(const char *process, Ico_Uxf_ProcessAttr *attr);
108 /* Get application status */
109 int ico_uxf_process_is_active(const char *process);
110 /* Get application activity */
111 void *ico_uxf_process_exttable_get(const char *process);
112 /* Get extended table address */
113 int ico_uxf_process_exttable_set(const char *process, void *table);
114 /* Set extended table address */
115 int ico_uxf_process_window_get(const char *process,
116 Ico_Uxf_ProcessWin *attr, const int num);
117 /* Get all windows of one application */
118 int ico_uxf_process_window_get_one(const char *process,
119 Ico_Uxf_ProcessWin *attr, const int winidx);
120 /* Get one windows of one application */
121 int ico_uxf_process_query_processes(Ico_Uxf_ProcessAttr attr[], const int num);
122 /* Get all aplications attribute */
123 void ico_uxf_set_lastapp(const char *appid);
124 /* Set/Reset last application */
125 char *ico_uxf_getchild_appid(const char *appid);
126 /* Get child applicationId */
128 /* Wayland depend function */
129 int ico_uxf_wl_display_fd(void);
130 /* Get wayland connect file descriptor */
131 struct wl_display *ico_uxf_wl_display(void);
132 /* Get wayland display */
136 #endif /* _ICO_UXF_PROTO_H_ */