Files
IoTManager/include/Class/AsyncActions.h

26 lines
1002 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
typedef std::function<void()> AsyncActionCb; //метод без результата и параметров
2020-08-24 13:56:12 +03:00
typedef std::function<bool(const String)> AsyncParamActionCb; //метод без результата и параметров
2020-08-24 13:56:12 +03:00
class AsyncActions {
private:
long count;
AsyncActionCb _cb;
AsyncParamActionCb _pcb;
2020-08-24 13:56:12 +03:00
public:
AsyncActions();
void loop();
void setCallback(AsyncActionCb cb);
void setCallback(AsyncParamActionCb pcb);
};
2020-08-24 13:56:12 +03:00
extern AsyncActions* async;