![]() |
Display_Lib_RPI 2.3.0
A C++ Library to connect electronic displays to Linux single board computers.
|
Polymorphic print class to print many data types by wrapping write function in the graphics class's. More...
#include <print_data_RDL.hpp>
Public Types | |
enum | BaseNum : uint8_t { RDL_DEC = 10 , RDL_HEX = 16 , RDL_OCT = 8 , RDL_BIN = 2 } |
Public Member Functions | |
int | getWriteError () |
gets the error flag status, zero no error | |
void | clearWriteError () |
clears the error flag by setting it to zero | |
virtual size_t | write (uint8_t)=0 |
define in the sub class | |
virtual size_t | write (const uint8_t *buffer, size_t size) |
define in the sub class | |
size_t | write (const char *str) |
Writes a string to the output. | |
size_t | write (const char *buffer, size_t size) |
Writes a buffer of a specified size to the output. | |
virtual int | availableForWrite () |
define in the sub class | |
size_t | print (const char[]) |
print an array | |
size_t | print (char) |
print an character | |
size_t | print (int, int=RDL_DEC) |
print an integer of base number system | |
size_t | print (unsigned int, int=RDL_DEC) |
print an unsigned integer of base number system | |
size_t | print (long, int=RDL_DEC) |
print an long integer of base number system | |
size_t | print (unsigned long, int=RDL_DEC) |
print an unsigned long integer of base number system | |
size_t | print (double, int=2) |
print an double | |
size_t | print (const std::string &) |
print an C++ string object | |
size_t | println (const char[]) |
Prints a character array followed by a newline. | |
size_t | println (char) |
print an character followed by new line | |
size_t | println (int, int=RDL_DEC) |
print an integer of base number system followed by new line | |
size_t | println (unsigned int, int=RDL_DEC) |
print an unsigned integer of base number system followed by new line | |
size_t | println (long, int=RDL_DEC) |
print an long integer of base number system followed by new line | |
size_t | println (unsigned long, int=RDL_DEC) |
print an unsigned long integer of base number system followed by new line | |
size_t | println (double, int=2) |
print an double | |
size_t | println (void) |
Goto to new line. | |
size_t | println (const std::string &s) |
print an C++ string object followed by new line | |
template<typename T > | |
size_t | print (const std::vector< T > &v, int format=defaultFormat< T >()) |
Print a vector of any type. | |
template<typename T > | |
size_t | println (const std::vector< T > &vec, int format=defaultFormat< T >()) |
Print a vector of elements followed by a newline. | |
template<typename T , size_t N> | |
size_t | print (const std::array< T, N > &arr, int format=defaultFormat< T >()) |
Print a std::array of any type. | |
template<typename T , size_t N> | |
size_t | println (const std::array< T, N > &arr, int format=defaultFormat< T >()) |
Print a std::array of elements followed by a newline. | |
Protected Member Functions | |
void | setWriteError (int err=0) |
Private Member Functions | |
size_t | printNumber (unsigned long, uint8_t) |
Used internally to parse and print number. | |
size_t | printFloat (double, uint8_t) |
Used internally to parse float. | |
template<typename T > | |
std::string | formatElement (const T &element, int format) |
Called from vector template Format an element based on its type and the format parameter. | |
Static Private Member Functions | |
template<typename T > | |
static constexpr int | defaultFormat () |
Called from vector & string template , Get the default format for a given type. | |
Private Attributes | |
int | _ErrorFlag |
Polymorphic print class to print many data types by wrapping write function in the graphics class's.
Using function overloading and templates for the vector definitions. Supports integers floats Characters , character arrays, string objects and vectors.
|
virtual |
define in the sub class
Gets the number of bytes available for writing. default to zero, meaning "a single write may block" should be overriden by subclasses with buffering.
|
inlinestaticconstexprprivate |
Called from vector & string template , Get the default format for a given type.
T | Type of the element |
Called from vector template Format an element based on its type and the format parameter.
T | Type of the element |
element | The element to format |
format | Format specifier |
int Print::getWriteError | ( | ) |
gets the error flag status, zero no error
print an character
c | the character to print |
print an array
str | An array of characters |
Print a std::array of any type.
T | Type of elements in the array. |
N | Size of the array. |
arr | The std::array to print. |
format | Format specifier:
|
print an C++ string object
s | string object |
Print a vector of any type.
T | Type of elements in the vector |
v | Vector of elements to print |
format | Format specifier:
|
print an double
n | integer to print |
digits | number of digits to print |
print(3.7468,2) = will print 3.75 on display
print an integer of base number system
n | integer to print |
base | the base number system to use (BIN HEX OCT DEC) |
print an long integer of base number system
n | integer to print |
base | the base number system to use (BIN HEX OCT RDL_DEC) |
print an unsigned integer of base number system
n | integer to print |
base | the base number system to use (BIN HEX OCT DEC) |
print an unsigned long integer of base number system
n | integer to print |
base | the base number system to use (BIN HEX OCT RDL_DEC) |
Used internally to parse float.
number | The floating point number |
digits | Number of precision digits to print |
print an character followed by new line
c | the character to print |
Prints a character array followed by a newline.
c | Pointer to a null-terminated character array. |
Print a std::array of elements followed by a newline.
T | Type of elements in the array. |
N | Size of the array. |
arr | The std::array to print. |
format | Format specifier:
|
print an C++ string object followed by new line
s | string object |
Print a vector of elements followed by a newline.
T | Type of the elements in the vector |
vec | The vector of elements to print |
format | Format specifier (e.g., base for integers or precision for floats) |
print an double
num | float to print followed by new line |
digits | number of digits to print |
print(3.7468,2) = will print 3.75 on display
print an integer of base number system followed by new line
num | integer to print |
base | the base number system to use (BIN HEX OCT RDL_DEC) |
print an long integer of base number system followed by new line
num | integer to print |
base | the base number system to use (BIN HEX OCT RDL_DEC) |
print an unsigned integer of base number system followed by new line
num | integer to print |
base | the base number system to use (BIN HEX OCT RDL_DEC) |
print an unsigned long integer of base number system followed by new line
num | integer to print |
base | the base number system to use (BIN HEX OCT RDL_DEC) |
Used internally to parse and print number.
n | Number to parse |
base | to print to Binary hexadecimal etc |
sets error flag to value
error | error to set errorFlag |
Writes a buffer of a specified size to the output.
buffer | Pointer to the data buffer. |
size | Number of bytes to write. |
Writes a string to the output.
str | Pointer to the character array. |
str
is nullptr. define in the sub class
default implementation: may be overridden
buffer | of ints |
size |
define in the sub class
Implemented in HD44780PCF8574LCD, bicolor_graphics, and color16_graphics.
|
private |
class Error flag , zero no error