+int
+sigchld_handler(int signal_number, void *data);
+
+void
+shell_send_app_state(struct ivi_compositor *ivi, const char *app_id,
+ enum agl_shell_app_state state);
+void
+ivi_layout_restore(struct ivi_compositor *ivi, struct ivi_output *n_output);
+
+void
+ivi_layout_save(struct ivi_compositor *ivi, struct ivi_output *output);
+
+struct weston_output *
+get_default_output(struct weston_compositor *compositor);
+
+struct weston_output *
+get_focused_output(struct weston_compositor *compositor);
+
+void
+shell_send_app_on_output(struct ivi_compositor *ivi, const char *app_id,
+ const char *output_name);
+bool
+ivi_surface_count_one(struct ivi_output *ivi_output,
+ enum ivi_surface_role role);
+
+int
+parse_activation_area(const char *geometry, struct ivi_output *output);
+
+bool
+is_shell_surface_xwayland(struct ivi_surface *surf);
+
+void
+ivi_layout_reset_split_surfaces(struct ivi_compositor *ivi);
+
+void
+_ivi_set_shell_surface_split(struct ivi_surface *surface, struct ivi_output *output,
+ uint32_t orientation, uint32_t width, int32_t sticky,
+ bool to_activate);
+struct ivi_output_config *
+ivi_init_parsed_options(struct weston_compositor *compositor);
+
+void
+ivi_process_destroy(struct wet_process *process, int status, bool call_cleanup);
+
+void
+create_black_curtain_view(struct ivi_output *output);