X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Flibsigrok-internal.h;h=e1623f629b0e2c675cf59386eea95d542e8bf5bb;hb=ad5aa993ae5f5277755ed9c6e99fd647f4fa0d7b;hp=6fbc1d245cb86c7a6c46660430beae03a81ad257;hpb=48b7c3462927616916a1296c862e96e3a36c2a80;p=libsigrok.git diff --git a/src/libsigrok-internal.h b/src/libsigrok-internal.h index 6fbc1d24..e1623f62 100644 --- a/src/libsigrok-internal.h +++ b/src/libsigrok-internal.h @@ -36,6 +36,7 @@ #include #endif #include +#include #include #include @@ -738,6 +739,7 @@ struct sr_serial_dev_inst { int parity_bits; int stop_bits; } comm_params; + GString *rcv_buffer; #ifdef HAVE_LIBSERIALPORT /** libserialport port handle */ struct sp_port *sp_data; @@ -1140,6 +1142,13 @@ SR_PRIV int serial_source_remove(struct sr_session *session, SR_PRIV GSList *sr_serial_find_usb(uint16_t vendor_id, uint16_t product_id); SR_PRIV int serial_timeout(struct sr_serial_dev_inst *port, int num_bytes); +SR_PRIV void sr_ser_discard_queued_data(struct sr_serial_dev_inst *serial); +SR_PRIV size_t sr_ser_has_queued_data(struct sr_serial_dev_inst *serial); +SR_PRIV void sr_ser_queue_rx_data(struct sr_serial_dev_inst *serial, + const uint8_t *data, size_t len); +SR_PRIV size_t sr_ser_unqueue_rx_data(struct sr_serial_dev_inst *serial, + uint8_t *data, size_t len); + struct ser_lib_functions { int (*open)(struct sr_serial_dev_inst *serial, int flags); int (*close)(struct sr_serial_dev_inst *serial);