diff options
author | Emre Ucan <eucan@de.adit-jv.com> | 2016-02-26 17:12:23 +0100 |
---|---|---|
committer | Wataru Natsume <wataru_natsume@xddp.denso.co.jp> | 2016-06-28 15:22:53 +0900 |
commit | dffef07da4d249f73d30dc5218346cc1437f81f8 (patch) | |
tree | 2d67cb883b46b3061be0eaf18a8d7afa9ed15b58 /weston-ivi-shell | |
parent | 891d93d716ae6c8a763843b0fd0b354de824a3da (diff) | |
download | wayland-ivi-extension-dffef07da4d249f73d30dc5218346cc1437f81f8.tar.gz |
ivi-controller: delete ivi-extension and its header files
Signed-off-by: Emre Ucan <eucan@de.adit-jv.com>
Diffstat (limited to 'weston-ivi-shell')
-rw-r--r-- | weston-ivi-shell/src/ivi-controller-impl.h | 41 | ||||
-rw-r--r-- | weston-ivi-shell/src/ivi-controller-interface.h | 673 | ||||
-rwxr-xr-x | weston-ivi-shell/src/ivi-extension.c | 783 | ||||
-rw-r--r-- | weston-ivi-shell/src/ivi-extension.h | 371 | ||||
-rw-r--r-- | weston-ivi-shell/src/ivi-layout-export.h | 176 |
5 files changed, 0 insertions, 2044 deletions
diff --git a/weston-ivi-shell/src/ivi-controller-impl.h b/weston-ivi-shell/src/ivi-controller-impl.h deleted file mode 100644 index cf5fb6b..0000000 --- a/weston-ivi-shell/src/ivi-controller-impl.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (C) 2015 Advanced Driver Information Technology Joint Venture GmbH - * - * Permission to use, copy, modify, distribute, and sell this software and - * its documentation for any purpose is hereby granted without fee, provided - * that the above copyright notice appear in all copies and that both that - * copyright notice and this permission notice appear in supporting - * documentation, and that the name of the copyright holders not be used in - * advertising or publicity pertaining to distribution of the software - * without specific, written prior permission. The copyright holders make - * no representations about the suitability of this software for any - * purpose. It is provided "as is" without express or implied warranty. - * - * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS - * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND - * FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY - * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER - * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF - * CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN - * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -#ifndef IVI_CONTROLLER_IMPL_H -#define IVI_CONTROLLER_IMPL_H - -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - -void -init_ivi_shell(struct weston_compositor *ec, struct ivishell *shell); - -int -setup_ivi_controller_server(struct weston_compositor *compositor, - struct ivishell *shell); - -#ifdef __cplusplus -} /**/ -#endif /* __cplusplus */ - -#endif diff --git a/weston-ivi-shell/src/ivi-controller-interface.h b/weston-ivi-shell/src/ivi-controller-interface.h deleted file mode 100644 index cdafcc9..0000000 --- a/weston-ivi-shell/src/ivi-controller-interface.h +++ /dev/null @@ -1,673 +0,0 @@ -/* - * Copyright (C) 2013 DENSO CORPORATION - * - * Permission to use, copy, modify, distribute, and sell this software and - * its documentation for any purpose is hereby granted without fee, provided - * that the above copyright notice appear in all copies and that both that - * copyright notice and this permission notice appear in supporting - * documentation, and that the name of the copyright holders not be used in - * advertising or publicity pertaining to distribution of the software - * without specific, written prior permission. The copyright holders make - * no representations about the suitability of this software for any - * purpose. It is provided "as is" without express or implied warranty. - * - * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS - * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND - * FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY - * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER - * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF - * CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN - * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -/** - * The ivi-layout library supports API set of controlling properties of - * surface and layer which groups surfaces. An unique ID whose type is integer - * is required to create surface and layer. With the unique ID, surface and - * layer are identified to control them. The API set consists of APIs to control - * properties of surface and layers about followings, - * - visibility. - * - opacity. - * - clipping (x,y,width,height). - * - position and size of it to be displayed. - * - orientation per 90 degree. - * - add or remove surfaces to a layer. - * - order of surfaces/layers in layer/screen to be displayed. - * - commit to apply property changes. - * - notifications of property change. - * - * Management of surfaces and layers grouping these surfaces are common - * way in In-Vehicle Infotainment system, which integrate several domains - * in one system. A layer is allocated to a domain in order to control - * application surfaces grouped to the layer all together. - * - * This API and ABI follow following specifications. - * http://projects.genivi.org/wayland-ivi-extension/layer-manager-apis - */ - -#ifndef _IVI_CONTROLLER_INTERFACE_H_ -#define _IVI_CONTROLLER_INTERFACE_H_ - -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - -#include "ivi-layout-export.h" - -struct ivi_controller_interface { - - /** - * \brief Commit all changes and execute all enqueued commands since - * last commit. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*commit_changes)(void); - - /** - * surface controller interface - */ - - /** - * \brief register/unregister for notification when ivi_surface is created - */ - int32_t (*add_notification_create_surface)( - surface_create_notification_func callback, - void *userdata); - - void (*remove_notification_create_surface)( - surface_create_notification_func callback, - void *userdata); - - /** - * \brief register/unregister for notification when ivi_surface is removed - */ - int32_t (*add_notification_remove_surface)( - surface_remove_notification_func callback, - void *userdata); - - void (*remove_notification_remove_surface)( - surface_remove_notification_func callback, - void *userdata); - - /** - * \brief register/unregister for notification when ivi_surface is configured - */ - int32_t (*add_notification_configure_surface)( - surface_configure_notification_func callback, - void *userdata); - - void (*remove_notification_configure_surface)( - surface_configure_notification_func callback, - void *userdata); - - /** - * \brief Get all ivi_surfaces which are currently registered and managed - * by the services - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*get_surfaces)(int32_t *pLength, struct ivi_layout_surface ***ppArray); - - /** - * \brief get id of ivi_surface from ivi_layout_surface - * - * \return id of ivi_surface - */ - uint32_t (*get_id_of_surface)(struct ivi_layout_surface *ivisurf); - - /** - * \brief get ivi_layout_surface from id of ivi_surface - * - * \return (struct ivi_layout_surface *) - * if the method call was successful - * \return NULL if the method call was failed - */ - struct ivi_layout_surface * - (*get_surface_from_id)(uint32_t id_surface); - - /** - * \brief get ivi_layout_surface_properties from ivisurf - * - * \return (struct ivi_layout_surface_properties *) - * if the method call was successful - * \return NULL if the method call was failed - */ - const struct ivi_layout_surface_properties * - (*get_properties_of_surface)(struct ivi_layout_surface *ivisurf); - - /** - * \brief Get all Surfaces which are currently registered to a given - * layer and are managed by the services - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*get_surfaces_on_layer)(struct ivi_layout_layer *ivilayer, - int32_t *pLength, - struct ivi_layout_surface ***ppArray); - - /** - * \brief Set the visibility of a ivi_surface. - * - * If a surface is not visible it will not be rendered. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*surface_set_visibility)(struct ivi_layout_surface *ivisurf, - bool newVisibility); - - /** - * \brief Get the visibility of a surface. - * - * If a surface is not visible it will not be rendered. - * - * \return true if surface is visible - * \return false if surface is invisible or the method call was failed - */ - bool (*surface_get_visibility)(struct ivi_layout_surface *ivisurf); - - /** - * \brief Set the opacity of a surface. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*surface_set_opacity)(struct ivi_layout_surface *ivisurf, - wl_fixed_t opacity); - - /** - * \brief Get the opacity of a ivi_surface. - * - * \return opacity if the method call was successful - * \return wl_fixed_from_double(0.0) if the method call was failed - */ - wl_fixed_t (*surface_get_opacity)(struct ivi_layout_surface *ivisurf); - - /** - * \brief Set the area of a ivi_surface which should be used for the rendering. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*surface_set_source_rectangle)(struct ivi_layout_surface *ivisurf, - int32_t x, int32_t y, - int32_t width, int32_t height); - - /** - * \brief Set the destination area of a ivi_surface within a ivi_layer - * for rendering. - * - * The surface will be scaled to this rectangle for rendering. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*surface_set_destination_rectangle)(struct ivi_layout_surface *ivisurf, - int32_t x, int32_t y, - int32_t width, int32_t height); - - /** - * \brief Sets the horizontal and vertical position of the surface. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*surface_set_position)(struct ivi_layout_surface *ivisurf, - int32_t dest_x, int32_t dest_y); - - /** - * \brief Get the horizontal and vertical position of the surface. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*surface_get_position)(struct ivi_layout_surface *ivisurf, - int32_t *dest_x, int32_t *dest_y); - - /** - * \brief Set the horizontal and vertical dimension of the surface. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*surface_set_dimension)(struct ivi_layout_surface *ivisurf, - int32_t dest_width, int32_t dest_height); - - /** - * \brief Get the horizontal and vertical dimension of the surface. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*surface_get_dimension)(struct ivi_layout_surface *ivisurf, - int32_t *dest_width, int32_t *dest_height); - - /** - * \brief Sets the orientation of a ivi_surface. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*surface_set_orientation)(struct ivi_layout_surface *ivisurf, - enum wl_output_transform orientation); - - /** - * \brief Gets the orientation of a surface. - * - * \return (enum wl_output_transform) - * if the method call was successful - * \return WL_OUTPUT_TRANSFORM_NORMAL if the method call was failed - */ - enum wl_output_transform - (*surface_get_orientation)(struct ivi_layout_surface *ivisurf); - - /** - * \brief Set an observer callback for ivi_surface content status change. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*surface_set_content_observer)( - struct ivi_layout_surface *ivisurf, - ivi_controller_surface_content_callback callback, - void* userdata); - - /** - * \brief register for notification on property changes of ivi_surface - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*surface_add_notification)(struct ivi_layout_surface *ivisurf, - surface_property_notification_func callback, - void *userdata); - - /** - * \brief remove notification on property changes of ivi_surface - */ - void (*surface_remove_notification)(struct ivi_layout_surface *ivisurf); - - /** - * \brief get weston_surface of ivi_surface - */ - struct weston_surface * - (*surface_get_weston_surface)(struct ivi_layout_surface *ivisurf); - - /** - * \brief set type of transition animation - */ - int32_t (*surface_set_transition)(struct ivi_layout_surface *ivisurf, - enum ivi_layout_transition_type type, - uint32_t duration); - - /** - * \brief set duration of transition animation - */ - int32_t (*surface_set_transition_duration)( - struct ivi_layout_surface *ivisurf, - uint32_t duration); - - /** - * layer controller interface - */ - - /** - * \brief register/unregister for notification when ivi_layer is created - */ - int32_t (*add_notification_create_layer)( - layer_create_notification_func callback, - void *userdata); - - void (*remove_notification_create_layer)( - layer_create_notification_func callback, - void *userdata); - - /** - * \brief register/unregister for notification when ivi_layer is removed - */ - int32_t (*add_notification_remove_layer)( - layer_remove_notification_func callback, - void *userdata); - - void (*remove_notification_remove_layer)( - layer_remove_notification_func callback, - void *userdata); - - /** - * \brief Create a ivi_layer which should be managed by the service - * - * \return (struct ivi_layout_layer *) - * if the method call was successful - * \return NULL if the method call was failed - */ - struct ivi_layout_layer * - (*layer_create_with_dimension)(uint32_t id_layer, - int32_t width, int32_t height); - - /** - * \brief Removes a ivi_layer which is currently managed by the service - */ - void (*layer_remove)(struct ivi_layout_layer *ivilayer); - - /** - * \brief Get all ivi_layers which are currently registered and managed - * by the services - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*get_layers)(int32_t *pLength, struct ivi_layout_layer ***ppArray); - - /** - * \brief get id of ivi_layer from ivi_layout_layer - * - * - * \return id of ivi_layer - */ - uint32_t (*get_id_of_layer)(struct ivi_layout_layer *ivilayer); - - /** - * \brief get ivi_layout_layer from id of layer - * - * \return (struct ivi_layout_layer *) - * if the method call was successful - * \return NULL if the method call was failed - */ - struct ivi_layout_layer * (*get_layer_from_id)(uint32_t id_layer); - - /** - * \brief Get the ivi_layer properties - * - * \return (const struct ivi_layout_layer_properties *) - * if the method call was successful - * \return NULL if the method call was failed - */ - const struct ivi_layout_layer_properties * - (*get_properties_of_layer)(struct ivi_layout_layer *ivilayer); - - /** - * \brief Get all ivi_ayers under the given ivi_surface - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*get_layers_under_surface)(struct ivi_layout_surface *ivisurf, - int32_t *pLength, - struct ivi_layout_layer ***ppArray); - - /** - * \brief Get all Layers of the given screen - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*get_layers_on_screen)(struct ivi_layout_screen *iviscrn, - int32_t *pLength, - struct ivi_layout_layer ***ppArray); - - /** - * \brief Set the visibility of a ivi_layer. If a ivi_layer is not visible, - * the ivi_layer and its ivi_surfaces will not be rendered. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*layer_set_visibility)(struct ivi_layout_layer *ivilayer, - bool newVisibility); - - /** - * \brief Get the visibility of a layer. If a layer is not visible, - * the layer and its surfaces will not be rendered. - * - * \return true if layer is visible - * \return false if layer is invisible or the method call was failed - */ - bool (*layer_get_visibility)(struct ivi_layout_layer *ivilayer); - - /** - * \brief Set the opacity of a ivi_layer. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*layer_set_opacity)(struct ivi_layout_layer *ivilayer, - wl_fixed_t opacity); - - /** - * \brief Get the opacity of a ivi_layer. - * - * \return opacity if the method call was successful - * \return wl_fixed_from_double(0.0) if the method call was failed - */ - wl_fixed_t (*layer_get_opacity)(struct ivi_layout_layer *ivilayer); - - /** - * \brief Set the area of a ivi_layer which should be used for the rendering. - * - * Only this part will be visible. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*layer_set_source_rectangle)(struct ivi_layout_layer *ivilayer, - int32_t x, int32_t y, - int32_t width, int32_t height); - - /** - * \brief Set the destination area on the display for a ivi_layer. - * - * The ivi_layer will be scaled and positioned to this rectangle - * for rendering - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*layer_set_destination_rectangle)(struct ivi_layout_layer *ivilayer, - int32_t x, int32_t y, - int32_t width, int32_t height); - - /** - * \brief Sets the horizontal and vertical position of the ivi_layer. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*layer_set_position)(struct ivi_layout_layer *ivilayer, - int32_t dest_x, int32_t dest_y); - - /** - * \brief Get the horizontal and vertical position of the ivi_layer. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*layer_get_position)(struct ivi_layout_layer *ivilayer, - int32_t *dest_x, int32_t *dest_y); - - /** - * \brief Set the horizontal and vertical dimension of the layer. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*layer_set_dimension)(struct ivi_layout_layer *ivilayer, - int32_t dest_width, int32_t dest_height); - - /** - * \brief Get the horizontal and vertical dimension of the layer. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*layer_get_dimension)(struct ivi_layout_layer *ivilayer, - int32_t *dest_width, int32_t *dest_height); - - /** - * \brief Sets the orientation of a ivi_layer. - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*layer_set_orientation)(struct ivi_layout_layer *ivilayer, - enum wl_output_transform orientation); - - /** - * \brief Gets the orientation of a layer. - * - * \return (enum wl_output_transform) - * if the method call was successful - * \return WL_OUTPUT_TRANSFORM_NORMAL if the method call was failed - */ - enum wl_output_transform - (*layer_get_orientation)(struct ivi_layout_layer *ivilayer); - - /** - * \brief Add a ivi_surface to a ivi_layer which is currently managed by the service - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*layer_add_surface)(struct ivi_layout_layer *ivilayer, - struct ivi_layout_surface *addsurf); - - /** - * \brief Removes a surface from a layer which is currently managed by the service - */ - void (*layer_remove_surface)(struct ivi_layout_layer *ivilayer, - struct ivi_layout_surface *remsurf); - - /** - * \brief Sets render order of ivi_surfaces within a ivi_layer - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*layer_set_render_order)(struct ivi_layout_layer *ivilayer, - struct ivi_layout_surface **pSurface, - int32_t number); - - /** - * \brief register for notification on property changes of ivi_layer - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*layer_add_notification)(struct ivi_layout_layer *ivilayer, - layer_property_notification_func callback, - void *userdata); - - /** - * \brief remove notification on property changes of ivi_layer - */ - void (*layer_remove_notification)(struct ivi_layout_layer *ivilayer); - - /** - * \brief set type of transition animation - */ - int32_t (*layer_set_transition)(struct ivi_layout_layer *ivilayer, - enum ivi_layout_transition_type type, - uint32_t duration); - - /** - * screen controller interface - */ - - /** - * \brief get ivi_layout_screen from id of ivi_screen - * - * \return (struct ivi_layout_screen *) - * if the method call was successful - * \return NULL if the method call was failed - */ - struct ivi_layout_screen * - (*get_screen_from_id)(uint32_t id_screen); - - /** - * \brief Get the screen resolution of a specific ivi_screen - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*get_screen_resolution)(struct ivi_layout_screen *iviscrn, - int32_t *pWidth, - int32_t *pHeight); - - /** - * \brief Get the ivi_screens - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*get_screens)(int32_t *pLength, struct ivi_layout_screen ***ppArray); - - /** - * \brief Get the ivi_screens under the given ivi_layer - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*get_screens_under_layer)(struct ivi_layout_layer *ivilayer, - int32_t *pLength, - struct ivi_layout_screen ***ppArray); - - /** - * \brief Add a ivi_layer to a ivi_screen which is currently managed - * by the service - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*screen_add_layer)(struct ivi_layout_screen *iviscrn, - struct ivi_layout_layer *addlayer); - - /** - * \brief Sets render order of ivi_layers on a ivi_screen - * - * \return IVI_SUCCEEDED if the method call was successful - * \return IVI_FAILED if the method call was failed - */ - int32_t (*screen_set_render_order)(struct ivi_layout_screen *iviscrn, - struct ivi_layout_layer **pLayer, - const int32_t number); - - /** - * \brief get weston_output from ivi_layout_screen. - * - * \return (struct weston_output *) - * if the method call was successful - * \return NULL if the method call was failed - */ - struct weston_output *(*screen_get_output)(struct ivi_layout_screen *); - - - /** - * transision animation for layer - */ - void (*transition_move_layer_cancel)(struct ivi_layout_layer *layer); - int32_t (*layer_set_fade_info)(struct ivi_layout_layer* ivilayer, - uint32_t is_fade_in, - double start_alpha, double end_alpha); - - /** - * surface content dumping for debugging - */ - int32_t (*surface_get_size)(struct ivi_layout_surface *ivisurf, - int32_t *width, int32_t *height, - int32_t *stride); - - int32_t (*surface_dump)(struct weston_surface *surface, - void *target, size_t size, - int32_t x, int32_t y, - int32_t width, int32_t height); - -}; - -#ifdef __cplusplus -} -#endif /* __cplusplus */ - -#endif /* _IVI_CONTROLLER_INTERFACE_H_ */ diff --git a/weston-ivi-shell/src/ivi-extension.c b/weston-ivi-shell/src/ivi-extension.c deleted file mode 100755 index 7014cce..0000000 --- a/weston-ivi-shell/src/ivi-extension.c +++ /dev/null @@ -1,783 +0,0 @@ -/* - * Copyright (C) 2013 DENSO CORPORATION - * - * Permission to use, copy, modify, distribute, and sell this software and - * its documentation for any purpose is hereby granted without fee, provided - * that the above copyright notice appear in all copies and that both that - * copyright notice and this permission notice appear in supporting - * documentation, and that the name of the copyright holders not be used in - * advertising or publicity pertaining to distribution of the software - * without specific, written prior permission. The copyright holders make - * no representations about the suitability of this software for any - * purpose. It is provided "as is" without express or implied warranty. - * - * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS - * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND - * FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY - * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER - * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF - * CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN - * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ -#include <string.h> -#include "ivi-controller-interface.h" -#include "ivi-extension.h" -#include "ivi-controller-impl.h" -#ifdef IVI_SHARE_ENABLE -# include "ivi-share.h" -#endif - -struct ivi_controller_shell { - struct ivishell base; - const struct ivi_controller_interface *interface; -}; - -int32_t -ivi_extension_commit_changes(struct ivishell *shell) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->commit_changes(); -} - -int32_t -ivi_extension_add_notification_create_surface(struct ivishell *shell, - surface_create_notification_func callback, - void *userdata) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->add_notification_create_surface(callback, userdata); -} - -int32_t -ivi_extension_add_notification_remove_surface(struct ivishell *shell, - surface_remove_notification_func callback, - void *userdata) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->add_notification_remove_surface(callback, userdata); -} - -int32_t -ivi_extension_add_notification_create_layer(struct ivishell *shell, - layer_create_notification_func callback, - void *userdata) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->add_notification_create_layer(callback, userdata); -} - -int32_t -ivi_extension_add_notification_remove_layer(struct ivishell *shell, - layer_remove_notification_func callback, - void *userdata) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->add_notification_remove_layer(callback, userdata); -} - -int32_t -ivi_extension_add_notification_configure_surface(struct ivishell *shell, - surface_configure_notification_func callback, - void *userdata) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->add_notification_configure_surface(callback, userdata); -} - -int32_t -ivi_extension_get_surfaces(struct ivishell *shell, - int32_t *pLength, - struct ivi_layout_surface ***ppArray) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->get_surfaces(pLength, ppArray); -} - -uint32_t -ivi_extension_get_id_of_surface(struct ivishell *shell, - struct ivi_layout_surface *ivisurf) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->get_id_of_surface(ivisurf); -} - -struct ivi_layout_surface * -ivi_extension_get_surface_from_id(struct ivishell *shell, uint32_t id_surface) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->get_surface_from_id(id_surface); -} - -const struct ivi_layout_surface_properties * -ivi_extension_get_properties_of_surface(struct ivishell *shell, - struct ivi_layout_surface *ivisurf) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->get_properties_of_surface(ivisurf); -} - -int32_t -ivi_extension_get_surfaces_on_layer(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t *pLength, - struct ivi_layout_surface ***ppArray) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->get_surfaces_on_layer(ivilayer, pLength, ppArray); -} - -int32_t -ivi_extension_surface_set_visibility(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - bool newVisibility) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_set_visibility(ivisurf, newVisibility); -} - -bool -ivi_extension_surface_get_visibility(struct ivishell *shell, - struct ivi_layout_surface *ivisurf) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_get_visibility(ivisurf); -} - -int32_t -ivi_extension_surface_set_opacity(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - wl_fixed_t opacity) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_set_opacity(ivisurf, opacity); -} - -wl_fixed_t -ivi_extension_surface_get_opacity(struct ivishell *shell, - struct ivi_layout_surface *ivisurf) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_get_opacity(ivisurf); -} - -int32_t -ivi_extension_surface_set_source_rectangle(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t x, int32_t y, - int32_t width, int32_t height) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_set_source_rectangle(ivisurf, - x, y, - width, height); -} - -int32_t -ivi_extension_surface_set_destination_rectangle(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t x, int32_t y, - int32_t width, int32_t height) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_set_destination_rectangle(ivisurf, - x, y, - width, height); -} - -int32_t -ivi_extension_surface_set_position(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t dest_x, int32_t dest_y) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_set_position(ivisurf, dest_x, dest_y); -} - -int32_t -ivi_extension_surface_get_position(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t *dest_x, int32_t *dest_y) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_get_position(ivisurf, dest_x, dest_y); -} - -int32_t -ivi_extension_surface_set_dimension(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t dest_width, int32_t dest_height) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_set_dimension(ivisurf, dest_width, dest_height); -} - -int32_t -ivi_extension_surface_get_dimension(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t *dest_width, int32_t *dest_height) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_get_dimension(ivisurf, dest_width, dest_height); -} - -int32_t -ivi_extension_surface_set_orientation(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - enum wl_output_transform orientation) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_set_orientation(ivisurf, orientation); -} - -enum wl_output_transform -ivi_extension_surface_get_orientation(struct ivishell *shell, - struct ivi_layout_surface *ivisurf) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_get_orientation(ivisurf); -} - -int32_t -ivi_extension_surface_set_content_observer(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - ivi_controller_surface_content_callback callback, - void* userdata) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_set_content_observer(ivisurf, callback, userdata); -} - -int32_t -ivi_extension_surface_add_notification(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - surface_property_notification_func callback, - void *userdata) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_add_notification(ivisurf, callback, userdata); -} - -void -ivi_extension_surface_remove_notification(struct ivishell *shell, - struct ivi_layout_surface *ivisurf) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - controller_shell->interface->surface_remove_notification(ivisurf); -} - -struct weston_surface * -ivi_extension_surface_get_weston_surface(struct ivishell *shell, - struct ivi_layout_surface *ivisurf) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_get_weston_surface(ivisurf); -} - -int32_t -ivi_extension_surface_set_transition(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - enum ivi_layout_transition_type type, - uint32_t duration) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_set_transition(ivisurf, type, duration); -} - -int32_t -ivi_extension_surface_set_transition_duration(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - uint32_t duration) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_set_transition_duration(ivisurf, duration); -} - -int32_t -ivi_extension_surface_dump(struct ivishell *shell, - struct weston_surface *surface, - void *target, - size_t size, - int32_t x, - int32_t y, - int32_t width, - int32_t height) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_dump(surface, target, size, x, y, width, height); -} - -int32_t -ivi_extension_surface_get_size(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t *width, - int32_t *height, - int32_t *stride) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->surface_get_size(ivisurf, width, height, stride); -} - -struct ivi_layout_layer * -ivi_extension_layer_create_with_dimension(struct ivishell *shell, - uint32_t id_layer, int32_t width, int32_t height) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_create_with_dimension(id_layer, width, height); -} - -void -ivi_extension_layer_remove(struct ivishell *shell, - struct ivi_layout_layer *ivilayer) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - controller_shell->interface->layer_remove(ivilayer); -} - -int32_t -ivi_extension_get_layers(struct ivishell *shell, - int32_t *pLength, struct ivi_layout_layer ***ppArray) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->get_layers(pLength, ppArray); -} - -uint32_t -ivi_extension_get_id_of_layer(struct ivishell *shell, - struct ivi_layout_layer *ivilayer) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->get_id_of_layer(ivilayer); -} - -struct ivi_layout_layer * -ivi_extension_get_layer_from_id(struct ivishell *shell, uint32_t id_layer) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->get_layer_from_id(id_layer); -} - -const struct ivi_layout_layer_properties * -ivi_extension_get_properties_of_layer(struct ivishell *shell, - struct ivi_layout_layer *ivilayer) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->get_properties_of_layer(ivilayer); -} - -int32_t -ivi_extension_get_layers_under_surface(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t *pLength, - struct ivi_layout_layer ***ppArray) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->get_layers_under_surface(ivisurf, - pLength, - ppArray); -} - -int32_t -ivi_extension_get_layers_on_screen(struct ivishell *shell, - struct ivi_layout_screen *iviscrn, - int32_t *pLength, - struct ivi_layout_layer ***ppArray) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->get_layers_on_screen(iviscrn, pLength, ppArray); -} - -int32_t -ivi_extension_layer_set_visibility(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - bool newVisibility) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_set_visibility(ivilayer, newVisibility); -} - -bool -ivi_extension_layer_get_visibility(struct ivishell *shell, - struct ivi_layout_layer *ivilayer) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_get_visibility(ivilayer); -} - -int32_t -ivi_extension_layer_set_opacity(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - wl_fixed_t opacity) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_set_opacity(ivilayer, opacity); -} - -wl_fixed_t -ivi_extension_layer_get_opacity(struct ivishell *shell, - struct ivi_layout_layer *ivilayer) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_get_opacity(ivilayer); -} - -int32_t -ivi_extension_layer_set_source_rectangle(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t x, int32_t y, - int32_t width, int32_t height) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_set_source_rectangle(ivilayer, - x, y, - width, height); -} - -int32_t -ivi_extension_layer_set_destination_rectangle(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t x, int32_t y, - int32_t width, int32_t height) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_set_destination_rectangle(ivilayer, - x, y, - width, height); -} - -int32_t -ivi_extension_layer_set_position(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t dest_x, int32_t dest_y) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_set_position(ivilayer, dest_x, dest_y); -} - -int32_t -ivi_extension_layer_get_position(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t *dest_x, int32_t *dest_y) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_get_position(ivilayer, dest_x, dest_y); -} - -int32_t -ivi_extension_layer_set_dimension(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t dest_width, int32_t dest_height) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_set_dimension(ivilayer, dest_width, dest_height); -} - -int32_t -ivi_extension_layer_get_dimension(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t *dest_width, int32_t *dest_height) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_get_dimension(ivilayer, dest_width, dest_height); -} - -int32_t -ivi_extension_layer_set_orientation(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - enum wl_output_transform orientation) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_set_orientation(ivilayer, orientation); -} - -enum wl_output_transform -ivi_extension_layer_get_orientation(struct ivishell *shell, - struct ivi_layout_layer *ivilayer) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_get_orientation(ivilayer); -} - -int32_t -ivi_extension_layer_add_surface(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - struct ivi_layout_surface *addsurf) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_add_surface(ivilayer, addsurf); -} - -void -ivi_extension_layer_remove_surface(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - struct ivi_layout_surface *remsurf) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - controller_shell->interface->layer_remove_surface(ivilayer, remsurf); -} - -int32_t -ivi_extension_layer_set_render_order(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - struct ivi_layout_surface **pSurface, - int32_t number) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_set_render_order(ivilayer, pSurface, number); -} - -int32_t -ivi_extension_layer_add_notification(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - layer_property_notification_func callback, - void *userdata) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_add_notification(ivilayer, callback, userdata); -} - -void -ivi_extension_layer_remove_notification(struct ivishell *shell, - struct ivi_layout_layer *ivilayer) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - controller_shell->interface->layer_remove_notification(ivilayer); -} - -int32_t -ivi_extension_layer_set_transition(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - enum ivi_layout_transition_type type, - uint32_t duration) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_set_transition(ivilayer, type, duration); -} - -struct ivi_layout_screen * -ivi_extension_get_screen_from_id(struct ivishell *shell, - uint32_t id_screen) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->get_screen_from_id(id_screen); -} - -int32_t -ivi_extension_get_screen_resolution(struct ivishell *shell, - struct ivi_layout_screen *iviscrn, - int32_t *pWidth, - int32_t *pHeight) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->get_screen_resolution(iviscrn, pWidth, pHeight); -} - -int32_t -ivi_extension_get_screens(struct ivishell *shell, - int32_t *pLength, struct ivi_layout_screen ***ppArray) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->get_screens(pLength, ppArray); -} - -int32_t -ivi_extension_get_screens_under_layer(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t *pLength, - struct ivi_layout_screen ***ppArray) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->get_screens_under_layer(ivilayer, - pLength, - ppArray); -} - -int32_t -ivi_extension_screen_add_layer(struct ivishell *shell, - struct ivi_layout_screen *iviscrn, - struct ivi_layout_layer *addlayer) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->screen_add_layer(iviscrn, addlayer); -} - -int32_t -ivi_extension_screen_set_render_order(struct ivishell *shell, - struct ivi_layout_screen *iviscrn, - struct ivi_layout_layer **pLayer, - const int32_t number) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->screen_set_render_order(iviscrn, pLayer, number); -} - -struct weston_output * -ivi_extension_screen_get_output(struct ivishell *shell, - struct ivi_layout_screen *iviscrn) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->screen_get_output(iviscrn); -} - - -void -ivi_extension_transition_move_layer_cancel(struct ivishell *shell, - struct ivi_layout_layer *layer) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - controller_shell->interface->transition_move_layer_cancel(layer); -} - -int32_t -ivi_extension_layer_set_fade_info(struct ivishell *shell, - struct ivi_layout_layer* ivilayer, - uint32_t is_fade_in, - double start_alpha, double end_alpha) -{ - struct ivi_controller_shell *controller_shell = (struct ivi_controller_shell*)shell; - - return controller_shell->interface->layer_set_fade_info(ivilayer, - is_fade_in, - start_alpha, end_alpha); -} - -static int -load_input_module(struct weston_compositor *ec, - const struct ivi_controller_interface *interface, - size_t interface_version) -{ - struct weston_config *config = ec->config; - struct weston_config_section *section; - char *input_module = NULL; - - int (*input_module_init)(struct weston_compositor *ec, - const struct ivi_controller_interface *interface, - size_t interface_version); - - section = weston_config_get_section(config, "ivi-shell", NULL, NULL); - - if (weston_config_section_get_string(section, "ivi-input-module", - &input_module, NULL) < 0) { - /* input events are handled by weston's default grabs */ - weston_log("ivi-controller: No ivi-input-module set\n"); - return 0; - } - - input_module_init = weston_load_module(input_module, "input_controller_module_init"); - if (!input_module_init) - return -1; - - if (input_module_init(ec, interface, - sizeof(struct ivi_controller_interface)) != 0) { - weston_log("ivi-controller: Initialization of input module failes"); - return -1; - } - - free(input_module); - - return 0; -} - -WL_EXPORT int -controller_module_init(struct weston_compositor *compositor, - int *argc, char *argv[], - const struct ivi_controller_interface *interface, - size_t interface_version) -{ - struct ivi_controller_shell *controller_shell; - (void)argc; - (void)argv; - - controller_shell = malloc(sizeof *controller_shell); - if (controller_shell == NULL) - return -1; - - memset(controller_shell, 0, sizeof *controller_shell); - - controller_shell->interface = interface; - - init_ivi_shell(compositor, &controller_shell->base); - -#ifdef IVI_SHARE_ENABLE - if (setup_buffer_sharing(compositor, interface) < 0) { - free(controller_shell); - return -1; - } -#endif - - if (setup_ivi_controller_server(compositor, &controller_shell->base)) { - free(controller_shell); - return -1; - } - - if (load_input_module(compositor, interface, interface_version) < 0) { - free(controller_shell); - return -1; - } - - return 0; -} diff --git a/weston-ivi-shell/src/ivi-extension.h b/weston-ivi-shell/src/ivi-extension.h deleted file mode 100644 index ee7e78b..0000000 --- a/weston-ivi-shell/src/ivi-extension.h +++ /dev/null @@ -1,371 +0,0 @@ -/* - * Copyright (C) 2013 DENSO CORPORATION - * - * Permission to use, copy, modify, distribute, and sell this software and - * its documentation for any purpose is hereby granted without fee, provided - * that the above copyright notice appear in all copies and that both that - * copyright notice and this permission notice appear in supporting - * documentation, and that the name of the copyright holders not be used in - * advertising or publicity pertaining to distribution of the software - * without specific, written prior permission. The copyright holders make - * no representations about the suitability of this software for any - * purpose. It is provided "as is" without express or implied warranty. - * - * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS - * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND - * FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY - * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER - * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF - * CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN - * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ -#ifndef IVI_EXTENSION_H -#define IVI_EXTENSION_H - -#include <stdbool.h> -#include <weston/compositor.h> - -struct ivishell { - struct weston_compositor *compositor; - - struct wl_list list_surface; - struct wl_list list_layer; - struct wl_list list_screen; - - struct wl_list list_controller; -}; - -int32_t -ivi_extension_commit_changes(struct ivishell *shell); - -int -ivi_extension_add_notification_create_surface(struct ivishell *shell, - surface_create_notification_func callback, - void *userdata); - -int -ivi_extension_add_notification_remove_surface(struct ivishell *shell, - surface_remove_notification_func callback, - void *userdata); - -int -ivi_extension_add_notification_create_layer(struct ivishell *shell, - layer_create_notification_func callback, - void *userdata); - -int -ivi_extension_add_notification_remove_layer(struct ivishell *shell, - layer_remove_notification_func callback, - void *userdata); - -int -ivi_extension_add_notification_configure_surface(struct ivishell *shell, - surface_configure_notification_func callback, - void *userdata); - -int32_t -ivi_extension_get_surfaces(struct ivishell *shell, - int32_t *pLength, - struct ivi_layout_surface ***ppArray); - -uint32_t -ivi_extension_get_id_of_surface(struct ivishell *shell, - struct ivi_layout_surface *ivisurf); - -struct ivi_layout_surface * -ivi_extension_get_surface_from_id(struct ivishell *shell, uint32_t id_surface); - -const struct ivi_layout_surface_properties * -ivi_extension_get_properties_of_surface(struct ivishell *shell, - struct ivi_layout_surface *ivisurf); - -int32_t -ivi_extension_get_surfaces_on_layer(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t *pLength, - struct ivi_layout_surface ***ppArray); - -int32_t -ivi_extension_surface_set_visibility(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - bool newVisibility); - -bool -ivi_extension_surface_get_visibility(struct ivishell *shell, - struct ivi_layout_surface *ivisurf); - -int32_t -ivi_extension_surface_set_opacity(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - wl_fixed_t opacity); - -wl_fixed_t -ivi_extension_surface_get_opacity(struct ivishell *shell, - struct ivi_layout_surface *ivisurf); - -int32_t -ivi_extension_surface_set_source_rectangle(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t x, int32_t y, - int32_t width, int32_t height); - -int32_t -ivi_extension_surface_set_destination_rectangle(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t x, int32_t y, - int32_t width, int32_t height); - -int32_t -ivi_extension_surface_set_position(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t dest_x, int32_t dest_y); - -int32_t -ivi_extension_surface_get_position(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t *dest_x, int32_t *dest_y); - -int32_t -ivi_extension_surface_set_dimension(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t dest_width, int32_t dest_height); - -int32_t -ivi_extension_surface_get_dimension(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t *dest_width, int32_t *dest_height); - -int32_t -ivi_extension_surface_set_orientation(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - enum wl_output_transform orientation); - -enum wl_output_transform -ivi_extension_surface_get_orientation(struct ivishell *shell, - struct ivi_layout_surface *ivisurf); - -int32_t -ivi_extension_surface_set_content_observer(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - ivi_controller_surface_content_callback callback, - void* userdata); - -int32_t -ivi_extension_surface_add_notification(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - surface_property_notification_func callback, - void *userdata); - -void -ivi_extension_surface_remove_notification(struct ivishell *shell, - struct ivi_layout_surface *ivisurf); - -struct weston_surface * -ivi_extension_surface_get_weston_surface(struct ivishell *shell, - struct ivi_layout_surface *ivisurf); - -int32_t -ivi_extension_surface_set_transition(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - enum ivi_layout_transition_type type, - uint32_t duration); - -int32_t -ivi_extension_surface_set_transition_duration(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - uint32_t duration); - -int32_t -ivi_extension_surface_dump(struct ivishell *ivishell, - struct weston_surface *surface, - void *target, - size_t size, - int32_t x, - int32_t y, - int32_t width, - int32_t height); - -int32_t -ivi_extension_surface_get_size(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t *width, - int32_t *height, - int32_t *stride); - -struct ivi_layout_layer * -ivi_extension_layer_create_with_dimension(struct ivishell *shell, - uint32_t id_layer, int32_t width, int32_t height); - -void -ivi_extension_layer_remove(struct ivishell *shell, - struct ivi_layout_layer *ivilayer); - -int32_t -ivi_extension_get_layers(struct ivishell *shell, - int32_t *pLength, struct ivi_layout_layer ***ppArray); - -uint32_t -ivi_extension_get_id_of_layer(struct ivishell *shell, - struct ivi_layout_layer *ivilayer); - -struct ivi_layout_layer * -ivi_extension_get_layer_from_id(struct ivishell *shell, uint32_t id_layer); - -const struct ivi_layout_layer_properties * -ivi_extension_get_properties_of_layer(struct ivishell *shell, - struct ivi_layout_layer *ivilayer); - -int32_t -ivi_extension_get_layers_under_surface(struct ivishell *shell, - struct ivi_layout_surface *ivisurf, - int32_t *pLength, - struct ivi_layout_layer ***ppArray); - -int32_t -ivi_extension_get_layers_on_screen(struct ivishell *shell, - struct ivi_layout_screen *iviscrn, - int32_t *pLength, - struct ivi_layout_layer ***ppArray); - -int32_t -ivi_extension_layer_set_visibility(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - bool newVisibility); - -bool -ivi_extension_layer_get_visibility(struct ivishell *shell, - struct ivi_layout_layer *ivilayer); - -int32_t -ivi_extension_layer_set_opacity(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - wl_fixed_t opacity); - -wl_fixed_t -ivi_extension_layer_get_opacity(struct ivishell *shell, - struct ivi_layout_layer *ivilayer); - -int32_t -ivi_extension_layer_set_source_rectangle(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t x, int32_t y, - int32_t width, int32_t height); - -int32_t -ivi_extension_layer_set_destination_rectangle(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t x, int32_t y, - int32_t width, int32_t height); - -int32_t -ivi_extension_layer_set_position(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t dest_x, int32_t dest_y); - -int32_t -ivi_extension_layer_get_position(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t *dest_x, int32_t *dest_y); - -int32_t -ivi_extension_layer_set_dimension(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t dest_width, int32_t dest_height); - -int32_t -ivi_extension_layer_get_dimension(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t *dest_width, int32_t *dest_height); - -int32_t -ivi_extension_layer_set_orientation(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - enum wl_output_transform orientation); - -enum wl_output_transform -ivi_extension_layer_get_orientation(struct ivishell *shell, - struct ivi_layout_layer *ivilayer); - -int32_t -ivi_extension_layer_add_surface(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - struct ivi_layout_surface *addsurf); - -void -ivi_extension_layer_remove_surface(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - struct ivi_layout_surface *remsurf); - -int32_t -ivi_extension_layer_set_render_order(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - struct ivi_layout_surface **pSurface, - int32_t number); - -int32_t -ivi_extension_layer_add_notification(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - layer_property_notification_func callback, - void *userdata); - -void -ivi_extension_layer_remove_notification(struct ivishell *shell, - struct ivi_layout_layer *ivilayer); - -int32_t -ivi_extension_layer_set_transition(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - enum ivi_layout_transition_type type, - uint32_t duration); - -struct ivi_layout_screen * -ivi_extension_get_screen_from_id(struct ivishell *shell, - uint32_t id_screen); - -int32_t -ivi_extension_get_screen_resolution(struct ivishell *shell, - struct ivi_layout_screen *iviscrn, - int32_t *pWidth, - int32_t *pHeight); - -int32_t -ivi_extension_get_screens(struct ivishell *shell, - int32_t *pLength, struct ivi_layout_screen ***ppArray); - -int32_t -ivi_extension_get_screens_under_layer(struct ivishell *shell, - struct ivi_layout_layer *ivilayer, - int32_t *pLength, - struct ivi_layout_screen ***ppArray); - -int32_t -ivi_extension_screen_add_layer(struct ivishell *shell, - struct ivi_layout_screen *iviscrn, - struct ivi_layout_layer *addlayer); - -int32_t -ivi_extension_screen_set_render_order(struct ivishell *shell, - struct ivi_layout_screen *iviscrn, - struct ivi_layout_layer **pLayer, - const int32_t number); - -struct weston_output * -ivi_extension_screen_get_output(struct ivishell *shell, - struct ivi_layout_screen *); - - -void -ivi_extension_transition_move_layer_cancel(struct ivishell *shell, - struct ivi_layout_layer *layer); - -int32_t -ivi_extension_layer_set_fade_info(struct ivishell *shell, - struct ivi_layout_layer* ivilayer, - uint32_t is_fade_in, - double start_alpha, double end_alpha); - -int32_t -ivi_extension_surface_set_is_forced_configure_event(struct ivishell *shell, - struct weston_surface *surface, - bool is_force); -#endif diff --git a/weston-ivi-shell/src/ivi-layout-export.h b/weston-ivi-shell/src/ivi-layout-export.h deleted file mode 100644 index d38d6ea..0000000 --- a/weston-ivi-shell/src/ivi-layout-export.h +++ /dev/null @@ -1,176 +0,0 @@ -/* - * Copyright (C) 2013 DENSO CORPORATION - * - * Permission to use, copy, modify, distribute, and sell this software and - * its documentation for any purpose is hereby granted without fee, provided - * that the above copyright notice appear in all copies and that both that - * copyright notice and this permission notice appear in supporting - * documentation, and that the name of the copyright holders not be used in - * advertising or publicity pertaining to distribution of the software - * without specific, written prior permission. The copyright holders make - * no representations about the suitability of this software for any - * purpose. It is provided "as is" without express or implied warranty. - * - * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS - * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND - * FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY - * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER - * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF - * CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN - * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -/** - * The ivi-layout library supports API set of controlling properties of - * surface and layer which groups surfaces. An unique ID whose type is integer - * is required to create surface and layer. With the unique ID, surface and - * layer are identified to control them. The API set consists of APIs to control - * properties of surface and layers about followings, - * - visibility. - * - opacity. - * - clipping (x,y,width,height). - * - position and size of it to be displayed. - * - orientation per 90 degree. - * - add or remove surfaces to a layer. - * - order of surfaces/layers in layer/screen to be displayed. - * - commit to apply property changes. - * - notifications of property change. - * - * Management of surfaces and layers grouping these surfaces are common - * way in In-Vehicle Infotainment system, which integrate several domains - * in one system. A layer is allocated to a domain in order to control - * application surfaces grouped to the layer all together. - * - * This API and ABI follow following specifications. - * http://projects.genivi.org/wayland-ivi-extension/layer-manager-apis - */ - -#ifndef _IVI_LAYOUT_EXPORT_H_ -#define _IVI_LAYOUT_EXPORT_H_ - -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - -#include "stdbool.h" -#include <weston/compositor.h> - -#define IVI_SUCCEEDED (0) -#define IVI_FAILED (-1) - -struct ivi_layout_layer; -struct ivi_layout_screen; -struct ivi_layout_surface; - -struct ivi_layout_surface_properties -{ - wl_fixed_t opacity; - int32_t source_x; - int32_t source_y; - int32_t source_width; - int32_t source_height; - int32_t start_x; - int32_t start_y; - int32_t start_width; - int32_t start_height; - int32_t dest_x; - int32_t dest_y; - int32_t dest_width; - int32_t dest_height; - enum wl_output_transform orientation; - bool visibility; - int32_t transition_type; - uint32_t transition_duration; -}; - -struct ivi_layout_layer_properties -{ - wl_fixed_t opacity; - int32_t source_x; - int32_t source_y; - int32_t source_width; - int32_t source_height; - int32_t dest_x; - int32_t dest_y; - int32_t dest_width; - int32_t dest_height; - enum wl_output_transform orientation; - uint32_t visibility; - int32_t transition_type; - uint32_t transition_duration; - double start_alpha; - double end_alpha; - uint32_t is_fade_in; -}; - -enum ivi_layout_notification_mask { - IVI_NOTIFICATION_NONE = 0, - IVI_NOTIFICATION_OPACITY = (1 << 1), - IVI_NOTIFICATION_SOURCE_RECT = (1 << 2), - IVI_NOTIFICATION_DEST_RECT = (1 << 3), - IVI_NOTIFICATION_DIMENSION = (1 << 4), - IVI_NOTIFICATION_POSITION = (1 << 5), - IVI_NOTIFICATION_ORIENTATION = (1 << 6), - IVI_NOTIFICATION_VISIBILITY = (1 << 7), - IVI_NOTIFICATION_PIXELFORMAT = (1 << 8), - IVI_NOTIFICATION_ADD = (1 << 9), - IVI_NOTIFICATION_REMOVE = (1 << 10), - IVI_NOTIFICATION_CONFIGURE = (1 << 11), - IVI_NOTIFICATION_ALL = 0xFFFF -}; - -enum ivi_layout_transition_type{ - IVI_LAYOUT_TRANSITION_NONE, - IVI_LAYOUT_TRANSITION_VIEW_DEFAULT, - IVI_LAYOUT_TRANSITION_VIEW_DEST_RECT_ONLY, - IVI_LAYOUT_TRANSITION_VIEW_FADE_ONLY, - IVI_LAYOUT_TRANSITION_LAYER_FADE, - IVI_LAYOUT_TRANSITION_LAYER_MOVE, - IVI_LAYOUT_TRANSITION_LAYER_VIEW_ORDER, - IVI_LAYOUT_TRANSITION_VIEW_MOVE_RESIZE, - IVI_LAYOUT_TRANSITION_VIEW_RESIZE, - IVI_LAYOUT_TRANSITION_VIEW_FADE, - IVI_LAYOUT_TRANSITION_MAX, -}; - -typedef void (*layer_property_notification_func)( - struct ivi_layout_layer *ivilayer, - const struct ivi_layout_layer_properties *, - enum ivi_layout_notification_mask mask, - void *userdata); - -typedef void (*surface_property_notification_func)( - struct ivi_layout_surface *ivisurf, - const struct ivi_layout_surface_properties *, - enum ivi_layout_notification_mask mask, - void *userdata); - -typedef void (*layer_create_notification_func)( - struct ivi_layout_layer *ivilayer, - void *userdata); - -typedef void (*layer_remove_notification_func)( - struct ivi_layout_layer *ivilayer, - void *userdata); - -typedef void (*surface_create_notification_func)( - struct ivi_layout_surface *ivisurf, - void *userdata); - -typedef void (*surface_remove_notification_func)( - struct ivi_layout_surface *ivisurf, - void *userdata); - -typedef void (*surface_configure_notification_func)( - struct ivi_layout_surface *ivisurf, - void *userdata); - -typedef void (*ivi_controller_surface_content_callback)( - struct ivi_layout_surface *ivisurf, - int32_t content, - void *userdata); -#ifdef __cplusplus -} -#endif /* __cplusplus */ - -#endif /* _IVI_LAYOUT_EXPORT_H_ */ |