44 virtual size_t write(uint8_t) = 0;
46 virtual size_t write(
const uint8_t *buffer,
size_t size);
47 size_t write(
const char *str);
48 size_t write(
const char *buffer,
size_t size);
52 size_t print(
const char[]);
58 size_t print(
double,
int = 2);
59 size_t print(
const std::string &);
67 size_t println(
double,
int = 2);
69 size_t println(
const std::string &s);
102 template <
typename T>
120 template <
typename T,
size_t N>
136 template <
typename T,
size_t N>
165 std::ostringstream
oss;
167 if constexpr (std::is_integral_v<T>) {
181 std::string
binary = std::bitset<sizeof(T) * 8>(
element).to_string();
189 }
else if constexpr (std::is_floating_point_v<T>) {
205 template <
typename T>
207 if constexpr (std::is_floating_point_v<T>) {
209 }
else if constexpr (std::is_integral_v<T>) {
Polymorphic print class to print many data types by wrapping write function in the graphics class's.
Definition print_data_RDL.hpp:29
size_t print(const std::vector< T > &v, int format=defaultFormat< T >())
Print a vector of any type.
Definition print_data_RDL.hpp:81
size_t println(void)
Goto to new line.
Definition print_data_RDL.cpp:185
void setWriteError(int err=0)
Definition print_data_RDL.cpp:57
size_t print(const std::array< T, N > &arr, int format=defaultFormat< T >())
Print a std::array of any type.
Definition print_data_RDL.hpp:121
size_t printFloat(double, uint8_t)
Used internally to parse float.
Definition print_data_RDL.cpp:327
virtual int availableForWrite()
define in the sub class
Definition print_data_RDL.cpp:44
virtual size_t write(uint8_t)=0
define in the sub class
size_t println(const std::array< T, N > &arr, int format=defaultFormat< T >())
Print a std::array of elements followed by a newline.
Definition print_data_RDL.hpp:137
BaseNum
Definition print_data_RDL.hpp:34
@ RDL_DEC
Definition print_data_RDL.hpp:35
@ RDL_BIN
Definition print_data_RDL.hpp:38
@ RDL_OCT
Definition print_data_RDL.hpp:37
@ RDL_HEX
Definition print_data_RDL.hpp:36
int getWriteError()
gets the error flag status, zero no error
Definition print_data_RDL.cpp:50
size_t println(const std::vector< T > &vec, int format=defaultFormat< T >())
Print a vector of elements followed by a newline.
Definition print_data_RDL.hpp:103
std::string formatElement(const T &element, int format)
Called from vector template Format an element based on its type and the format parameter.
Definition print_data_RDL.hpp:164
static constexpr int defaultFormat()
Called from vector & string template , Get the default format for a given type.
Definition print_data_RDL.hpp:206
size_t printNumber(unsigned long, uint8_t)
Used internally to parse and print number.
Definition print_data_RDL.cpp:301
size_t print(const char[])
print an array
Definition print_data_RDL.cpp:82
void clearWriteError()
clears the error flag by setting it to zero
Definition print_data_RDL.cpp:53
int _ErrorFlag
Definition print_data_RDL.hpp:151