mirror of
https://github.com/IoTManagerProject/IoTManager.git
synced 2026-05-27 21:29:21 +03:00
compiling
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
// StreamUtils - github.com/bblanchon/ArduinoStreamUtils
|
||||
// Copyright Benoit Blanchon 2019-2021
|
||||
// MIT License
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <Stream.h>
|
||||
|
||||
#include "../Configuration.hpp"
|
||||
|
||||
namespace StreamUtils {
|
||||
|
||||
class WriteSpyingPolicy {
|
||||
public:
|
||||
WriteSpyingPolicy(Print &log) : _log(log) {}
|
||||
|
||||
size_t write(Print &stream, const uint8_t *buffer, size_t size) {
|
||||
_log.print("write('");
|
||||
for (size_t i = 0; i < size; i++) {
|
||||
_log.write(buffer[i]);
|
||||
}
|
||||
_log.print("', ");
|
||||
_log.print(size);
|
||||
_log.print(") -> ");
|
||||
|
||||
size_t result = stream.write(buffer, size);
|
||||
_log.println(result);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
size_t write(Print &stream, uint8_t data) {
|
||||
_log.print("write('");
|
||||
_log.write(data);
|
||||
_log.print("') -> ");
|
||||
|
||||
size_t result = stream.write(data);
|
||||
_log.println(result);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
template <typename TTarget>
|
||||
void flush(TTarget &target) {
|
||||
_log.println("flush()");
|
||||
target.flush();
|
||||
}
|
||||
|
||||
void implicitFlush(Print &) {}
|
||||
|
||||
private:
|
||||
Print &_log;
|
||||
};
|
||||
|
||||
} // namespace StreamUtils
|
||||
Reference in New Issue
Block a user