diff options
author | HampusM <hampus@hampusmat.com> | 2022-02-15 12:33:52 +0100 |
---|---|---|
committer | HampusM <hampus@hampusmat.com> | 2022-02-15 12:33:52 +0100 |
commit | bcdce9633dc351d3bc7f347a165348b8fab87cd9 (patch) | |
tree | 88c2f5d8f0c5fac2bca28e4b543e5209f3bc98fb /src/serial.hpp | |
parent | 917adc6a2b6b166e37fc3d4f94b41488f0c245a5 (diff) |
refactor: reorganize files & improve classes
Diffstat (limited to 'src/serial.hpp')
-rw-r--r-- | src/serial.hpp | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/serial.hpp b/src/serial.hpp new file mode 100644 index 0000000..9a9488d --- /dev/null +++ b/src/serial.hpp @@ -0,0 +1,29 @@ +#pragma once + +#include "std/smart_string.hpp" + +#include <USBAPI.h> + +class SerialStream +{ +public: + SerialStream(Serial_ serial, uint64_t baud_rate); + + SerialStream &operator<<(const char *str); + SerialStream &operator<<(const SmartString &str); + SerialStream &operator<<(const double &num); + SerialStream &operator<<(const int &num); + SerialStream &operator<<(const unsigned int &num); + SerialStream &operator<<(const unsigned long &num); + + SerialStream &operator<<(void (*manipulator)(SerialStream *)); + + void write(const char *str); + + void flush(); + +private: + Serial_ _serial; +}; + +void endl(SerialStream *serial_stream); |