Host library for controlling a WiConnect enabled Wi-Fi module.
Dependents: wiconnect-ota_example wiconnect-web_setup_example wiconnect-test-console wiconnect-tcp_server_example ... more
NetworkInterface.h
- Committer:
- dan_ackme
- Date:
- 2014-08-11
- Revision:
- 6:8a87a59d0d21
- Parent:
- 1:6ec9998427ad
- Child:
- 11:ea484e1b7fc4
File content as of revision 6:8a87a59d0d21:
/* * Copyright 2014, ACKme Networks * All Rights Reserved. * * This is UNPUBLISHED PROPRIETARY SOURCE CODE of ACKme Networks; * the contents of this file may not be disclosed to third parties, copied * or duplicated in any form, in whole or in part, without the prior * written permission of ACKme Networks. */ #pragma once #include "WiconnectTypes.h" #include "types/ScanResultList.h" namespace wiconnect { class NetworkInterface { public: WiconnectResult startWebSetup(const char *ssid = NULL, const char *password = NULL, const Callback &completeHandler = Callback()); WiconnectResult stopWebSetup(); WiconnectResult isWebSetupRunning(bool *isRunningPtr); WiconnectResult join(const char* ssid = NULL, const char *password = NULL, const Callback &completeHandler = Callback()); WiconnectResult leave(); WiconnectResult getNetworkStatus(NetworkStatus *statusPtr); // WiconnectResult startSoftAp(const char* ssid = NULL, const char *password = NULL, const Callback &clientConnectedCallback = Callback()); // WiconnectResult stopSoftAp(); // WiconnectResult getSoftApClientList(); WiconnectResult scan(ScanResultList &resultList, const uint8_t *channelList = NULL, const char* ssid = NULL); WiconnectResult ping(const char *domain = NULL, uint32_t *timeMsPtr = NULL); WiconnectResult lookup(const char *domain, uint32_t *ipAddressPtr); WiconnectResult setDhcpEnabled(bool enabled); WiconnectResult getDhcpEnabled(bool *enabledPtr); WiconnectResult setIpSettings(uint32_t ip, uint32_t netmask, uint32_t gateway); WiconnectResult setIpSettings(const char* ip, const char* netmask, const char* gateway); WiconnectResult getIpSettings(uint32_t *ip, uint32_t *netmask, uint32_t *gateway); WiconnectResult getSignalStrength(NetworkSignalStrength *signalStrengthPtr); static bool strToIp(const char *str, uint32_t *intPtr); static const char* ipToStr(uint32_t ip, char *ipStrBuffer = NULL); static const char* networkStatusToStr(NetworkStatus status); static const char* signalStrengthToStr(NetworkSignalStrength signalStrenth); static NetworkSignalStrength rssiToSignalStrength(int rssi); static NetworkSecurity strToNetworkSecurity(const char *str); static const char* networkSecurityToStr(NetworkSecurity security); static bool strToSsid(const char *str, Ssid *ssid); static const char* ssidToStr(const Ssid *ssid, char *ssidStrBuffer = NULL); static bool strToMacAddress(const char *str, MacAddress *macAddress); static const char* macAddressToStr(const MacAddress *macAddress, char *macStrBuffer = NULL); protected: NetworkInterface(Wiconnect *wiconnect); WiconnectResult processScanResults(char *resultStr, ScanResultList &resultList); #ifdef WICONNECT_ASYNC_TIMER_ENABLED Callback completeHandler; PeriodicTimer monitorTimer; void webSetupStatusMonitor(); void webSetupStatusCheckCallback(WiconnectResult result, void *arg1, void *arg2); void joinStatusMonitor(); void joinStatusCheckCallback(WiconnectResult result, void *arg1, void *arg2); //void scanCompleteCallback(WiconnectResult result, void *arg1, void *arg2); #endif private: Wiconnect *wiconnect; }; }