204814fbc11381f6e9aa58c22edef66abf770035
[apps/native/ug-bluetooth-efl.git] / include / bt-type-define.h
1 /*
2  * Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
3  *
4  * Licensed under the Flora License, Version 1.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *   http://floralicense.org/license/
9  *
10  * Unless required by applicable law or agreed to in writing,
11  * software distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 #ifndef __BT_TYPE_DEFINE_H__
18 #define __BT_TYPE_DEFINE_H__
19
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23
24
25 #include <glib.h>
26
27
28 /**************************************************
29 *                             Constant Value
30 ***************************************************/
31
32 #define BT_GLOBALIZATION_STR_LENGTH 256
33 #define BT_MAX_CHARS_IN_FTP_TITLE 12
34 #define BT_MAX_MENU_NAME_LEN 64
35 #define BT_MAX_SERVICE_LIST 9
36 #define BT_DEVICE_NAME_LENGTH_MAX 100 /* UX guideline */
37 #define BT_ADDRESS_LENGTH_MAX 6
38 #define BT_ADDRESS_STR_LEN 18
39 #define BT_FILE_NAME_LEN_MAX 255
40 #define BT_IMG_PATH_MAX 256
41 #define BT_HTML_EXTRA_TAG_LENGTH 20
42 #define BT_SERVICE_NAME_LENGTH 30
43 #define BT_SERVICE_CONTENT_LENGTH 256
44 #define BT_PHONE_NUM_LEN 50
45 #define BT_EXTRA_STR_LEN 10
46 #define BT_BUFFER_LEN 256
47 #define BT_TIMEOUT_MAX 3600
48 #define BT_MAX_TIMEOUT_ITEMS 5
49 #define BT_GLOBALIZATION_TEXT_LENGTH \
50         (BT_GLOBALIZATION_STR_LENGTH+BT_EXTRA_STR_LEN)
51 #define BT_DISCONNECT_TEXT_LENGTH \
52                 ((2*BT_GLOBALIZATION_STR_LENGTH)+BT_DEVICE_NAME_LENGTH_MAX)
53 #define BT_SERVICE_TEXT_LENGTH \
54         (BT_SERVICE_CONTENT_LENGTH+BT_HTML_EXTRA_TAG_LENGTH)* \
55         BT_MAX_SERVICE_LIST
56 #define BT_UG_SYSPOPUP_TIMEOUT_FOR_MULTIPLE_POPUPS 200
57
58 /* Timeout Value */
59 #define BT_SEARCH_SERVICE_TIMEOUT 5
60 #define BT_SELECTED_TIMEOUT 5
61 #define BT_DELETED_TIMEOUT 2
62
63 /* Define Error type */
64 #define BT_UG_FAIL -1
65 #define BT_UG_ERROR_NONE 0
66
67 #define BT_TWO_MINUTES 120
68 #define BT_FIVE_MINUTES 300
69 #define BT_ONE_HOUR 3600
70 #define BT_ZERO 0
71 #define BT_ALWAYS_ON -1
72
73 #define BT_RESULT_STR_MAX 256
74
75 #define BT_GENLIST_FONT_32_INC 32
76
77 /**************************************************
78 *                              String define
79 ***************************************************/
80
81 #define BT_SET_FONT_SIZE \
82 "<font=SLP:style=Medium><font_size=%d>%s</font_size></font>"
83
84 #define BT_SET_FONT_SIZE_COLOR \
85 "<font=SLP:style=Medium><font_size=%d><color=%s>%s</color></font_size></font>"
86
87 /* GENLIST_TEXT_COLOR_LIST_SUB_TEXT_SETTINGS 42 137 194 255 */
88 #define BT_GENLIST_SUBTEXT_COLOR "#2A89C2FF"
89 #define BT_GENLIST_WHITE_SUBTEXT_COLOR "#FFFFFFFF"
90
91 #define BT_RESULT_SUCCESS "success"
92 #define BT_RESULT_FAIL "fail"
93
94 #define BT_DEFAULT_PHONE_NAME "Fraser"
95
96 #define BT_SYSPOPUP_REQUEST_NAME "app-confirm-request"
97 #define BT_SYSPOPUP_TWO_BUTTON_TYPE "twobtn"
98 #define BT_SYSPOPUP_ONE_BUTTON_TYPE "onebtn"
99
100 #define BT_VCONF_VISIBLE_TIME "file/private/libug-setting-bluetooth-efl/visibility_time"
101
102 /* AppControl Operation */
103 #define BT_APPCONTROL_PICK_OPERATION "http://tizen.org/appcontrol/operation/bluetooth/pick"
104 #define BT_APPCONTROL_VISIBILITY_OPERATION "http://tizen.org/appcontrol/operation/configure/bluetooth/visibility"
105
106 /* AppControl Output */
107 #define BT_APPCONTROL_ADDRESS "http://tizen.org/appcontrol/data/bluetooth/address"
108 #define BT_APPCONTROL_NAME "http://tizen.org/appcontrol/data/bluetooth/name"
109 #define BT_APPCONTROL_RSSI "http://tizen.org/appcontrol/data/bluetooth/rssi"
110 #define BT_APPCONTROL_IS_PAIRED "http://tizen.org/appcontrol/data/bluetooth/is_paired"
111 #define BT_APPCONTROL_MAJOR_CLASS "http://tizen.org/appcontrol/data/bluetooth/major_class"
112 #define BT_APPCONTROL_MINOR_CLASS "http://tizen.org/appcontrol/data/bluetooth/minor_class"
113 #define BT_APPCONTROL_SERVICE_CLASS "http://tizen.org/appcontrol/data/bluetooth/service_class"
114 #define BT_APPCONTROL_SERVICE_TYPE "http://tizen.org/appcontrol/data/bluetooth/service_type"
115 #define BT_APPCONTROL_UUID_LIST "http://tizen.org/appcontrol/data/bluetooth/uuid_list"
116 #define BT_APPCONTROL_VISIBILITY "http://tizen.org/appcontrol/data/bluetooth/visibility"
117
118 /* Access information */
119 #define BT_STR_ACCES_INFO_MAX_LEN 512
120 #define BT_STR_ACC_ICON "Icon"
121
122 /**************************************************
123 *                                  Enum type
124 ***************************************************/
125
126 typedef enum {
127         BT_CONNECTION_REQ,
128         BT_PAIRING_REQ,
129         BT_NONE_REQ,
130 } bt_confirm_req_t;
131
132 /* Visible timout value (sec)*/
133 typedef enum {
134         BT_2MIN = 120,
135         BT_5MIN = 300,
136         BT_1HOUR = 3600,
137         BT_NO_TIMEOUT = 0,
138 } bt_visible_time_t;
139
140 typedef enum {
141         BT_VISIBLE_OFF = 0,
142         BT_VISIBLE_ALWAYS = 1,
143         BT_VISIBLE_TIME_LIMITED = 2,
144 } bt_visible_result_t;
145
146 typedef enum {
147         BT_SEARCH_ALL_DEVICE = 0,
148         BT_SEARCH_PHONE,
149         BT_SEARCH_HEADSET,
150         BT_SEARCH_PC,
151         BT_SEARCH_HID,
152 } bt_search_option_t;
153
154 typedef enum {
155         BT_CONNECT_MENU = 1,
156         BT_SEND_MENU,
157         BT_RENAME_MENU,
158         BT_DELETE_MENU,
159         BT_SERVICE_LIST_MENU,
160 } bt_menu_index_t;
161
162 typedef enum {
163         BT_PAIRED_DEVICE_DISABLE,
164         BT_PAIRED_DEVICE_ENABLE,
165 } bt_app_paired_device_status_t;
166
167 typedef enum {
168         BT_STATUS_OFF         = 0x0000,
169         BT_STATUS_ON          = 0x0001,
170         BT_STATUS_BT_VISIBLE  = 0x0002,
171         BT_STATUS_TRANSFER    = 0x0004,
172 } bt_status_t;
173
174 typedef enum {
175         BT_LAUNCH_NORMAL = 0x00,
176         BT_LAUNCH_SEND_FILE = 0x01,
177         BT_LAUNCH_PRINT_IMAGE = 0x02,
178         BT_LAUNCH_CONNECT_HEADSET = 0x03,
179         BT_LAUNCH_USE_NFC = 0x04,
180         BT_LAUNCH_PICK = 0x05,
181         BT_LAUNCH_VISIBILITY = 0x06,
182 } bt_launch_mode_t;
183
184 typedef enum {
185         BT_CONTROL_BAR_DISABLE,
186         BT_CONTROL_BAR_ENABLE,
187 } bt_control_bar_status_t;
188
189 typedef enum {
190         BT_NOCONTENT_HIDE,
191         BT_NOCONTNET_SHOW,
192 } bt_nocontent_mode_t;
193
194 typedef enum {
195         BT_STORE_BOOLEAN,
196         BT_STORE_INT,
197         BT_STORE_STRING,
198 } bt_store_type_t;
199
200 typedef enum {
201         BT_ROTATE_PORTRAIT = 0,
202         BT_ROTATE_LANDSCAPE,
203         BT_ROTATE_PORTRAIT_UPSIDEDOWN,
204         BT_ROTATE_LANDSCAPE_UPSIDEDOWN,
205 } bt_rotate_mode_t;
206
207 typedef enum {
208         BT_ACTIVATED = 0,
209         BT_ACTIVATING,
210         BT_DEACTIVATED,
211         BT_DEACTIVATING,
212         BT_SEARCHING,
213         BT_PAIRING
214 } bt_oper_t;
215
216 typedef enum {
217         BT_UG_CREATE = 0,
218         BT_UG_START,
219         BT_UG_PAUSE,
220         BT_UG_RESUME,
221         BT_UG_DESTORY
222 } bt_ug_status_t;
223
224
225 typedef enum {
226         BT_IDLE = 0,
227         BT_DEV_PAIRING,
228         BT_CONNECTING,
229         BT_DISCONNECTING,
230         BT_SERVICE_SEARCHING
231 } bt_dev_status_t;
232
233 typedef enum {
234         BT_RUN_STATUS_NO_CHANGE = 0x00, /* No Change BT status*/
235         BT_RUN_STATUS_ACTIVATE = 0x01,  /* BT Activate*/
236         BT_RUN_STATUS_DEACTIVATE = 0x02,        /* BT Deactivate*/
237         BT_RUN_STATUS_SEARCH_TEST = 0x03,       /* BT Search Test*/
238         BT_RUN_STATUS_TERMINATE = 0x04, /* BT Terminate*/
239         BT_RUN_STATUS_MAX = 0x05,               /* Max val*/
240 } bt_run_status_t;
241
242 typedef enum {
243         BT_ON_CURRENTVIEW = 0x00,       /* Run BT on current view*/
244         BT_ON_FOREGROUND = 0x01,        /* Run BT on foreground*/
245         BT_ON_BACKGROUND = 0x02,        /* Run BT on background*/
246 } bt_on_t;
247
248 typedef enum {
249         BT_HEADSET_CONNECTED = 0x01,
250         BT_STEREO_HEADSET_CONNECTED = 0x02,
251         BT_HID_CONNECTED = 0x04,
252         BT_NETWORK_CONNECTED = 0x08,
253 } bt_connected_mask_t;
254
255 /**
256  * This enum indicates  Device states.
257  */
258
259 typedef enum {
260         BT_DEVICE_NONE,        /** < None*/
261         BT_DEVICE_PAIRED,     /** < Device Paired*/
262         BT_DEVICE_CONNECTED/** <Device Connected*/
263 } bt_device_state_t;
264
265 typedef enum {
266         BT_ITEM_NO_TYPE,
267         BT_ITEM_TOP,
268         BT_ITEM_CENTER,
269         BT_ITEM_BOTTOM,
270 } bt_item_type_t;
271
272 typedef enum {
273         BT_ITEM_NONE,
274         BT_ITEM_NAME,
275         BT_ITEM_UNPAIR,
276         BT_ITEM_CALL,
277         BT_ITEM_MEDIA,
278         BT_ITEM_HID,
279         BT_ITEM_NETWORK,
280 } bt_profile_view_item_type_t;
281
282 typedef enum {
283         BT_DEVICE_MAJOR_MASK_MISC = 0x00,
284         BT_DEVICE_MAJOR_MASK_COMPUTER = 0x0001,
285         BT_DEVICE_MAJOR_MASK_PHONE = 0x0002,
286         BT_DEVICE_MAJOR_MASK_LAN_ACCESS_POINT = 0x0004,
287         BT_DEVICE_MAJOR_MASK_AUDIO = 0x0008,
288         BT_DEVICE_MAJOR_MASK_PERIPHERAL = 0x0010,
289         BT_DEVICE_MAJOR_MASK_IMAGING = 0x0020,
290         BT_DEVICE_MAJOR_MASK_WEARABLE = 0x0040,
291         BT_DEVICE_MAJOR_MASK_TOY = 0x0080,
292         BT_DEVICE_MAJOR_MASK_HEALTH = 0x0100,
293 } bt_device_major_mask_t;
294
295
296 /**
297  * This enum indicates Service class Type.
298  */
299 typedef enum {
300         BT_SC_NONE = 0,
301         BT_SC_RES_SERVICE_MASK = 0x00000001,
302         BT_SC_SPP_SERVICE_MASK = 0x00000002,
303         BT_SC_DUN_SERVICE_MASK = 0x00000004,
304         BT_SC_FAX_SERVICE_MASK = 0x00000008,
305         BT_SC_LAP_SERVICE_MASK = 0x00000010,
306         BT_SC_HSP_SERVICE_MASK = 0x00000020,
307         BT_SC_HFP_SERVICE_MASK = 0x00000040,
308         BT_SC_OPP_SERVICE_MASK = 0x00000080,
309         BT_SC_FTP_SERVICE_MASK = 0x00000100,
310         BT_SC_CTP_SERVICE_MASK = 0x00000200,
311         BT_SC_ICP_SERVICE_MASK = 0x00000400,
312         BT_SC_SYNC_SERVICE_MASK = 0x00000800,
313         BT_SC_BPP_SERVICE_MASK = 0x00001000,
314         BT_SC_BIP_SERVICE_MASK = 0x00002000,
315         BT_SC_PANU_SERVICE_MASK = 0x00004000,
316         BT_SC_NAP_SERVICE_MASK = 0x00008000,
317         BT_SC_GN_SERVICE_MASK = 0x00010000,
318         BT_SC_SAP_SERVICE_MASK = 0x00020000,
319         BT_SC_A2DP_SERVICE_MASK = 0x00040000,
320         BT_SC_AVRCP_SERVICE_MASK = 0x00080000,
321         BT_SC_PBAP_SERVICE_MASK = 0x00100000,
322         BT_SC_HID_SERVICE_MASK = 0x00200000,
323         BT_SC_ALL_SERVICE_MASK = 0x00FFFFFF,
324         BT_SC_MAX
325 } bt_service_class_t;
326
327 /*
328  * Major device class (part of Class of Device)
329  */
330 typedef enum {
331         BT_MAJOR_DEV_CLS_MISC = 0x00,/**<miscellaneous */
332         BT_MAJOR_DEV_CLS_COMPUTER = 0x01, /**<Computer */
333         BT_MAJOR_DEV_CLS_PHONE = 0x02, /**<Phone */
334         BT_MAJOR_DEV_CLS_LAN_ACCESS_POINT = 0x03,/**<LAN access point */
335         BT_MAJOR_DEV_CLS_AUDIO = 0x04,/**<AudioDevice */
336         BT_MAJOR_DEV_CLS_PERIPHERAL = 0x05,/**<Peripheral Device  */
337         BT_MAJOR_DEV_CLS_IMAGING = 0x06,/**<Imaging Device */
338         BT_MAJOR_DEV_CLS_WEARABLE = 0x07,/**<Wearable Device */
339         BT_MAJOR_DEV_CLS_TOY = 0x08,/**<Toy Device */
340         BT_MAJOR_DEV_CLS_HEALTH = 0x09,/**<Health Device */
341         BT_MAJOR_DEV_CLS_UNCLASSIFIED = 0x1F/**<Unclassified device  */
342 } bt_major_class_t;
343
344 /*
345  * Minoor device class (part of Class of Device)
346  */
347 typedef enum {
348         BTAPP_MIN_DEV_CLS_UNCLASSIFIED = 0x00,
349         BTAPP_MIN_DEV_CLS_DESKTOP_WORKSTATION = 0x04,
350         BTAPP_MIN_DEV_CLS_SERVER_CLASS_COMPUTER = 0x08,
351         BTAPP_MIN_DEV_CLS_LAPTOP = 0x0C,
352         BTAPP_MIN_DEV_CLS_HANDHELD_PC_OR_PDA = 0x10,
353         BTAPP_MIN_DEV_CLS_PALM_SIZED_PC_OR_PDA = 0x14,
354         BTAPP_MIN_DEV_CLS_WEARABLE_COMPUTER = 0x18,
355
356         BTAPP_MIN_DEV_CLS_CELLULAR = 0x04,
357         BTAPP_MIN_DEV_CLS_CORDLESS = 0x08,
358         BTAPP_MIN_DEV_CLS_SMART_PHONE = 0x0C,
359         BTAPP_MIN_DEV_CLS_WIRED_MODEM_OR_VOICE_GATEWAY = 0x10,
360         BTAPP_MIN_DEV_CLS_COMMON_ISDN_ACCESS = 0x14,
361         BTAPP_MIN_DEV_CLS_SIM_CARD_READER = 0x18,
362         BTAPP_MID_DEV_CLS_PRINTER = 0x80,
363
364         BTAPP_MIN_DEV_CLS_FULLY_AVAILABLE = 0x04,
365         BTAPP_MIN_DEV_CLS_1_TO_17_PERCENT_UTILIZED = 0x20,
366         BTAPP_MIN_DEV_CLS_17_TO_33_PERCENT_UTILIZED = 0x40,
367         BTAPP_MIN_DEV_CLS_33_TO_50_PERCENT_UTILIZED = 0x60,
368         BTAPP_MIN_DEV_CLS_50_to_67_PERCENT_UTILIZED = 0x80,
369         BTAPP_MIN_DEV_CLS_67_TO_83_PERCENT_UTILIZED = 0xA0,
370         BTAPP_MIN_DEV_CLS_83_TO_99_PERCENT_UTILIZED = 0xC0,
371         BTAPP_MIN_DEV_CLS_NO_SERVICE_AVAILABLE = 0xE0,
372
373         BTAPP_MIN_DEV_CLS_HEADSET_PROFILE = 0x04,
374         BTAPP_MIN_DEV_CLS_HANDSFREE = 0x08,
375         BTAPP_MIN_DEV_CLS_MICROPHONE = 0x10,
376         BTAPP_MIN_DEV_CLS_LOUD_SPEAKER = 0x14,
377         BTAPP_MIN_DEV_CLS_HEADPHONES = 0x18,
378         BTAPP_MIN_DEV_CLS_PORTABLE_AUDIO = 0x1C,
379         BTAPP_MIN_DEV_CLS_CAR_AUDIO = 0x20,
380         BTAPP_MIN_DEV_CLS_SET_TOP_BOX = 0x24,
381         BTAPP_MIN_DEV_CLS_HIFI_AUDIO_DEVICE = 0x28,
382         BTAPP_MIN_DEV_CLS_VCR = 0x2C,
383         BTAPP_MIN_DEV_CLS_VIDEO_CAMERA = 0x30,
384         BTAPP_MIN_DEV_CLS_CAM_CORDER = 0x34,
385         BTAPP_MIN_DEV_CLS_VIDEO_MONITOR = 0x38,
386         BTAPP_MIN_DEV_CLS_VIDEO_DISPLAY_AND_LOUD_SPEAKER = 0x3C,
387         BTAPP_MIN_DEV_CLS_VIDEO_CONFERENCING = 0x40,
388         BTAPP_MIN_DEV_CLS_GAMING_OR_TOY = 0x48,
389
390         BTAPP_MIN_DEV_CLS_KEY_BOARD = 0x40,
391         BTAPP_MIN_DEV_CLS_POINTING_DEVICE = 0x80,
392         BTAPP_MIN_DEV_CLS_COMBO_KEYBOARD_OR_POINTING_DEVICE = 0xC0,
393
394         BTAPP_MIN_DEV_CLS_JOYSTICK = 0x04,
395         BTAPP_MIN_DEV_CLS_GAME_PAD = 0x08,
396         BTAPP_MIN_DEV_CLS_REMOTE_CONTROL = 0x0C,
397         BTAPP_MIN_DEV_CLS_SENSING_DEVICE = 0x10,
398         BTAPP_MIN_DEV_CLS_DIGITIZER_TABLET = 0x14,
399         BTAPP_MIN_DEV_CLS_CARD_READER = 0x18,
400
401         BTAPP_MIN_DEV_CLS_DISPLAY = 0x10,
402         BTAPP_MIN_DEV_CLS_CAMERA = 0x20,
403         BTAPP_MIN_DEV_CLS_SCANNER = 0x40,
404         BTAPP_MIN_DEV_CLS_PRINTER = 0x80,
405
406         BTAPP_MIN_DEV_CLS_WRIST_WATCH = 0x04,
407         BTAPP_MIN_DEV_CLS_PAGER = 0x08,
408         BTAPP_MIN_DEV_CLS_JACKET = 0x0C,
409         BTAPP_MIN_DEV_CLS_HELMET = 0x10,
410         BTAPP_MIN_DEV_CLS_GLASSES = 0x14,
411
412         BTAPP_MIN_DEV_CLS_ROBOT = 0x04,
413         BTAPP_MIN_DEV_CLS_VEHICLE = 0x08,
414         BTAPP_MIN_DEV_CLS_DOLL_OR_ACTION = 0x0C,
415         BTAPP_MIN_DEV_CLS_CONTROLLER = 0x10,
416         BTAPP_MIN_DEV_CLS_GAME = 0x14,
417
418         BTAPP_MIN_DEV_CLS_BLOOD_PRESSURE_MONITOR = 0x04,
419         BTAPP_MIN_DEV_CLS_THERMOMETER = 0x08,
420         BTAPP_MIN_DEV_CLS_WEIGHING_SCALE = 0x0C,
421         BTAPP_MIN_DEV_CLS_GLUCOSE_METER = 0x10,
422         BTAPP_MIN_DEV_CLS_PULSE_OXIMETER = 0x14,
423         BTAPP_MIN_DEV_CLS_HEART_OR_PULSE_RATE_MONITOR = 0x18,
424         BTAPP_MIN_DEV_CLS_MEDICAL_DATA_DISPLAY = 0x1C,
425 } bt_minor_class_t;
426
427
428 /*
429  * Service class part of class of device returned from device discovery
430  */
431
432 /**
433   * This enum indicates  Service calls part  of device returned from device discovery.
434   */
435 typedef enum {
436         BT_COD_SC_ALL = 0x000000, /**< ALL*/
437         BT_COD_SC_LIMITED_DISCOVERABLE_MODE = 0x002000,
438         BT_COD_SC_POSITIONING = 0x010000,/**< POSITIONING*/
439         BT_COD_SC_NETWORKING = 0x020000,/**< NETWORKING*/
440         BT_COD_SC_RENDERING = 0x040000,/**< RENDERING*/
441         BT_COD_SC_CAPTURING = 0x080000,/**< CAPTURING*/
442         BT_COD_SC_OBJECT_TRANSFER = 0x100000,/**< OBJECT_TRANSFER*/
443         BT_COD_SC_AUDIO = 0x200000,/**< AUDIO*/
444         BT_COD_SC_TELEPHONY = 0x400000,/**< TELEPHONY*/
445         BT_COD_SC_INFORMATION = 0x800000,/**< INFORMATION*/
446         BT_COD_SC_UNKNOWN = 0x1FF000/**< UNKNOWN */
447 } bt_cod_service_class_t;
448
449 typedef enum {
450         BT_SPP_PROFILE_UUID = ((unsigned short)0x1101),                 /**<SPP*/
451         BT_LAP_PROFILE_UUID = ((unsigned short)0x1102),                 /**<LAP*/
452         BT_DUN_PROFILE_UUID = ((unsigned short)0x1103),                 /**<DUN*/
453         BT_OBEX_IR_MC_SYNC_SERVICE_UUID = ((unsigned short)0x1104),     /**<OBEX IR MC SYNC*/
454         BT_OBEX_OBJECT_PUSH_SERVICE_UUID = ((unsigned short)0x1105),    /**<OPP*/
455         BT_OBEX_FILE_TRANSFER_UUID = ((unsigned short)0x1106),          /**<FTP*/
456         BT_IRMC_SYNC_COMMAND_UUID = ((unsigned short)0x1107),           /**<IRMC SYNC COMMAND*/
457         BT_HS_PROFILE_UUID = ((unsigned short)0x1108),                  /**<HS*/
458         BT_CTP_PROFILE_UUID = ((unsigned short)0x1109),                 /**<CTP*/
459         BT_AUDIO_SOURCE_UUID = ((unsigned short)0x110A),                        /**<AUDIO SOURCE*/
460         BT_AUDIO_SINK_UUID = ((unsigned short)0x110B),                  /**<AUDIO SINK*/
461         BT_AV_REMOTE_CONTROL_TARGET_UUID = ((unsigned short)0x110C),    /**<AV REMOTE CONTROL
462                                                                                 TARGET*/
463         BT_ADVANCED_AUDIO_PROFILE_UUID = ((unsigned short)0x110D),      /**<A2DP*/
464         BT_AV_REMOTE_CONTROL_UUID = ((unsigned short)0x110E),           /**<AV REMOTE CONTROL UUID*/
465         BT_AV_REMOTE_CONTROL_CONTROLLER_UUID = ((unsigned short)0x110F),        /**<AV REMOTE CONTROLLER UUID*/
466         BT_ICP_PROFILE_UUID = ((unsigned short)0x1110),                 /**<ICP*/
467         BT_FAX_PROFILE_UUID = ((unsigned short)0x1111),                 /**<FAX*/
468         BT_HEADSET_AG_SERVICE_UUID = ((unsigned short)0x1112),          /**<HS AG */
469         BT_PAN_PANU_PROFILE_UUID = ((unsigned short)0x1115),            /**<PAN*/
470         BT_PAN_NAP_PROFILE_UUID = ((unsigned short)0x1116),             /**<PAN*/
471         BT_PAN_GN_PROFILE_UUID = ((unsigned short)0x1117),              /**<PAN*/
472         BT_DIRECT_PRINTING = ((unsigned short)0x1118),
473         BT_OBEX_BPPS_PROFILE_UUID = ((unsigned short)0x1118),           /**<OBEX BPPS*/ /* Will be removed */
474         BT_REFERENCE_PRINTING = ((unsigned short)0x1119),
475         BT_OBEX_IMAGING_UUID = ((unsigned short)0x111A),                        /**<OBEX_IMAGING*/
476         BT_OBEX_IMAGING_RESPONDER_UUID = ((unsigned short)0x111B),      /**<OBEX_IMAGING
477                                                                                 RESPONDER*/
478         BT_IMAGING_AUTOMATIC_ARCHIVE_UUID = ((unsigned short)0x111C),   /**<IMAGING AUTOMATIC ARCHIVE*/
479         BT_IMAGING_REFERENCED_OBJECTS_UUID = ((unsigned short)0x111D),  /**<IMAGING REFERENCED OBJECTS*/
480         BT_HF_PROFILE_UUID = ((unsigned short)0x111E),                  /**<HF*/
481         BT_HFG_PROFILE_UUID = ((unsigned short)0x111F),                 /**<HFG*/
482         BT_DIRECT_PRINTING_REFERENCE_OBJ_UUID = ((unsigned short)0x1120),
483                                                                         /**<DIRECT PRINTING*/
484         BT_REFLECTED_UI = ((unsigned short)0x1121),             /**<REFLECTED UI*/
485         BT_BASIC_PRINTING = ((unsigned short)0x1122),           /**<BASIC PRINTING*/
486         BT_PRINTING_STATUS = ((unsigned short)0x1123),          /**<PRINTING  STATUS*/
487         BT_OBEX_PRINTING_STATUS_UUID = ((unsigned short)0x1123),        /**<OBEX PRINTING STATUS*/ /* Will be removed */
488         BT_HID_PROFILE_UUID = ((unsigned short)0x1124),         /**<HID*/
489         BT_HCR_PROFILE_UUID = ((unsigned short)0x1125),         /**<HCRP*/
490         BT_HCR_PRINT_UUID = ((unsigned short)0x1126),           /**<HCR PRINT*/
491         BT_HCR_SCAN_UUID = ((unsigned short)0x1127),            /**<HCR SCAN*/
492         BT_SIM_ACCESS_PROFILE_UUID = ((unsigned short)0x112D),  /**<SIM ACCESS PROFILE*/
493         BT_PBAP_PCE_UUID = ((unsigned short)0x112E),            /**<PBAP - PCE*/
494         BT_PBAP_PSE_UUID = ((unsigned short)0x112F),            /**<OBEX PBA*/
495         BT_OBEX_PBA_PROFILE_UUID = ((unsigned short)0x112F),    /**<OBEX PBA*/ /* Will be removed */
496         BT_OBEX_PBAP_UUID = ((unsigned short)0x1130),           /**<OBEX PBA*/
497         BT_HEADSET_HS_UUID = ((unsigned short)0x1131),          /**<HEADSET HS*/
498         BT_MESSAGE_ACCESS_SERVER_UUID = ((unsigned short)0x1132),/**<MESSAGE ACCESS SERVER*/
499         BT_MESSAGE_NOTIFICATION_SERVER_UUID = ((unsigned short)0x1133),/**<MESSAGE NOTIFICATION SERVER*/
500         BT_MESSAGE_ACCESS_PROFILE_UUID = ((unsigned short)0x1134),/**<MESSAGE ACCESS PROFILE*/
501         BT_PNP_INFORMATION_UUID = ((unsigned short)0x1200),     /**<PNP*/
502         BT_GENERIC_NETWORKING_UUID = ((unsigned short)0x1201),  /**<GENERIC NETWORKING*/
503         BT_GENERIC_FILE_TRANSFER_UUID = ((unsigned short)0x1202),/**<GENERIC FILE TRANSFER*/
504         BT_GENERIC_AUDIO_UUID = ((unsigned short)0x1203),       /**<GENERIC AUDIO*/
505         BT_GENERIC_TELEPHONY_UUID = ((unsigned short)0x1204),   /**<GENERIC TELEPHONY*/
506         BT_VIDEO_SOURCE_UUID = ((unsigned short)0x1303),        /**<VEDIO SOURCE*/
507         BT_VIDEO_SINK_UUID = ((unsigned short)0x1304),          /**<VEDIO SINK*/
508         BT_VIDEO_DISTRIBUTION_UUID = ((unsigned short)0x1305),  /**<VEDIO DISTRIBUTION*/
509         BT_HDP_UUID = ((unsigned short)0x1400),                 /**<HDP*/
510         BT_HDP_SOURCE_UUID = ((unsigned short)0x1401),          /**<HDP SOURCE*/
511         BT_HDP_SINK_UUID = ((unsigned short)0x1402),            /**<HDP SINK*/
512         BT_OBEX_SYNCML_TRANSFER_UUID = ((unsigned short)0x0000) /**<OBEX_SYNC*/ /* Will be removed */
513 } bluetooth_service_uuid_list_t;
514
515
516 /**************************************************
517 *                             Struct define
518 ***************************************************/
519
520 typedef struct {
521         unsigned char bd_addr[BT_ADDRESS_LENGTH_MAX];
522         char addr_str[BT_ADDRESS_STR_LEN + 1];
523         char name[BT_DEVICE_NAME_LENGTH_MAX + 1];/**<  Device Name */
524         bt_service_class_t service_list;  /**< type of service */
525         bt_major_class_t major_class; /**< major class of the device */
526         bt_minor_class_t minor_class; /**< minor class of the device */
527         int authorized;    /**< authorized ? */
528         bt_cod_service_class_t service_class; /**< service class of device */
529         int rssi;        /**< Received signal strength indicator */
530         int connected_mask;
531         int status;
532         int item_type;
533         int uuid_count;
534         char **uuids;
535         void *layout;
536         void *entry;
537         void *genlist_item;
538         void *net_profile;
539         gboolean is_bonded;
540         gboolean call_checked;
541         gboolean media_checked;
542         gboolean hid_checked;
543         gboolean network_checked;
544         gboolean highlighted;
545         void *ugd;
546 } bt_dev_t;
547
548 typedef struct {
549         unsigned char bd_addr[BT_ADDRESS_LENGTH_MAX];
550 } bt_address_t;
551
552
553 /**************************************************
554 *                              Callback type
555 ***************************************************/
556
557 typedef void (*bt_app_back_cb)(void *, void *, void *);
558
559
560 #ifdef __cplusplus
561 }
562 #endif
563
564 #endif /* __BT_TYPE_DEFINE_H__ */