An API for using MQTT over multiple transports
Dependencies: FP MQTTPacket
Dependents: Cellular_HelloMQTT IoTStarterKit GSwifiInterface_HelloMQTT IBMIoTClientEthernetExample ... more
This library is part of the EclipseTM Paho project; specifically the embedded client.
The goals of this API are:
- to be independent of any system library: hence templates parameters for networking, timer and threading classes
- not to rely on heap storage, only automatic (I think this is a good thing)
- to limit memory use, for instance by defining the size of the buffers and arrays used at object creation time
Diff: MQTTmbed.h
- Revision:
- 48:187c6d4d7812
- Parent:
- 47:f313853d22a6
- Child:
- 50:c37c8236e84a
--- a/MQTTmbed.h Thu Aug 10 14:09:33 2017 +0000 +++ b/MQTTmbed.h Thu Sep 07 09:53:04 2017 +0100 @@ -8,42 +8,46 @@ public: Countdown() { - t = new Timer(); + t = new Timer(); } - + Countdown(int ms) { t = new Timer(); - countdown_ms(ms); + countdown_ms(ms); } - - + + ~Countdown() + { + delete t; + } + bool expired() { return t->read_ms() >= interval_end_ms; } - - void countdown_ms(unsigned long ms) + + void countdown_ms(unsigned long ms) { t->stop(); interval_end_ms = ms; t->reset(); t->start(); } - + void countdown(int seconds) { countdown_ms((unsigned long)seconds * 1000L); } - + int left_ms() { return interval_end_ms - t->read_ms(); } - + private: Timer *t; - unsigned long interval_end_ms; + unsigned long interval_end_ms; }; #endif \ No newline at end of file