Files
IoTManager/include/Class/CallBackTest.h

26 lines
1022 B
C
Raw Normal View History

2020-08-24 13:56:12 +03:00
#pragma once
#include <Arduino.h>
2020-08-24 13:56:12 +03:00
#include <stdint.h>
#include <functional>
// Декларируем тип - сигнатуру метода , который мы готовы принять в данном случае это
// должен быть метод без результата и без параметров.
// Новый тип мы называем AsynсActionCb - хотя можешь назвать вообще как нравиться а что значит callBack
2020-08-25 15:45:06 +03:00
typedef std::function<void()> AsyncActionCb; //метод без результата и параметров
typedef std::function<bool(const String)> AsyncParamActionCb; //метод без результата и параметров
2020-08-24 13:56:12 +03:00
2020-08-25 15:45:06 +03:00
class CallBackTest {
2020-08-24 13:56:12 +03:00
private:
long count;
AsyncActionCb _cb;
AsyncParamActionCb _pcb;
2020-08-25 15:45:06 +03:00
2020-08-24 13:56:12 +03:00
public:
2020-08-25 15:45:06 +03:00
CallBackTest();
2020-08-24 13:56:12 +03:00
void loop();
void setCallback(AsyncActionCb cb);
void setCallback(AsyncParamActionCb pcb);
};
2020-08-26 16:39:42 +03:00
//extern CallBackTest* CB;