small improvements in C++ wrapper:
[libftdi] / ftdipp / ftdi.hpp
index d752bd6..9c345c3 100644 (file)
@@ -80,7 +80,9 @@ public:
     /* Device manipulators */
     bool is_open();
     int open(struct usb_device *dev = 0);
-    int open(int vendor, int product, const std::string& description = std::string(), const std::string& serial = std::string());
+    int open(int vendor, int product);
+    int open(int vendor, int product, const std::string& description, const std::string& serial = std::string(), unsigned int index=0);
+    int open(const std::string& description);
     int close();
     int reset();
     int flush(int mask = Input|Output);
@@ -120,7 +122,8 @@ public:
 
     /* BitBang mode */
     int set_bitmode(unsigned char bitmask, unsigned char mode);
-    int bitbang_enable(unsigned char bitmask);
+    int set_bitmode(unsigned char bitmask, enum ftdi_mpsse_mode mode);
+    int DEPRECATED(bitbang_enable(unsigned char bitmask));
     int bitbang_disable();
     int read_pins(unsigned char *pins);
 
@@ -129,6 +132,7 @@ public:
 
 protected:
     int get_strings();
+    int get_strings_and_reopen();
 
     /* Properties */
     struct ftdi_context* context();
@@ -153,8 +157,11 @@ public:
     int size(unsigned char *eeprom, int maxsize);
     int chip_id(unsigned int *chipid);
     int build(unsigned char *output);
+
     int read(unsigned char *eeprom);
     int write(unsigned char *eeprom);
+    int read_location(int eeprom_addr, unsigned short *eeprom_val);
+    int write_location(int eeprom_addr, unsigned short eeprom_val);
     int erase();
 
 private: