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@3:31e4b850b126, 2016-06-24 (annotated)
- Committer:
- Volodymyr Shymanskyy
- Date:
- Fri Jun 24 01:10:02 2016 +0300
- Revision:
- 3:31e4b850b126
- Child:
- 9:7369ec77a3ea
Update library 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 |
3:31e4b850b126 | 6 | private: |
Volodymyr Shymanskyy |
3:31e4b850b126 | 7 | void* operator new(size_t size); |
Volodymyr Shymanskyy |
3:31e4b850b126 | 8 | void operator delete(void *p); |
Volodymyr Shymanskyy |
3:31e4b850b126 | 9 | }; |
Volodymyr Shymanskyy |
3:31e4b850b126 | 10 | |
Volodymyr Shymanskyy |
3:31e4b850b126 | 11 | class BlynkNonCopyable |
Volodymyr Shymanskyy |
3:31e4b850b126 | 12 | { |
Volodymyr Shymanskyy |
3:31e4b850b126 | 13 | protected: |
Volodymyr Shymanskyy |
3:31e4b850b126 | 14 | BlynkNonCopyable(){} |
Volodymyr Shymanskyy |
3:31e4b850b126 | 15 | ~BlynkNonCopyable(){} |
Volodymyr Shymanskyy |
3:31e4b850b126 | 16 | |
Volodymyr Shymanskyy |
3:31e4b850b126 | 17 | private: |
Volodymyr Shymanskyy |
3:31e4b850b126 | 18 | /// @brief Declared as private to prevent usage of copy constructor |
Volodymyr Shymanskyy |
3:31e4b850b126 | 19 | BlynkNonCopyable(const BlynkNonCopyable&); |
Volodymyr Shymanskyy |
3:31e4b850b126 | 20 | /// @brief Declared as private to prevent usage of assignment operator |
Volodymyr Shymanskyy |
3:31e4b850b126 | 21 | BlynkNonCopyable& operator=(const BlynkNonCopyable&); |
Volodymyr Shymanskyy |
3:31e4b850b126 | 22 | }; |
Volodymyr Shymanskyy |
3:31e4b850b126 | 23 | |
Volodymyr Shymanskyy |
3:31e4b850b126 | 24 | template<typename T> |
Volodymyr Shymanskyy |
3:31e4b850b126 | 25 | class BlynkSingleton: public BlynkNonCopyable |
Volodymyr Shymanskyy |
3:31e4b850b126 | 26 | { |
Volodymyr Shymanskyy |
3:31e4b850b126 | 27 | public: |
Volodymyr Shymanskyy |
3:31e4b850b126 | 28 | /** @brief Returns the instance of the singleton type |
Volodymyr Shymanskyy |
3:31e4b850b126 | 29 | When called for the first time, the singleton instance will be |
Volodymyr Shymanskyy |
3:31e4b850b126 | 30 | created. All subsequent calls will return a reference to the |
Volodymyr Shymanskyy |
3:31e4b850b126 | 31 | previously created instance. |
Volodymyr Shymanskyy |
3:31e4b850b126 | 32 | @return The singleton instance |
Volodymyr Shymanskyy |
3:31e4b850b126 | 33 | */ |
Volodymyr Shymanskyy |
3:31e4b850b126 | 34 | static T* instance() |
Volodymyr Shymanskyy |
3:31e4b850b126 | 35 | { |
Volodymyr Shymanskyy |
3:31e4b850b126 | 36 | static T instance; |
Volodymyr Shymanskyy |
3:31e4b850b126 | 37 | return &instance; |
Volodymyr Shymanskyy |
3:31e4b850b126 | 38 | } |
Volodymyr Shymanskyy |
3:31e4b850b126 | 39 | protected: |
Volodymyr Shymanskyy |
3:31e4b850b126 | 40 | BlynkSingleton() {} |
Volodymyr Shymanskyy |
3:31e4b850b126 | 41 | ~BlynkSingleton() {} |
Volodymyr Shymanskyy |
3:31e4b850b126 | 42 | }; |
Volodymyr Shymanskyy |
3:31e4b850b126 | 43 |