mmifw: remove unnecessary user_data from mmi events
[platform/core/uifw/mmi-framework.git] / src / mmifw-event-types.h
1 /*
2 * Copyright © 2021 Samsung Electronics co., Ltd. All Rights Reserved.
3 *
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the "Software"),
6 * to deal in the Software without restriction, including without limitation
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 * and/or sell copies of the Software, and to permit persons to whom the
9 * Software is furnished to do so, subject to the following conditions:
10 *
11 * The above copyright notice and this permission notice (including the next
12 * paragraph) shall be included in all copies or substantial portions of the
13 * Software.
14 *
15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
18 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21 * DEALINGS IN THE SOFTWARE.
22 */
23
24 #ifndef __MMIFW_EVENT_TYPES_H__
25 #define __MMIFW_EVENT_TYPES_H__
26
27 #include <stdbool.h>
28
29 typedef struct
30 {
31    int type;//focus in/out
32    int timestamp;
33    bool focus_in;
34 } mmifw_event_focus;
35
36 typedef struct {
37    int type;//state change
38    int timestamp;
39    int state;
40    int old_state;
41 } mmifw_event_state_change;
42
43 typedef struct {
44    int type;
45    int timestamp;
46    char *source;//event source information like voice, gesture, key, vision, and so on
47 } mmifw_event_wakeup;
48
49 typedef struct
50 {
51    int type;//up, down, left, right, select, back, ...
52    int timestamp;
53    int keycode;
54    bool key_down;
55    char *keyname;
56    char *source;//event source information
57 } mmifw_event_key;
58
59 typedef struct {
60    int type;//swipe up, down, left, right, yes, ...
61    int timestamp;
62    char *source;//event source information
63 } mmifw_event_gesture;
64
65 typedef struct {
66    int type;//voice up, down, left, right, select, back, ...
67    int timestamp;
68    char *source;//event source information
69 } mmifw_event_voice;
70
71 typedef struct {
72    int type;//action play/pause/resume/stop/execute/launch/revoke/volume ...
73    int timestamp;
74    char *cmd;
75    char **args;
76    int nargs;
77    char *source;//event source information
78 } mmifw_event_action;
79
80 typedef struct
81 {
82    int type;//feedback positive, feedback negative, feedback comment
83    int timestamp;
84    char *feedback;
85    char *comment;
86 } mmifw_event_feedback;
87
88 #endif //__MMIFW_EVENT_TYPES_H__