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 text of the Apache License is at
6 * http://www.apache.org/licenses/LICENSE-2.0
10 * @brief header file of user experience liblary for HomeScreen(define symbols)
15 #ifndef _ICO_UXF_DEF_H_
16 #define _ICO_UXF_DEF_H_
23 #define ICO_UXF_HOSTTYPE_CENTER 0 /* Center display */
24 #define ICO_UXF_HOSTTYPE_METER 1 /* Meter display */
25 #define ICO_UXF_HOSTTYPE_REMOTE 2 /* Information device(mobile device)*/
26 #define ICO_UXF_HOSTTYPE_PASSENGER 3 /* Passenger display */
27 #define ICO_UXF_HOSTTYPE_REAR 4 /* Rear-seat entertainment */
28 #define ICO_UXF_HOSTTYPE_REARLEFT 5 /* Rear-seat entertainment(Left)*/
29 #define ICO_UXF_HOSTTYPE_REARRIGHT 6 /* Rear-seat entertainment(right)*/
31 /* Default DisplayId */
32 #define ICO_UXF_DISPLAY_DEFAULT 0 /* Default display */
35 #define ICO_UXF_DISPLAYTYPE_CENTER 0 /* Center display */
36 #define ICO_UXF_DISPLAYTYPE_METER 1 /* Meter display */
37 #define ICO_UXF_DISPLAYTYPE_REMOTE 2 /* Information device(mobile device)*/
38 #define ICO_UXF_DISPLAYTYPE_PASSENGER 3 /* Passenger display */
39 #define ICO_UXF_DISPLAYTYPE_REAR 4 /* Rear-seat display */
40 #define ICO_UXF_DISPLAYTYPE_REARLEFT 5 /* Rear-seat display(left) */
41 #define ICO_UXF_DISPLAYTYPE_REARRIGHT 6 /* Rear-seat display(right) */
43 /* Window active status */
44 #define ICO_UXF_WINDOW_INACTIVE 0 /* not active */
45 #define ICO_UXF_WINDOW_POINTER_ACTIVE 1 /* pointer active */
46 #define ICO_UXF_WINDOW_KEYBOARD_ACTIVE 2 /* keyboard active */
47 #define ICO_UXF_WINDOW_SELECT 4 /* window selected by operation */
50 #define ICO_UXF_POLICY_ALWAYS 0 /* No control */
51 #define ICO_UXF_POLICY_RUNNING 1 /* Runnning only */
52 #define ICO_UXF_POLICY_PARKED 2 /* Parked only */
53 #define ICO_UXF_POLICY_SHIFT_PARKING 3 /* Shift-position is park */
54 #define ICO_UXF_POLICY_SHIFT_REVERSES 4 /* Shift-position is reverses */
55 #define ICO_UXF_POLICY_BLINKER_LEFT 5 /* Blinker is left */
56 #define ICO_UXF_POLICY_BLINKER_RIGHT 6 /* Blinker is right */
59 #define ICO_UXF_PRIVILEGE_ALMIGHTY 0 /* almighty privilege */
60 #define ICO_UXF_PRIVILEGE_SYSTEM 1 /* system level */
61 #define ICO_UXF_PRIVILEGE_SYSTEM_AUDIO 2 /* system level(audio only) */
62 #define ICO_UXF_PRIVILEGE_SYSTEM_VISIBLE 3 /* system level(visible only) */
63 #define ICO_UXF_PRIVILEGE_MAKER 4 /* maker level */
64 #define ICO_UXF_PRIVILEGE_CERTIFICATE 5 /* certificated */
65 #define ICO_UXF_PRIVILEGE_NONE 6 /* no privilege */
68 #define ICO_UXF_EVENT_ALL 0xffffffff /* Mask value of all events */
69 #define ICO_UXF_EVENT_VISIBLE 0x00000001 /* Change window visibility */
70 #define ICO_UXF_EVENT_RESIZE 0x00000002 /* Change window position/size */
71 #define ICO_UXF_EVENT_VISIBLE_REQ 0x00000004 /* Request for window visibility*/
72 #define ICO_UXF_EVENT_RESIZE_REQ 0x00000008 /* request for window position/size*/
73 #define ICO_UXF_EVENT_NEWWINDOW 0x00000010 /* Created new window */
74 #define ICO_UXF_EVENT_DESTORYWINDOW 0x00000020 /* Destroyed a window */
75 #define ICO_UXF_EVENT_ACTIVEWINDOW 0x00000040 /* Change window active status */
76 #define ICO_UXF_EVENT_EXECPROCESS 0x00000100 /* Application started */
77 #define ICO_UXF_EVENT_TERMPROCESS 0x00000200 /* Application stopped */
78 #define ICO_UXF_EVENT_EXINPUT 0x00200000 /* extra input event */
80 #define ICO_UXF_EVENT_VALIDALL 0x8020037f /* Set of the event with a meaning*/
82 /* Application status */
83 #define ICO_UXF_PROCSTATUS_STOP 0x00000000 /* Stopped */
84 #define ICO_UXF_PROCSTATUS_INIT 0x00000001 /* Initializing */
85 #define ICO_UXF_PROCSTATUS_RUN 0x00000002 /* Running */
86 #define ICO_UXF_PROCSTATUS_TERM 0x00000004 /* Terminating */
88 /* Window controll hook code */
89 #define ICO_UXF_HOOK_WINDOW_CREATE_MAIN 0x00 /* created main window */
90 #define ICO_UXF_HOOK_WINDOW_CREATE_SUB 0x01 /* created sub window */
91 #define ICO_UXF_HOOK_WINDOW_DESTORY_MAIN 0x10 /* destoryed main window */
92 #define ICO_UXF_HOOK_WINDOW_DESTORY_SUB 0x11 /* destoryed sub window */
95 #define ICO_UXF_EOK 0 /* OK */
96 #define ICO_UXF_EPERM -1 /* Operation not permitted */
97 #define ICO_UXF_ENOENT -2 /* No such object */
98 #define ICO_UXF_ESRCH -3 /* Not initialized */
99 #define ICO_UXF_EIO -5 /* I/O(send/receive) error */
100 #define ICO_UXF_ENXIO -6 /* Not exist */
101 #define ICO_UXF_E2BIG -7 /* Buffer size too smale */
102 #define ICO_UXF_EBADF -9 /* Illegal data type */
103 #define ICO_UXF_EAGAIN -11 /* Try again */
104 #define ICO_UXF_ENOMEM -12 /* Out of memory */
105 #define ICO_UXF_EFAULT -14 /* Bad address */
106 #define ICO_UXF_EBUSY -16 /* Not available now */
107 #define ICO_UXF_EEXIST -17 /* Multiple define */
108 #define ICO_UXF_EINVAL -22 /* Invalid argument */
109 #define ICO_UXF_ENOSYS -38 /* System error */
111 /* AppsControol control flag */
112 #define ICO_UXF_APPSCTL_INVISIBLE 0x01 /* invisibled by AppsController */
113 #define ICO_UXF_APPSCTL_REGULATION 0x02 /* invisibled by Regulation */
114 #define ICO_UXF_APPSCTL_TEMPVISIBLE 0x10 /* tempolary visible for menu */
116 /* Log output level */
117 #define ICO_UXF_LOGLEVEL_ERROR 4 /* Error */
118 #define ICO_UXF_LOGLEVEL_CRITICAL 8 /* Critical */
119 #define ICO_UXF_LOGLEVEL_WARNING 16 /* Warning */
120 #define ICO_UXF_LOGLEVEL_INFO 64 /* Information */
121 #define ICO_UXF_LOGLEVEL_DEBUG 128 /* Debug write */
123 /* Macros for generate hash value */
124 extern int ico_uxf_misc_hashByName(const char *name);
125 #define ICO_UXF_MISC_HASHSIZE 64 /* Hash table size(must be 2's factorial*/
126 #define ICO_UXF_MISC_HASHBYID(v) (v & (ICO_UXF_MISC_HASHSIZE-1))
127 #define ICO_UXF_MISC_HASHBYNAME(name) ico_uxf_misc_hashByName(name)
132 #endif /* _ICO_UXF_DEF_H_ */