#pragma once #include #include #include #include class UartReader { public: using LineCallback = std::function; UartReader(); void start(LineCallback lineCallback); void onDataRx(); private: static const int BufferSize = 128; LineCallback _lineCallback; std::uint8_t buffer0[BufferSize]; std::uint8_t buffer1[BufferSize]; std::uint8_t* _writeBuffer = buffer0; std::uint8_t* _readBuffer = buffer1; std::size_t _rxSize = 0; //LF_TERMINAL_STREAM_USART };