I added functionality to get the RSSI, BER, and Cell Neighbor for reporting connection issues to M2X

Dependencies:   WncControllerK64F

Committer:
JMF
Date:
Thu Nov 17 16:13:29 2016 +0000
Revision:
18:198e9b0acf11
Parent:
1:e511ea8d39d5
Updates to mbed os resulted in mutex.h going away and rtos.h needed to be used; This fixes the Mutex typedef failure.  Also cast data buffers from 'char *' to (const std::uint8_t*) to conform with Fred's changes in WncController

Who changed what in which revision?

UserRevisionLine numberNew contents of line
JMF 1:e511ea8d39d5 1 /* =====================================================================
JMF 1:e511ea8d39d5 2 Copyright © 2016, Avnet (R)
JMF 1:e511ea8d39d5 3
JMF 1:e511ea8d39d5 4 Contributors:
JMF 1:e511ea8d39d5 5 * James M Flynn, www.em.avnet.com
JMF 1:e511ea8d39d5 6
JMF 1:e511ea8d39d5 7 Licensed under the Apache License, Version 2.0 (the "License");
JMF 1:e511ea8d39d5 8 you may not use this file except in compliance with the License.
JMF 1:e511ea8d39d5 9 You may obtain a copy of the License at
JMF 1:e511ea8d39d5 10
JMF 1:e511ea8d39d5 11 http://www.apache.org/licenses/LICENSE-2.0
JMF 1:e511ea8d39d5 12
JMF 1:e511ea8d39d5 13 Unless required by applicable law or agreed to in writing,
JMF 1:e511ea8d39d5 14 software distributed under the License is distributed on an
JMF 1:e511ea8d39d5 15 "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
JMF 1:e511ea8d39d5 16 either express or implied. See the License for the specific
JMF 1:e511ea8d39d5 17 language governing permissions and limitations under the License.
JMF 1:e511ea8d39d5 18
JMF 1:e511ea8d39d5 19 @file WNCInterface.cpp
JMF 1:e511ea8d39d5 20 @version 1.0
JMF 1:e511ea8d39d5 21 @date Sept 2016
JMF 1:e511ea8d39d5 22
JMF 1:e511ea8d39d5 23 ======================================================================== */
JMF 1:e511ea8d39d5 24
JMF 1:e511ea8d39d5 25 #include "Socket.h"
JMF 1:e511ea8d39d5 26
JMF 1:e511ea8d39d5 27 #ifndef ENDPOINT_H
JMF 1:e511ea8d39d5 28 #define ENDPOINT_H
JMF 1:e511ea8d39d5 29
JMF 1:e511ea8d39d5 30 struct EndPointAddr {
JMF 1:e511ea8d39d5 31 char IP[16];
JMF 1:e511ea8d39d5 32 unsigned int port;
JMF 1:e511ea8d39d5 33 };
JMF 1:e511ea8d39d5 34
JMF 1:e511ea8d39d5 35 class UDPSocket;
JMF 1:e511ea8d39d5 36
JMF 1:e511ea8d39d5 37 class Endpoint {
JMF 1:e511ea8d39d5 38 friend class UDPSocket;
JMF 1:e511ea8d39d5 39
JMF 1:e511ea8d39d5 40 public:
JMF 1:e511ea8d39d5 41 Endpoint(void);
JMF 1:e511ea8d39d5 42 ~Endpoint(void);
JMF 1:e511ea8d39d5 43
JMF 1:e511ea8d39d5 44 /** Reset the address of the endpoint by clearning the internal endpoint IP address
JMF 1:e511ea8d39d5 45 \param none
JMF 1:e511ea8d39d5 46 \return none.
JMF 1:e511ea8d39d5 47 */
JMF 1:e511ea8d39d5 48 void reset_address(void);
JMF 1:e511ea8d39d5 49
JMF 1:e511ea8d39d5 50 /** Set the address of the endpoint
JMF 1:e511ea8d39d5 51 \param host The endpoint address (it can either be an IP Address or a hostname that will be resolved with DNS).
JMF 1:e511ea8d39d5 52 \param port The endpoint port
JMF 1:e511ea8d39d5 53 \return 0 on success, -1 on failure (when an hostname cannot be resolved by DNS).
JMF 1:e511ea8d39d5 54 */
JMF 1:e511ea8d39d5 55 int set_address(const char* host, const int port);
JMF 1:e511ea8d39d5 56
JMF 1:e511ea8d39d5 57 /** Get the IP address of the endpoint
JMF 1:e511ea8d39d5 58 \return The IP address of the endpoint.
JMF 1:e511ea8d39d5 59 */
JMF 1:e511ea8d39d5 60 char* get_address(void);
JMF 1:e511ea8d39d5 61
JMF 1:e511ea8d39d5 62 /** Get the port of the endpoint
JMF 1:e511ea8d39d5 63 \return The port of the endpoint
JMF 1:e511ea8d39d5 64 */
JMF 1:e511ea8d39d5 65 int get_port(void);
JMF 1:e511ea8d39d5 66
JMF 1:e511ea8d39d5 67 private:
JMF 1:e511ea8d39d5 68 EndPointAddr _epAddr;
JMF 1:e511ea8d39d5 69 };
JMF 1:e511ea8d39d5 70
JMF 1:e511ea8d39d5 71 #endif