apply FSL(Flora Software License)
[apps/home/ug-wifi-direct.git] / ug-wifidirect / include / wfd_client.h
1 /*
2  * Copyright 2012  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://www.tizenopensource.org/license
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * 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 /*
18  * This file declares Wi-Fi direct client functions.
19  *
20  * @file    wfd_client.h
21  * @author  Gibyoung Kim (lastkgb.kim@samsung.com)
22  * @version 0.1
23  */
24
25
26 #ifndef __WFD_CLIENT_H__
27 #define __WFD_CLIENT_H__
28
29
30 typedef enum
31 {
32     WFD_DEVICE_TYPE_COMPUTER = WIFI_DIRECT_PRIMARY_DEVICE_TYPE_COMPUTER,
33     WFD_DEVICE_TYPE_INPUT_DEVICE = WIFI_DIRECT_PRIMARY_DEVICE_TYPE_INPUT_DEVICE,
34     WFD_DEVICE_TYPE_PRINTER = WIFI_DIRECT_PRIMARY_DEVICE_TYPE_PRINTER,
35     WFD_DEVICE_TYPE_CAMERA = WIFI_DIRECT_PRIMARY_DEVICE_TYPE_CAMERA,
36     WFD_DEVICE_TYPE_STORAGE = WIFI_DIRECT_PRIMARY_DEVICE_TYPE_STORAGE,
37     WFD_DEVICE_TYPE_NW_INFRA = WIFI_DIRECT_PRIMARY_DEVICE_TYPE_NETWORK_INFRA,
38     WFD_DEVICE_TYPE_DISPLAYS = WIFI_DIRECT_PRIMARY_DEVICE_TYPE_DISPLAY,
39     WFD_DEVICE_TYPE_MM_DEVICES =
40         WIFI_DIRECT_PRIMARY_DEVICE_TYPE_MULTIMEDIA_DEVICE,
41     WFD_DEVICE_TYPE_GAME_DEVICES = WIFI_DIRECT_PRIMARY_DEVICE_TYPE_GAME_DEVICE,
42     WFD_DEVICE_TYPE_TELEPHONE = WIFI_DIRECT_PRIMARY_DEVICE_TYPE_TELEPHONE,
43     WFD_DEVICE_TYPE_AUDIO = WIFI_DIRECT_PRIMARY_DEVICE_TYPE_AUDIO,
44     WFD_DEVICE_TYPE_OTHER = WIFI_DIRECT_PRIMARY_DEVICE_TYPE_OTHER,
45 } device_type_e;
46
47 typedef enum
48 {
49     WFD_LINK_STATUS_DEACTIVATED = WIFI_DIRECT_STATE_DEACTIVATED,
50     WFD_LINK_STATUS_DEACTIVATING = WIFI_DIRECT_STATE_DEACTIVATING,
51     WFD_LINK_STATUS_ACTIVATING = WIFI_DIRECT_STATE_ACTIVATING,
52     WFD_LINK_STATUS_ACTIVATED = WIFI_DIRECT_STATE_ACTIVATED,
53     WFD_LINK_STATUS_DISCOVERING = WIFI_DIRECT_STATE_DISCOVERING,
54     WFD_LINK_STATUS_CONNECTING = WIFI_DIRECT_STATE_CONNECTING,
55     WFD_LINK_STATUS_DISCONNECTING = WIFI_DIRECT_STATE_DISCONNECTING,
56     WFD_LINK_STATUS_CONNECTED = WIFI_DIRECT_STATE_CONNECTED,
57     WFD_LINK_STATUS_GROUP_OWNER = WIFI_DIRECT_STATE_GROUP_OWNER,
58 } link_status_e;
59
60 typedef enum
61 {
62     PEER_CONN_STATUS_DISCONNECTED,
63     PEER_CONN_STATUS_DISCONNECTING,
64     PEER_CONN_STATUS_CONNECTING = PEER_CONN_STATUS_DISCONNECTING,
65     PEER_CONN_STATUS_CONNECTED,
66 } conn_status_e;
67
68 int wfd_get_vconf_status(void *data);
69 int wfd_wifi_off();
70 int init_wfd_client(void *data);
71 int deinit_wfd_client(void *data);
72 int wfd_client_get_link_status(void);
73 int wfd_client_start_discovery(void *data);
74 int wfd_client_switch_on(void *data);
75 int wfd_client_switch_off(void *data);
76 int wfd_client_swtch_force(void *data, int onoff);
77 int wfd_client_connect(const char *mac_addr);
78 int wfd_client_disconnect(const char *mac_addr);
79
80 #endif                          /* __WFD_CLIENT_H__ */