Hung Nguyen
/
CIS541-HW-MQTT
This is the codebase provided for CIS541 - Homework MQTT.
Diff: MQTTmbed.h
- Revision:
- 1:91e33a7fe0b5
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/MQTTmbed.h Sat Oct 07 14:52:56 2017 +0000 @@ -0,0 +1,50 @@ +// hot fix for NonCopyable error +// @Hung Nguyen + +#if !defined(MQTT_MBED_H) +#define MQTT_MBED_H + +#include "mbed.h" + +class Countdown +{ +public: + Countdown() { + t = new Timer(); + } + + Countdown(int ms) { + t = new Timer(); + countdown_ms(ms); + } + + ~Countdown() { + delete t; + } + + + bool expired() { + return t->read_ms() >= interval_end_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; +}; + +#endif \ No newline at end of file