Input / output¶
Convenience functions for reading and writing. A template class I
, is used
as an abstraction for I/O devices like serial ports, wire interfaces and
network interfaces like ethernet. An overview of the required methods of an I/O
plugin is described in the plugins section.
Printing¶
#include "print.tcc"
The following functions take care of serialisation of:
- Values of basic types.
- C strings (
char[]
,char*
,char const[]
,char const*
). - C++ Strings.
- PROGMEM strings (
F()
macro).
Finally, a print function that takes an arbitrary amount of parameters is provided for convenience.
Functions¶
- template <class T>
-
void
rpcPrint
(Stream &io, T data)¶ Print a value to an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
-
void
rpcPrint
(Stream &io, char *data)¶ Print a value to an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
-
void
rpcPrint
(Stream &io, char const *data)¶ Print a value to an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
-
void
rpcPrint
(Stream &io, String &data)¶ Print a value to an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
-
void
rpcPrint
(Stream &io, __FlashStringHelper const *data)¶ Print a value to an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
- template <class H, class… Tail>
-
void
rpcPrint
(Stream &io, H data, Tail... args)¶ Print any number of values.
- Parameters
io
-Stream / output object.
data
-Value to be printed.
args
-Remaining values.
Reading¶
Read functions for deserialisation.
#include "read.tcc"
Functions¶
- template <class T>
-
void
rpcRead
(Stream &io, T *data)¶ Read a value from an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
-
void
rpcRead
(Stream &io, char **data)¶ Read a value from an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
-
void
rpcRead
(Stream &io, char const **data)¶ Read a value from an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
-
void
rpcRead
(Stream &io, String *data)¶ Read a value from an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
- template <class T>
-
void
rpcRead
(Stream &io, Vector<T> *data)¶ Read a value from an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
- template <class T>
-
void
rpcRead
(Stream &io, T **data)¶ Read a value from an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
- template <class T>
-
void
rpcRead
(Stream &io, T ***data)¶ Read a value from an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
Writing¶
Write functions for serialisation.
#include "read.tcc"
Functions¶
- template <class T>
-
void
rpcWrite
(Stream &io, T *data)¶ Write a value to an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
-
void
rpcWrite
(Stream &io, char **data)¶ Write a value to an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
-
void
rpcWrite
(Stream &io, char const **data)¶ Write a value to an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
-
void
rpcWrite
(Stream &io, String *data)¶ Write a value to an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.
- template <class T>
-
void
rpcWrite
(Stream &io, Vector<T> *data)¶ Write a value to an Input / output object.
- Parameters
io
-Input / output object.
data
-Data.