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
Blynk/BlynkTemplates.h@9:7369ec77a3ea, 2017-01-05 (annotated)
- Committer:
- Volodymyr Shymanskyy
- Date:
- Thu Jan 05 14:55:36 2017 +0200
- Revision:
- 9:7369ec77a3ea
- Parent:
- 3:31e4b850b126
Update version
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Volodymyr Shymanskyy |
3:31e4b850b126 | 1 | class BlynkStackOnly |
Volodymyr Shymanskyy |
3:31e4b850b126 | 2 | { |
Volodymyr Shymanskyy |
3:31e4b850b126 | 3 | protected: |
Volodymyr Shymanskyy |
3:31e4b850b126 | 4 | BlynkStackOnly() {} |
Volodymyr Shymanskyy |
3:31e4b850b126 | 5 | ~BlynkStackOnly() {} |
Volodymyr Shymanskyy |
9:7369ec77a3ea | 6 | |
Volodymyr Shymanskyy |
3:31e4b850b126 | 7 | private: |
Volodymyr Shymanskyy |
9:7369ec77a3ea | 8 | /// @brief Declared as private to prevent usage of dynamic memory |
Volodymyr Shymanskyy |
3:31e4b850b126 | 9 | void* operator new(size_t size); |
Volodymyr Shymanskyy |
9:7369ec77a3ea | 10 | /// @brief Declared as private to prevent usage of dynamic memory |
Volodymyr Shymanskyy |
3:31e4b850b126 | 11 | void operator delete(void *p); |
Volodymyr Shymanskyy |
3:31e4b850b126 | 12 | }; |
Volodymyr Shymanskyy |
3:31e4b850b126 | 13 | |
Volodymyr Shymanskyy |
3:31e4b850b126 | 14 | class BlynkNonCopyable |
Volodymyr Shymanskyy |
3:31e4b850b126 | 15 | { |
Volodymyr Shymanskyy |
3:31e4b850b126 | 16 | protected: |
Volodymyr Shymanskyy |
3:31e4b850b126 | 17 | BlynkNonCopyable(){} |
Volodymyr Shymanskyy |
3:31e4b850b126 | 18 | ~BlynkNonCopyable(){} |
Volodymyr Shymanskyy |
3:31e4b850b126 | 19 | |
Volodymyr Shymanskyy |
3:31e4b850b126 | 20 | private: |
Volodymyr Shymanskyy |
3:31e4b850b126 | 21 | /// @brief Declared as private to prevent usage of copy constructor |
Volodymyr Shymanskyy |
3:31e4b850b126 | 22 | BlynkNonCopyable(const BlynkNonCopyable&); |
Volodymyr Shymanskyy |
3:31e4b850b126 | 23 | /// @brief Declared as private to prevent usage of assignment operator |
Volodymyr Shymanskyy |
3:31e4b850b126 | 24 | BlynkNonCopyable& operator=(const BlynkNonCopyable&); |
Volodymyr Shymanskyy |
3:31e4b850b126 | 25 | }; |
Volodymyr Shymanskyy |
3:31e4b850b126 | 26 | |
Volodymyr Shymanskyy |
3:31e4b850b126 | 27 | template<typename T> |
Volodymyr Shymanskyy |
9:7369ec77a3ea | 28 | class BlynkSingleton |
Volodymyr Shymanskyy |
9:7369ec77a3ea | 29 | : public BlynkNonCopyable |
Volodymyr Shymanskyy |
3:31e4b850b126 | 30 | { |
Volodymyr Shymanskyy |
3:31e4b850b126 | 31 | public: |
Volodymyr Shymanskyy |
3:31e4b850b126 | 32 | /** @brief Returns the instance of the singleton type |
Volodymyr Shymanskyy |
3:31e4b850b126 | 33 | When called for the first time, the singleton instance will be |
Volodymyr Shymanskyy |
3:31e4b850b126 | 34 | created. All subsequent calls will return a reference to the |
Volodymyr Shymanskyy |
3:31e4b850b126 | 35 | previously created instance. |
Volodymyr Shymanskyy |
3:31e4b850b126 | 36 | @return The singleton instance |
Volodymyr Shymanskyy |
3:31e4b850b126 | 37 | */ |
Volodymyr Shymanskyy |
3:31e4b850b126 | 38 | static T* instance() |
Volodymyr Shymanskyy |
3:31e4b850b126 | 39 | { |
Volodymyr Shymanskyy |
3:31e4b850b126 | 40 | static T instance; |
Volodymyr Shymanskyy |
3:31e4b850b126 | 41 | return &instance; |
Volodymyr Shymanskyy |
3:31e4b850b126 | 42 | } |
Volodymyr Shymanskyy |
3:31e4b850b126 | 43 | protected: |
Volodymyr Shymanskyy |
3:31e4b850b126 | 44 | BlynkSingleton() {} |
Volodymyr Shymanskyy |
3:31e4b850b126 | 45 | ~BlynkSingleton() {} |
Volodymyr Shymanskyy |
3:31e4b850b126 | 46 | }; |
Volodymyr Shymanskyy |
3:31e4b850b126 | 47 |