|
roo_transport
API Documentation for roo_transport
|
Receives packets sent by PacketSenderOverStream via a potentially unreliable stream (for example UART/Serial).
More...
#include <packet_receiver_over_stream.h>
Public Member Functions | |
| PacketReceiverOverStream (roo_io::InputStream &in) | |
Creates a receiver reading framed bytes from in. | |
| size_t | tryReceive (const ReceiverFn &receiver_fn) override |
| Receives currently available packets without indefinite blocking. | |
| size_t | receive (const ReceiverFn &receiver_fn) override |
| Receives packets, blocking as needed until at least one packet is delivered, or until stream end/error. | |
| size_t | bytes_received () const |
| Returns total raw bytes read from the underlying stream. | |
| size_t | bytes_accepted () const |
| Returns total bytes accepted as valid framed packets. | |
Additional Inherited Members | |
Public Types inherited from roo_transport::PacketReceiver | |
| using | ReceiverFn = std::function< void(const roo::byte *, size_t)> |
| Callback invoked for each received packet. | |
Receives packets sent by PacketSenderOverStream via a potentially unreliable stream (for example UART/Serial).
Uses 32-bit hashes to validate packet integrity and COBS framing to recover packet boundaries even under byte loss/corruption.
Delivers only packets that pass integrity checks; corrupted packets are dropped, and packet loss is possible.
Definition at line 21 of file packet_receiver_over_stream.h.
| roo_transport::PacketReceiverOverStream::PacketReceiverOverStream | ( | roo_io::InputStream & | in | ) |
Creates a receiver reading framed bytes from in.
Definition at line 17 of file packet_receiver_over_stream.cpp.
|
inline |
Returns total bytes accepted as valid framed packets.
This is transport-level byte count (framing/hash included), not just payload length.
Definition at line 39 of file packet_receiver_over_stream.h.
|
inline |
Returns total raw bytes read from the underlying stream.
Includes bytes that were part of malformed/corrupted packets.
Definition at line 33 of file packet_receiver_over_stream.h.
|
overridevirtual |
Receives packets, blocking as needed until at least one packet is delivered, or until stream end/error.
Implements roo_transport::PacketReceiver.
Definition at line 25 of file packet_receiver_over_stream.cpp.
|
overridevirtual |
Receives currently available packets without indefinite blocking.
Implements roo_transport::PacketReceiver.
Definition at line 34 of file packet_receiver_over_stream.cpp.