Blynk library for embedded hardware. Works with Arduino, ESP8266, Raspberry Pi, Intel Edison/Galileo, LinkIt ONE, Particle Core/Photon, Energia, ARM mbed, etc. http://www.blynk.cc/
Dependents: Blynk_RBL_BLE_Nano Blynk_MicroBit Blynk_Serial Blynk_RBL_BLE_Nano
Diff: BlynkSimpleUserDefined.h
- Revision:
- 0:58b20b438383
- Child:
- 9:7369ec77a3ea
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/BlynkSimpleUserDefined.h Sat May 07 08:02:50 2016 +0000 @@ -0,0 +1,79 @@ +/** + * @file BlynkSimpleUserManaged.h + * @author Volodymyr Shymanskyy + * @license This project is released under the MIT License (MIT) + * @copyright Copyright (c) 2015 Volodymyr Shymanskyy + * @date Jun 2015 + * @brief + * + */ + +#ifndef BlynkSimpleUserManaged_h +#define BlynkSimpleUserManaged_h + +#ifndef BLYNK_INFO_CONNECTION +#define BLYNK_INFO_CONNECTION "custom" +#endif + +#include <BlynkApiMbed.h> +#include <Blynk/BlynkProtocol.h> + +extern size_t BlynkStreamRead(void* buf, size_t len); +extern size_t BlynkStreamWrite(const void* buf, size_t len); + +class BlynkTransportUserDefined +{ +public: + BlynkTransportUserDefined() + : mConn (false) + {} + + bool connect() { + return mConn = true; + } + + void disconnect() { mConn = false; } + + bool connected() { + return mConn; + } + + size_t read(void* buf, size_t len) { + return BlynkStreamRead(buf, len); + } + + size_t write(const void* buf, size_t len) { + return BlynkStreamWrite(buf, len); + } + + size_t available() { + return 0; + } + +private: + bool mConn; +}; + +class BlynkUserDefined + : public BlynkProtocol<BlynkTransportUserDefined> +{ + typedef BlynkProtocol<BlynkTransportUserDefined> Base; +public: + BlynkUserDefined(BlynkTransportUserDefined& transp) + : Base(transp) + {} + + void begin(const char* auth) + { + Base::begin(auth); + } + +private: +}; + +static BlynkTransportUserDefined _blynkTransport; +BlynkUserDefined Blynk(_blynkTransport); + +#include <BlynkWidgets.h> + +#endif