zhang chenhong / Mbed 2 deprecated IDW01M1_Cloud_IBM

Dependencies:   mbed Servo X_NUCLEO_IKS01A2 X_NUCLEO_IDW01M1v2 NetworkSocketAPI NDefLib MQTT

Committer:
mridup
Date:
Fri Apr 08 12:07:17 2016 +0000
Revision:
0:cbf8bc43bc9e
changes for optimization in Keil compiler

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mridup 0:cbf8bc43bc9e 1 /* WiFiInterface Base Class
mridup 0:cbf8bc43bc9e 2 * Copyright (c) 2015 ARM Limited
mridup 0:cbf8bc43bc9e 3 *
mridup 0:cbf8bc43bc9e 4 * Licensed under the Apache License, Version 2.0 (the "License");
mridup 0:cbf8bc43bc9e 5 * you may not use this file except in compliance with the License.
mridup 0:cbf8bc43bc9e 6 * You may obtain a copy of the License at
mridup 0:cbf8bc43bc9e 7 *
mridup 0:cbf8bc43bc9e 8 * http://www.apache.org/licenses/LICENSE-2.0
mridup 0:cbf8bc43bc9e 9 *
mridup 0:cbf8bc43bc9e 10 * Unless required by applicable law or agreed to in writing, software
mridup 0:cbf8bc43bc9e 11 * distributed under the License is distributed on an "AS IS" BASIS,
mridup 0:cbf8bc43bc9e 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
mridup 0:cbf8bc43bc9e 13 * See the License for the specific language governing permissions and
mridup 0:cbf8bc43bc9e 14 * limitations under the License.
mridup 0:cbf8bc43bc9e 15 */
mridup 0:cbf8bc43bc9e 16
mridup 0:cbf8bc43bc9e 17 #ifndef WIFI_INTERFACE_H
mridup 0:cbf8bc43bc9e 18 #define WIFI_INTERFACE_H
mridup 0:cbf8bc43bc9e 19
mridup 0:cbf8bc43bc9e 20 #include "NetworkInterface.h"
mridup 0:cbf8bc43bc9e 21
mridup 0:cbf8bc43bc9e 22 /** Enum for WiFi encryption types
mridup 0:cbf8bc43bc9e 23 */
mridup 0:cbf8bc43bc9e 24 enum ns_security_t {
mridup 0:cbf8bc43bc9e 25 NS_SECURITY_NONE = 0, /*!< open access point */
mridup 0:cbf8bc43bc9e 26 NS_SECURITY_WEP, /*!< phrase conforms to WEP */
mridup 0:cbf8bc43bc9e 27 NS_SECURITY_WPA, /*!< phrase conforms to WPA */
mridup 0:cbf8bc43bc9e 28 NS_SECURITY_WPA2, /*!< phrase conforms to WPA2 */
mridup 0:cbf8bc43bc9e 29 };
mridup 0:cbf8bc43bc9e 30
mridup 0:cbf8bc43bc9e 31
mridup 0:cbf8bc43bc9e 32 /** WiFiInterface class
mridup 0:cbf8bc43bc9e 33 * Common interface that is shared between WiFi devices
mridup 0:cbf8bc43bc9e 34 */
mridup 0:cbf8bc43bc9e 35 class WiFiInterface : public NetworkInterface
mridup 0:cbf8bc43bc9e 36 {
mridup 0:cbf8bc43bc9e 37 public:
mridup 0:cbf8bc43bc9e 38 /** Start the interface
mridup 0:cbf8bc43bc9e 39 * @param ssid Name of the network to connect to
mridup 0:cbf8bc43bc9e 40 * @param pass Security passphrase to connect to the network
mridup 0:cbf8bc43bc9e 41 * @param security Type of encryption to connect with
mridup 0:cbf8bc43bc9e 42 * @return 0 on success
mridup 0:cbf8bc43bc9e 43 */
mridup 0:cbf8bc43bc9e 44 virtual int32_t connect(const char *ssid, const char *pass, ns_security_t security = NS_SECURITY_NONE) = 0;
mridup 0:cbf8bc43bc9e 45
mridup 0:cbf8bc43bc9e 46 /** Stop the interface
mridup 0:cbf8bc43bc9e 47 * @return 0 on success
mridup 0:cbf8bc43bc9e 48 */
mridup 0:cbf8bc43bc9e 49 virtual int32_t disconnect() = 0;
mridup 0:cbf8bc43bc9e 50 };
mridup 0:cbf8bc43bc9e 51
mridup 0:cbf8bc43bc9e 52 #endif