libftdi-git Archives

Subject: A library to talk to FTDI chips branch, master, updated. v1.4rc1-10-g26537a2

From: libftdi-git@xxxxxxxxxxxxxxxxxxxxxxx
To: libftdi-git@xxxxxxxxxxxxxxxxxxxxxxx
Date: Fri, 21 Jul 2017 11:57:14 +0200 (CEST)
The branch, master has been updated
       via  26537a2dec68c3be9d597ae903dc0ffde7d1a599 (commit)
      from  fb56d9cf14f34dda2d7b154f16a0c08ad8b639f9 (commit)


- Log -----------------------------------------------------------------
commit 26537a2dec68c3be9d597ae903dc0ffde7d1a599
Author: Eric Schott <eric@xxxxxxxxxxxxxx>
Date:   Fri Jul 21 11:56:07 2017 +0200

    C++ API: Correct the purge Direction and ModemCtl enumerations definitions
    
    Do not use value of zero for bitmasks. The new enumeration values
    are defined so programs compiled with the old ftdi.hpp include
    would work as previously (doing nothing when the enumeration
    with the zero value was bit-or'ed into the argument).

-----------------------------------------------------------------------

Summary of changes:
 ftdipp/ftdi.cpp |   24 +++++++++++++++++++-----
 ftdipp/ftdi.hpp |    8 ++++----
 2 files changed, 23 insertions(+), 9 deletions(-)

diff --git a/ftdipp/ftdi.cpp b/ftdipp/ftdi.cpp
index 8eb2ec2..bdd85f5 100644
--- a/ftdipp/ftdi.cpp
+++ b/ftdipp/ftdi.cpp
@@ -144,12 +144,26 @@ int Context::reset()
 
 int Context::flush(int mask)
 {
-    int ret = 1;
+    int ret;
 
-    if (mask & Input)
-        ret &= ftdi_usb_purge_rx_buffer(d->ftdi);
-    if (mask & Output)
-        ret &= ftdi_usb_purge_tx_buffer(d->ftdi);
+    switch (mask & (Input | Output)) {
+    case Input:
+        ret = ftdi_usb_purge_rx_buffer(d->ftdi);
+        break;
+
+    case Output:
+        ret = ftdi_usb_purge_tx_buffer(d->ftdi);
+        break;
+
+    case Input | Output:
+        ret = ftdi_usb_purge_buffers(d->ftdi);
+        break;
+
+    default:
+        // Emulate behavior of previous version.
+        ret = 1;
+        break;
+    }
 
     return ret;
 }
diff --git a/ftdipp/ftdi.hpp b/ftdipp/ftdi.hpp
index 4e3511d..2289a84 100644
--- a/ftdipp/ftdi.hpp
+++ b/ftdipp/ftdi.hpp
@@ -55,16 +55,16 @@ public:
      */
     enum Direction
     {
-        Input,
-        Output
+        Input = 0x2,
+        Output = 0x1,
     };
 
     /*! \brief Modem control flags.
      */
     enum ModemCtl
     {
-        Dtr,
-        Rts
+        Dtr = 0x2,
+        Rts = 0x1,
     };
 
     /* Constructor, Destructor */


hooks/post-receive
-- 
A library to talk to FTDI chips

--
libftdi-git - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi-git+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx   

Current Thread
  • A library to talk to FTDI chips branch, master, updated. v1.4rc1-10-g26537a2, libftdi-git <=