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.

Reading

Read functions for deserialisation.

#include "read.tcc"

Functions

template<class T>
void rpcRead(Stream &io, T *data)

Read a value from a stream.

Template Parameters:

T – Data type.

Parameters:
  • io – Stream.

  • data – Data.

inline void rpcRead(Stream &io, String *data)

Read a value from a stream.

Template Parameters:

T – Data type.

Parameters:
  • io – Stream.

  • data – Data.

inline void rpcRead(Stream &io, String_ *data)

Read a value from a stream.

Template Parameters:

T – Data type.

Parameters:
  • io – Stream.

  • data – Data.

template<class T>
void rpcRead(Stream &io, Vector<T> *data)

Read a value from a stream.

Template Parameters:

T – Data type.

Parameters:
  • io – Stream.

  • data – Data.

template<class T, size_t n>
void rpcRead(Stream &io, Array<T, n> *data)

Read a value from a stream.

Template Parameters:

T – Data type.

Parameters:
  • io – Stream.

  • data – Data.

template<class ...Ts>
void rpcRead(Stream &io, Tuple<Ts...> *data)

Read a value from a stream.

Template Parameters:

T – Data type.

Parameters:
  • io – Stream.

  • data – Data.

Writing

Write functions for serialisation.

#include "read.tcc"

Functions

template<class T>
void rpcWrite(Stream &io, T data)

Write a value to a stream.

Template Parameters:

Data – type.

Parameters:
  • io – Stream.

  • data – Data.

inline void rpcWrite(Stream &io, char const *data)

Write a value to a stream.

Template Parameters:

Data – type.

Parameters:
  • io – Stream.

  • data – Data.

inline void rpcWrite(Stream &io, __FlashStringHelper const *data)

Write a value to a stream.

Template Parameters:

Data – type.

Parameters:
  • io – Stream.

  • data – Data.

template<class T>
void rpcWrite(Stream &io, T *data)

Write a value to a stream.

Template Parameters:

Data – type.

Parameters:
  • io – Stream.

  • data – Data.

inline void rpcWrite(Stream &io, char const **data)

Write a value to a stream.

Template Parameters:

Data – type.

Parameters:
  • io – Stream.

  • data – Data.

inline void rpcWrite(Stream &io, char **data)

Write a value to a stream.

Template Parameters:

Data – type.

Parameters:
  • io – Stream.

  • data – Data.

inline void rpcWrite(Stream &io, String *data)

Write a value to a stream.

Template Parameters:

Data – type.

Parameters:
  • io – Stream.

  • data – Data.

template<class T>
void rpcWrite(Stream &io, Vector<T> *data)

Write a value to a stream.

Template Parameters:

Data – type.

Parameters:
  • io – Stream.

  • data – Data.

template<class T, size_t n>
void rpcWrite(Stream &io, Array<T, n> *data)

Write a value to a stream.

Template Parameters:

Data – type.

Parameters:
  • io – Stream.

  • data – Data.

template<class ...Ts>
void rpcWrite(Stream &io, Tuple<Ts...> *data)

Write a value to a stream.

Template Parameters:

Data – type.

Parameters:
  • io – Stream.

  • data – Data.