7#include "roo_io/stream/arduino/stream_input_stream.h"
8#include "roo_io/stream/arduino/stream_output_stream.h"
25class LinkStreamTransport {
27 LinkStreamTransport(Stream& stream, LinkBufferSize sendbuf = kBufferSize4KB,
28 LinkBufferSize recvbuf = kBufferSize4KB);
35 LinkStream connect(std::function<
void()> disconnect_fn =
nullptr);
41 LinkStream connectAsync(std::function<
void()> disconnect_fn =
nullptr);
46 LinkStream connectOrDie();
48 LinkTransport& transport() {
return transport_; }
53 operator LinkTransport&() {
return transport_; }
63 LinkTransport::StatsMonitor statsMonitor() {
64 return LinkTransport::StatsMonitor(transport_);
69 roo_io::ArduinoStreamOutputStream output_;
70 roo_io::ArduinoStreamInputStream input_;
71 PacketSenderOverStream sender_;
72 PacketReceiverOverStream receiver_;
74 LinkTransport transport_;