Слияние кода завершено, страница обновится автоматически
#ifndef BLINKER_REAL_TIME_DATA_H
#define BLINKER_REAL_TIME_DATA_H
#include "../Blinker/BlinkerConfig.h"
#include "../Blinker/BlinkerUtility.h"
class BlinkerRealTimeData
{
public :
BlinkerRealTimeData(char _name[], blinker_callback_t _func = NULL)
{
Blinker.attachRTData(_name, _func);
}
void saveData(char key[], int32_t data)
{
if (_count = 0)
{
strcpy(_keys, key);
}
_datas[_count] = data;
_times[_count] = Blinker.time();
_count++;
}
void print()
{
String rtData;
if (_count > 0)
{
rtData = BLINKER_F("{\"rt\":\"{\"");
rtData += STRING_format(_keys);
rtData += BLINKER_F("\":[");
for (uint8_t i = 0; i < _count; i++)
{
rtData += BLINKER_F("{\"value\":");
rtData += STRING_format(_datas[i]);
rtData += BLINKER_F(",\"date\":");
rtData += STRING_format(_times[i]);
rtData += BLINKER_F("}");
if (i < _count - 1)
{
rtData += BLINKER_F(",");
}
}
rtData += BLINKER_F("]}}");
Blinker.printObject(Blinker.widgetName_str(wNum), buttonData);
_count = 0;
}
}
private :
uint8_t wNum;
uint8_t _count = 0;
int32_t _datas[12];
time_t _times[12];
char _keys[12];
};
#endif
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарий ( 0 )