Development mbed library for MAX32630FTHR

Dependents:   blinky_max32630fthr

Committer:
switches
Date:
Fri Nov 11 20:59:50 2016 +0000
Revision:
0:5c4d7b2438d3
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
switches 0:5c4d7b2438d3 1
switches 0:5c4d7b2438d3 2 /** \addtogroup netsocket */
switches 0:5c4d7b2438d3 3 /** @{*/
switches 0:5c4d7b2438d3 4 /* CellularInterface
switches 0:5c4d7b2438d3 5 * Copyright (c) 2015 ARM Limited
switches 0:5c4d7b2438d3 6 *
switches 0:5c4d7b2438d3 7 * Licensed under the Apache License, Version 2.0 (the "License");
switches 0:5c4d7b2438d3 8 * you may not use this file except in compliance with the License.
switches 0:5c4d7b2438d3 9 * You may obtain a copy of the License at
switches 0:5c4d7b2438d3 10 *
switches 0:5c4d7b2438d3 11 * http://www.apache.org/licenses/LICENSE-2.0
switches 0:5c4d7b2438d3 12 *
switches 0:5c4d7b2438d3 13 * Unless required by applicable law or agreed to in writing, software
switches 0:5c4d7b2438d3 14 * distributed under the License is distributed on an "AS IS" BASIS,
switches 0:5c4d7b2438d3 15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
switches 0:5c4d7b2438d3 16 * See the License for the specific language governing permissions and
switches 0:5c4d7b2438d3 17 * limitations under the License.
switches 0:5c4d7b2438d3 18 */
switches 0:5c4d7b2438d3 19
switches 0:5c4d7b2438d3 20 #ifndef CELLULAR_INTERFACE_H
switches 0:5c4d7b2438d3 21 #define CELLULAR_INTERFACE_H
switches 0:5c4d7b2438d3 22
switches 0:5c4d7b2438d3 23 #include "netsocket/NetworkInterface.h"
switches 0:5c4d7b2438d3 24
switches 0:5c4d7b2438d3 25
switches 0:5c4d7b2438d3 26 /** CellularInterface class
switches 0:5c4d7b2438d3 27 *
switches 0:5c4d7b2438d3 28 * Common interface that is shared between ethernet hardware
switches 0:5c4d7b2438d3 29 */
switches 0:5c4d7b2438d3 30 class CellularInterface : public NetworkInterface
switches 0:5c4d7b2438d3 31 {
switches 0:5c4d7b2438d3 32 public:
switches 0:5c4d7b2438d3 33 /** CellularInterface lifetime
switches 0:5c4d7b2438d3 34 */
switches 0:5c4d7b2438d3 35 virtual ~CellularInterface() {};
switches 0:5c4d7b2438d3 36
switches 0:5c4d7b2438d3 37 /** Set the cellular network APN and credentials
switches 0:5c4d7b2438d3 38 *
switches 0:5c4d7b2438d3 39 * @param apn Optional name of the network to connect to
switches 0:5c4d7b2438d3 40 * @param user Optional username for the APN
switches 0:5c4d7b2438d3 41 * @param pass Optional password fot the APN
switches 0:5c4d7b2438d3 42 * @return 0 on success, negative error code on failure
switches 0:5c4d7b2438d3 43 */
switches 0:5c4d7b2438d3 44 virtual nsapi_error_t set_credentials(const char *apn,
switches 0:5c4d7b2438d3 45 const char *username = 0, const char *password = 0) = 0;
switches 0:5c4d7b2438d3 46
switches 0:5c4d7b2438d3 47 /** Start the interface
switches 0:5c4d7b2438d3 48 *
switches 0:5c4d7b2438d3 49 * @param apn Optional name of the network to connect to
switches 0:5c4d7b2438d3 50 * @param username Optional username for your APN
switches 0:5c4d7b2438d3 51 * @param password Optional password for your APN
switches 0:5c4d7b2438d3 52 * @return 0 on success, negative error code on failure
switches 0:5c4d7b2438d3 53 */
switches 0:5c4d7b2438d3 54 virtual nsapi_error_t connect(const char *apn,
switches 0:5c4d7b2438d3 55 const char *username = 0, const char *password = 0) = 0;
switches 0:5c4d7b2438d3 56
switches 0:5c4d7b2438d3 57 /** Start the interface
switches 0:5c4d7b2438d3 58 *
switches 0:5c4d7b2438d3 59 * Attempts to connect to a cellular network based on supplied credentials
switches 0:5c4d7b2438d3 60 *
switches 0:5c4d7b2438d3 61 * @return 0 on success, negative error code on failure
switches 0:5c4d7b2438d3 62 */
switches 0:5c4d7b2438d3 63 virtual nsapi_error_t connect() = 0;
switches 0:5c4d7b2438d3 64
switches 0:5c4d7b2438d3 65 /** Stop the interface
switches 0:5c4d7b2438d3 66 *
switches 0:5c4d7b2438d3 67 * @return 0 on success, negative error code on failure
switches 0:5c4d7b2438d3 68 */
switches 0:5c4d7b2438d3 69 virtual nsapi_error_t disconnect() = 0;
switches 0:5c4d7b2438d3 70 };
switches 0:5c4d7b2438d3 71
switches 0:5c4d7b2438d3 72
switches 0:5c4d7b2438d3 73 #endif
switches 0:5c4d7b2438d3 74
switches 0:5c4d7b2438d3 75 /** @}*/