14 #define SATCAT5_WIN32 1
15 typedef void* SATCAT5_UART_DESCRIPTOR;
17 #define SATCAT5_WIN32 0
18 typedef int SATCAT5_UART_DESCRIPTOR;
36 PosixUart(
const char* device,
unsigned baud,
37 unsigned buffer_size_bytes=4096);
41 inline bool ok()
const {
return m_ok;}
50 SATCAT5_UART_DESCRIPTOR m_uart;
61 SlipUart(
const char* device,
unsigned baud,
unsigned buffer=4096);
62 inline bool ok()
const {
return m_uart.
ok();}
Buffered SLIP encoder / decoder pair with Ethernet FCS.
Extensible transmit and receive buffer.
POSIX and Windows interface objects for connecting to a UART.
void data_rcvd(satcat5::io::Readable *src) override
The data_rcvd() callback is polled whenever data is available.
void poll_always() override
Child class MUST override this method.
bool ok() const
Is this device ready for input and output?
PosixUart(const char *device, unsigned baud, unsigned buffer_size_bytes=4096)
Create UART attached to the given device name.
Abstract API for reading byte-streams and packets.
Wrapper class for forwarding reads to another object.
SLIP-encoded wrapper for the PosixUart class.
Wrapper class for forwarding writes to another object.
An "Always" object is polled whenever service() is called.
Inline Ethernet Checksum insertion and verification.
Buffered I/O wrappers for PacketBuffer.
Core event-processing loop for SatCat5 software.