34 ssize_t (*read)(
struct os_serial_device *serial_dev, uint8_t *data,
size_t size,
int milliseconds);
36 ssize_t (*write)(
struct os_serial_device *serial_dev,
const uint8_t *data,
size_t size);
38 int (*set_line_control)(
struct os_serial_device *serial_dev,
bool dtr,
bool rts);
43enum os_serial_parity_mode
45 OS_SERIAL_PARITY_NONE,
46 OS_SERIAL_PARITY_EVEN,
58 enum os_serial_parity_mode parity;
72 return serial_dev->read(serial_dev, data, size, milliseconds);
83 return serial_dev->write(serial_dev, data, size);
94 return serial_dev->set_line_control(serial_dev, dtr, rts);
105 serial_dev->destroy(serial_dev);
Representing a single serial interface on a device.
Definition os_serial.h:33
static ssize_t os_serial_read(struct os_serial_device *serial_dev, uint8_t *data, size_t size, int milliseconds)
Read the next input report, if any, from the given serial device.
Definition os_serial.h:70
static int os_serial_set_line_control(struct os_serial_device *serial_dev, bool dtr, bool rts)
Set the line control signals (DTR and RTS) for the given serial device.
Definition os_serial.h:92
static void os_serial_destroy(struct os_serial_device *serial_dev)
Close and free the given device.
Definition os_serial.h:103
static ssize_t os_serial_write(struct os_serial_device *serial_dev, const uint8_t *data, size_t size)
Write an output report to the given device.
Definition os_serial.h:81
Represents the parameters for opening a serial device, such as baud rate, parity, etc.
Definition os_serial.h:54
Header holding common defines.
Auto detect OS and certain features.