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 tWlExt of the Apache License is at
6 * http://www.apache.org/licenses/LICENSE-2.0
10 //==========================================================================
12 * @file CicoSCWlInputMgrIF.cpp
14 * @brief This file is definition of CicoSCInputDevConf class
16 //==========================================================================
17 #ifndef __CICO_SC_WL_INPUT_MGR_IF_H__
18 #define __CICO_SC_WL_INPUT_MGR_IF_H__
21 #include <ico-uxf-weston-plugin/ico_input_mgr-client-protocol.h>
22 #include "CicoSCWaylandIF.h"
24 //--------------------------------------------------------------------------
26 * @brief This class is wayland interface of multi input manager
28 //--------------------------------------------------------------------------
29 class CicoSCWlInputMgrIF : public CicoSCWaylandIF
32 // initialize interface
33 void initInterface(void *data,
34 struct wl_registry *registry,
36 const char *interface,
39 // capabilities callback function
40 void capabilitiesCB(void *data,
41 struct ico_exinput *ico_exinput,
49 // code callback function
50 void codeCB(void *data,
51 struct ico_exinput *ico_exinput,
57 // input callback function
58 void inputCB(void *data,
59 struct ico_exinput *ico_exinput,
66 // region callback function
67 void regionCB(void *data,
68 struct ico_input_mgr_device *ico_input_mgr_device,
69 struct wl_array *region);
72 // default constructor
76 virtual ~CicoSCWlInputMgrIF();
78 // assignment operator
79 CicoSCWlInputMgrIF& operator=(const CicoSCWlInputMgrIF &object);
82 CicoSCWlInputMgrIF(const CicoSCWlInputMgrIF &object);
84 // wrapper function ico_input_mgr_control_add_input_app
85 void addInputApp(const std::string &appid,
86 const std::string &device,
91 // wrapper function ico_input_mgr_control_del_input_app
92 void delInputApp(const std::string &appid,
93 const std::string &device,
96 // wrapper function ico_exinput_set_input_region
97 void setInputRegion(const std::string &target,
110 // wrapper function ico_exinput_unset_input_region
111 void unsetInputRegion(const std::string &target,
118 // ico_input_mgr(Multi Input Manager) callback functions
120 // wayland capabilities callback function
121 static void wlCapabilitiesCB(void *data,
122 struct ico_exinput *ico_exinput,
127 const char *codename,
130 // wayland code callback function
131 static void wlCodeCB(void *data,
132 struct ico_exinput *ico_exinput,
135 const char *codename,
138 // wayland input callback function
139 static void wlInputCB(void *data,
140 struct ico_exinput *ico_exinput,
147 // wayland region callback function
148 static void wlRegionCB(void *data,
149 struct ico_input_mgr_device *ico_input_mgr_device,
150 struct wl_array *region);
153 // input manager interface
154 struct ico_input_mgr_control *m_inputmgr;
156 // extra input event interface
157 struct ico_exinput *m_exinput;
159 // input manage device interface
160 struct ico_input_mgr_device *m_inputmgrdev;
164 struct ico_exinput_listener m_exInputListener;
166 // input manager device listener
167 struct ico_input_mgr_device_listener m_devListener;
170 #endif // __CICO_SC_WL_INPUT_MGR_IF_H__
171 // vim:set expandtab ts=4 sw=4: