Hi,

the C++ wrapper has no function to set the read/write timouts of the
ftdi_context. The attached patch fixes this. Would be great to have you
could merge it upstream.

Cheers Jochen


--
libftdi - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to [email protected]   
>From d1e424e73ba5a51614437702dd73788c2b500b19 Mon Sep 17 00:00:00 2001
From: Jochen Sprickerhof <[email protected]>
Date: Mon, 22 Apr 2013 12:11:01 +0200
Subject: [PATCH] Add get/set for usb_read/write_timeout in C++ wrapper

---
 ftdipp/ftdi.cpp |   20 ++++++++++++++++++++
 ftdipp/ftdi.hpp |    4 ++++
 2 files changed, 24 insertions(+)

diff --git a/ftdipp/ftdi.cpp b/ftdipp/ftdi.cpp
index 0382fa4..d1c652a 100644
--- a/ftdipp/ftdi.cpp
+++ b/ftdipp/ftdi.cpp
@@ -180,6 +180,26 @@ int Context::set_line_property(enum ftdi_bits_type bits, enum ftdi_stopbits_type
     return ftdi_set_line_property2(d->ftdi, bits, sbit, parity, break_type);
 }
 
+int Context::get_usb_read_timeout()
+{
+    return d->ftdi->usb_read_timeout;
+}
+
+void Context::set_usb_read_timeout(int usb_read_timeout)
+{
+    d->ftdi->usb_read_timeout = usb_read_timeout;
+}
+
+int Context::get_usb_write_timeout()
+{
+    return d->ftdi->usb_write_timeout;
+}
+
+void Context::set_usb_write_timeout(int usb_write_timeout)
+{
+    d->ftdi->usb_write_timeout = usb_write_timeout;
+}
+
 int Context::read(unsigned char *buf, int size)
 {
     return ftdi_read_data(d->ftdi, buf, size);
diff --git a/ftdipp/ftdi.hpp b/ftdipp/ftdi.hpp
index e4a95d7..08ffaca 100644
--- a/ftdipp/ftdi.hpp
+++ b/ftdipp/ftdi.hpp
@@ -93,6 +93,10 @@ public:
     int set_baud_rate(int baudrate);
     int set_line_property(enum ftdi_bits_type bits, enum ftdi_stopbits_type sbit, enum ftdi_parity_type parity);
     int set_line_property(enum ftdi_bits_type bits, enum ftdi_stopbits_type sbit, enum ftdi_parity_type parity, enum ftdi_break_type break_type);
+    int get_usb_read_timeout();
+    void set_usb_read_timeout(int usb_read_timeout);
+    int get_usb_write_timeout();
+    void set_usb_write_timeout(int usb_write_timeout);
 
     /* I/O */
     int read(unsigned char *buf, int size);
-- 
1.7.10.4

Reply via email to