-
- Downloads
ivi-shell: rewrite controller API
This fixes the breakage caused by "ivi-shell: make ivi-layout.c as a part of ivi-shell.so" hmi-controller.c: A reference implementation of controller module does not use the layout functions directly. This get function pointers at controller_module_init which called by ivi-shell. ivi-layout-export.h: Definition of interfaces in a struction: ivi_controller_interface. function pointers are set at ivi-layout.c. ivi-layout-private.h: Definition of some interfaces are remove bucause it is implemented in ivi-layout.c and set it as function pointer. Several interfaces are kept here because they are implemented in ivi-layout.c/transition.c but used in other files. ivi-layout-transition.c: remove WL_EXPORT because export is not needed anymore. remove unnesesary unsed method. ivi-shell.c: call controller_module_init of hmi-controller to init it and set function pointers. If the interface_version is equal or greater than what hmi_controller was built with, things are pass. If the interface_version is smaller than what the controller expects, it has to fail because it cannot work. This is followed the manner, - never remove a function pointer - never modify an existing function signature - additions are allowed at the end of struct ivi_controller_interface - all function pointers must always be populated and working in ivi-shell.so (ivi-layout.c etc.) Signed-off-by:Nobuhiko Tanibata <NOBUHIKO_TANIBATA@xddp.denso.co.jp> Acked-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk>
Showing
- ivi-shell/hmi-controller.c 96 additions, 78 deletionsivi-shell/hmi-controller.c
- ivi-shell/ivi-layout-export.h 598 additions, 504 deletionsivi-shell/ivi-layout-export.h
- ivi-shell/ivi-layout-private.h 46 additions, 134 deletionsivi-shell/ivi-layout-private.h
- ivi-shell/ivi-layout-transition.c 8 additions, 8 deletionsivi-shell/ivi-layout-transition.c
- ivi-shell/ivi-layout.c 202 additions, 69 deletionsivi-shell/ivi-layout.c
- ivi-shell/ivi-shell.c 1 addition, 32 deletionsivi-shell/ivi-shell.c
This diff is collapsed.
This diff is collapsed.
Please register or sign in to comment