1ad028ee7Sopenharmony_ci/* 2ad028ee7Sopenharmony_ci * Copyright (c) 2020 Huawei Device Co., Ltd. 3ad028ee7Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 4ad028ee7Sopenharmony_ci * you may not use this file except in compliance with the License. 5ad028ee7Sopenharmony_ci * You may obtain a copy of the License at 6ad028ee7Sopenharmony_ci * 7ad028ee7Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 8ad028ee7Sopenharmony_ci * 9ad028ee7Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 10ad028ee7Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 11ad028ee7Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12ad028ee7Sopenharmony_ci * See the License for the specific language governing permissions and 13ad028ee7Sopenharmony_ci * limitations under the License. 14ad028ee7Sopenharmony_ci */ 15ad028ee7Sopenharmony_ci 16ad028ee7Sopenharmony_ci/** 17ad028ee7Sopenharmony_ci * @addtogroup wifiservice 18ad028ee7Sopenharmony_ci * @{ 19ad028ee7Sopenharmony_ci * 20ad028ee7Sopenharmony_ci * @brief Provides functions for the Wi-Fi station and hotspot modes. 21ad028ee7Sopenharmony_ci * 22ad028ee7Sopenharmony_ci * You can use this module to enable and disable the Wi-Fi station or hotspot mode, connect to and disconnect from a 23ad028ee7Sopenharmony_ci * station or hotspot, query the station or hotspot status, and listen for events. \n 24ad028ee7Sopenharmony_ci * 25ad028ee7Sopenharmony_ci * @since 7 26ad028ee7Sopenharmony_ci */ 27ad028ee7Sopenharmony_ci 28ad028ee7Sopenharmony_ci/** 29ad028ee7Sopenharmony_ci * @file wifi_linked_info.h 30ad028ee7Sopenharmony_ci * 31ad028ee7Sopenharmony_ci * @brief Defines the data structure and macro of the Wi-Fi connection information. 32ad028ee7Sopenharmony_ci * 33ad028ee7Sopenharmony_ci * @since 7 34ad028ee7Sopenharmony_ci */ 35ad028ee7Sopenharmony_ci 36ad028ee7Sopenharmony_ci#ifndef HARMONY_OS_LITE_WIFI_LINKED_INFO_H 37ad028ee7Sopenharmony_ci#define HARMONY_OS_LITE_WIFI_LINKED_INFO_H 38ad028ee7Sopenharmony_ci#include "wifi_device_config.h" 39ad028ee7Sopenharmony_ci 40ad028ee7Sopenharmony_ci/** 41ad028ee7Sopenharmony_ci * @brief Enumerates Wi-Fi connection states. 42ad028ee7Sopenharmony_ci * 43ad028ee7Sopenharmony_ci * @since 7 44ad028ee7Sopenharmony_ci */ 45ad028ee7Sopenharmony_citypedef enum { 46ad028ee7Sopenharmony_ci /** Disconnected */ 47ad028ee7Sopenharmony_ci WIFI_DISCONNECTED, 48ad028ee7Sopenharmony_ci /** Connected */ 49ad028ee7Sopenharmony_ci WIFI_CONNECTED 50ad028ee7Sopenharmony_ci} WifiConnState; 51ad028ee7Sopenharmony_ci 52ad028ee7Sopenharmony_ci/** 53ad028ee7Sopenharmony_ci * @brief Represents the Wi-Fi connection information. 54ad028ee7Sopenharmony_ci * 55ad028ee7Sopenharmony_ci * This refers to the information about the hotspot connected to this station. The information is obtained using 56ad028ee7Sopenharmony_ci * {@link GetLinkedInfo}. 57ad028ee7Sopenharmony_ci * 58ad028ee7Sopenharmony_ci * @since 7 59ad028ee7Sopenharmony_ci */ 60ad028ee7Sopenharmony_citypedef struct { 61ad028ee7Sopenharmony_ci /** Service set ID (SSID). For its length, see {@link WIFI_MAX_SSID_LEN}. */ 62ad028ee7Sopenharmony_ci char ssid[WIFI_MAX_SSID_LEN]; 63ad028ee7Sopenharmony_ci /** Basic service set ID (BSSID). For its length, see {@link WIFI_MAC_LEN}. */ 64ad028ee7Sopenharmony_ci unsigned char bssid[WIFI_MAC_LEN]; 65ad028ee7Sopenharmony_ci /** Received signal strength indicator (RSSI) */ 66ad028ee7Sopenharmony_ci int rssi; 67ad028ee7Sopenharmony_ci /** Wi-Fi band information of hotspot */ 68ad028ee7Sopenharmony_ci int band; 69ad028ee7Sopenharmony_ci /** Wi-Fi frequency information of hotspot */ 70ad028ee7Sopenharmony_ci int frequency; 71ad028ee7Sopenharmony_ci /** Wi-Fi connection state, which is defined in {@link WifiConnState} */ 72ad028ee7Sopenharmony_ci WifiConnState connState; 73ad028ee7Sopenharmony_ci /** Reason for Wi-Fi disconnection */ 74ad028ee7Sopenharmony_ci unsigned short disconnectedReason; 75ad028ee7Sopenharmony_ci /** IP address of the connected hotspot */ 76ad028ee7Sopenharmony_ci unsigned int ipAddress; 77ad028ee7Sopenharmony_ci} WifiLinkedInfo; 78ad028ee7Sopenharmony_ci#endif // HARMONY_OS_LITE_WIFI_LINKED_INFO_H 79ad028ee7Sopenharmony_ci/** @} */ 80