libftdi1 1.0

- Main Page
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Members

Classes | Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
Ftdi::Context Class Reference

FTDI device context. Represents single FTDI device context. More...

`#include <ftdi.hpp>`

## Classes
class | Private

## Public Types
enum | Direction { Input, Output }
| Direction flags for flush(). More...
enum | ModemCtl { Dtr, Rts }
| Modem control flags. More...

## Public Member Functions
| Context ()
| Constructor.
| ~Context ()
| Destructor.
Eeprom * | eeprom ()
const std::string & | vendor ()
| Device strings properties.
const std::string & | description ()
| Device strings properties.
const std::string & | serial ()
| Device strings properties.
bool | is_open ()
int | open (struct libusb_device *dev=0)
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)
int | set_interface (enum ftdi_interface interface)
void | set_usb_device (struct libusb_device_handle *dev)
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 | read (unsigned char *buf, int size)
int | write (unsigned char *buf, int size)
int | set_read_chunk_size (unsigned int chunksize)
int | set_write_chunk_size (unsigned int chunksize)
int | read_chunk_size ()
int | write_chunk_size ()
int | set_event_char (unsigned char eventch, unsigned char enable)
int | set_error_char (unsigned char errorch, unsigned char enable)
int | set_flow_control (int flowctrl)
int | set_modem_control (int mask=Dtr|Rts)
int | set_latency (unsigned char latency)
int | set_dtr (bool state)
int | set_rts (bool state)
unsigned short | poll_modem_status ()
unsigned | latency ()
int | set_bitmode (unsigned char bitmask, unsigned char mode)
int | set_bitmode (unsigned char bitmask, enum ftdi_mpsse_mode mode)
int | bitbang_disable ()
int | read_pins (unsigned char *pins)
char * | error_string ()

## Protected Member Functions
int | get_strings ()
int | get_strings_and_reopen ()
struct ftdi_context * | context ()
void | set_context (struct ftdi_context *context)
void | set_usb_device (struct libusb_device *dev)

## Friends
class | Eeprom
class | List

## Detailed Description

FTDI device context. Represents single FTDI device context.

Definition at line 47 of file ftdi.hpp.

## Member Enumeration Documentation

enum Ftdi::Context::Direction

Direction flags for flush().

Enumerator
Input |
Output |

Definition at line 56 of file ftdi.hpp.

enum Ftdi::Context::ModemCtl

Modem control flags.

Enumerator
Dtr |
Rts |

Definition at line 64 of file ftdi.hpp.

## Constructor & Destructor Documentation

Ftdi::Context::Context | ( |  | ) |

Constructor.

Definition at line 66 of file ftdi.cpp.

Ftdi::Context::~Context | ( |  | ) |

Destructor.

Definition at line 73 of file ftdi.cpp.

## Member Function Documentation

Eeprom* Ftdi::Context::eeprom | ( |  | ) |

const std::string & Ftdi::Context::vendor | ( |  | ) |

Device strings properties.

Definition at line 343 of file ftdi.cpp.

Referenced by get_strings().

const std::string & Ftdi::Context::description | ( |  | ) |

Device strings properties.

Definition at line 350 of file ftdi.cpp.

const std::string & Ftdi::Context::serial | ( |  | ) |

Device strings properties.

Definition at line 357 of file ftdi.cpp.

Referenced by get_strings().

bool Ftdi::Context::is_open | ( |  | ) |

Definition at line 77 of file ftdi.cpp.

int Ftdi::Context::open | ( | struct libusb_device * | dev = `0` | ) |

Definition at line 122 of file ftdi.cpp.

References get_strings_and_reopen().

int Ftdi::Context::open | ( | int | vendor,
|  | int | product
| ) |  |

Definition at line 82 of file ftdi.cpp.

References ftdi_usb_open(), and get_strings_and_reopen().

int Ftdi::Context::open | ( | int | vendor,
|  | int | product,
|  | const std::string & | description,
|  | const std::string & | serial = `std::string()`,
|  | unsigned int | index = `0`
| ) |  |

Definition at line 93 of file ftdi.cpp.

References ftdi_usb_open_desc_index(), and get_strings_and_reopen().

int Ftdi::Context::open | ( | const std::string & | description | ) |

Definition at line 112 of file ftdi.cpp.

References ftdi_usb_open_string(), and get_strings_and_reopen().

int Ftdi::Context::close | ( |  | ) |

Definition at line 133 of file ftdi.cpp.

References ftdi_usb_close().

int Ftdi::Context::reset | ( |  | ) |

Definition at line 140 of file ftdi.cpp.

References ftdi_usb_reset().

int Ftdi::Context::flush | ( | int | mask = `Input|Output` | ) |

Definition at line 145 of file ftdi.cpp.

References ftdi_usb_purge_rx_buffer(), ftdi_usb_purge_tx_buffer(), Input, and Output.

int Ftdi::Context::set_interface | ( | enum ftdi_interface | interface | ) |

Definition at line 157 of file ftdi.cpp.

References ftdi_set_interface().

void Ftdi::Context::set_usb_device | ( | struct libusb_device_handle * | dev | ) |

Definition at line 162 of file ftdi.cpp.

References ftdi_set_usbdev().

Referenced by Ftdi::List::List().

int Ftdi::Context::set_baud_rate | ( | int | baudrate | ) |

Definition at line 168 of file ftdi.cpp.

References ftdi_set_baudrate().

int Ftdi::Context::set_line_property | ( | enum ftdi_bits_type | bits,
|  | enum ftdi_stopbits_type | sbit,
|  | enum ftdi_parity_type | parity
| ) |  |

Definition at line 173 of file ftdi.cpp.

References ftdi_set_line_property().

int Ftdi::Context::set_line_property | ( | enum ftdi_bits_type | bits,
|  | enum ftdi_stopbits_type | sbit,
|  | enum ftdi_parity_type | parity,
|  | enum ftdi_break_type | break_type
| ) |  |

Definition at line 178 of file ftdi.cpp.

References ftdi_set_line_property2().

int Ftdi::Context::read | ( | unsigned char * | buf,
|  | int | size
| ) |  |

Definition at line 183 of file ftdi.cpp.

References ftdi_read_data().

int Ftdi::Context::write | ( | unsigned char * | buf,
|  | int | size
| ) |  |

Definition at line 202 of file ftdi.cpp.

References ftdi_write_data().

int Ftdi::Context::set_read_chunk_size | ( | unsigned int | chunksize | ) |

Definition at line 188 of file ftdi.cpp.

References ftdi_read_data_set_chunksize().

int Ftdi::Context::set_write_chunk_size | ( | unsigned int | chunksize | ) |

Definition at line 207 of file ftdi.cpp.

References ftdi_write_data_set_chunksize().

int Ftdi::Context::read_chunk_size | ( |  | ) |

Definition at line 193 of file ftdi.cpp.

References ftdi_read_data_get_chunksize().

int Ftdi::Context::write_chunk_size | ( |  | ) |

Definition at line 212 of file ftdi.cpp.

References ftdi_write_data_get_chunksize().

int Ftdi::Context::set_event_char | ( | unsigned char | eventch,
|  | unsigned char | enable
| ) |  |

Definition at line 267 of file ftdi.cpp.

References ftdi_set_event_char().

int Ftdi::Context::set_error_char | ( | unsigned char | errorch,
|  | unsigned char | enable
| ) |  |

Definition at line 272 of file ftdi.cpp.

References ftdi_set_error_char().

int Ftdi::Context::set_flow_control | ( | int | flowctrl | ) |

Definition at line 221 of file ftdi.cpp.

References ftdi_setflowctrl().

int Ftdi::Context::set_modem_control | ( | int | mask = `Dtr|Rts` | ) |

Definition at line 226 of file ftdi.cpp.

References Dtr, ftdi_setdtr_rts(), and Rts.

int Ftdi::Context::set_latency | ( | unsigned char | latency | ) |

Definition at line 248 of file ftdi.cpp.

References ftdi_set_latency_timer().

int Ftdi::Context::set_dtr | ( | bool | state | ) |

Definition at line 238 of file ftdi.cpp.

References ftdi_setdtr().

int Ftdi::Context::set_rts | ( | bool | state | ) |

Definition at line 243 of file ftdi.cpp.

References ftdi_setrts().

unsigned short Ftdi::Context::poll_modem_status | ( |  | ) |

Definition at line 260 of file ftdi.cpp.

References ftdi_poll_modem_status().

unsigned Ftdi::Context::latency | ( |  | ) |

Definition at line 253 of file ftdi.cpp.

References ftdi_get_latency_timer().

int Ftdi::Context::set_bitmode | ( | unsigned char | bitmask,
|  | unsigned char | mode
| ) |  |

Definition at line 277 of file ftdi.cpp.

References ftdi_set_bitmode().

int Ftdi::Context::set_bitmode | ( | unsigned char | bitmask,
|  | enum ftdi_mpsse_mode | mode
| ) |  |

Definition at line 282 of file ftdi.cpp.

References ftdi_set_bitmode().

int Ftdi::Context::bitbang_disable | ( |  | ) |

Definition at line 287 of file ftdi.cpp.

References ftdi_disable_bitbang().

int Ftdi::Context::read_pins | ( | unsigned char * | pins | ) |

Definition at line 292 of file ftdi.cpp.

References ftdi_read_pins().

char * Ftdi::Context::error_string | ( |  | ) |

Definition at line 297 of file ftdi.cpp.

References ftdi_get_error_string().

int Ftdi::Context::get_strings | ( |  | ) |
| protected

Definition at line 302 of file ftdi.cpp.

References ftdi_usb_get_strings(), serial(), and vendor().

Referenced by get_strings_and_reopen(), and Ftdi::List::List().

int Ftdi::Context::get_strings_and_reopen | ( |  | ) |
| protected

Definition at line 319 of file ftdi.cpp.

References ftdi_usb_open_dev(), and get_strings().

Referenced by open().

struct ftdi_context * Ftdi::Context::context | ( |  | ) |
| read protected

Definition at line 373 of file ftdi.cpp.

Referenced by Ftdi::Eeprom::Eeprom(), Ftdi::List::find_all(), and set_context().

void Ftdi::Context::set_context | ( | struct ftdi_context * | context | ) |
| protected

Definition at line 362 of file ftdi.cpp.

References context(), and ftdi_free().

void Ftdi::Context::set_usb_device | ( | struct libusb_device * | dev | ) |
| protected

Definition at line 368 of file ftdi.cpp.

## Friends And Related Function Documentation

friend class Eeprom
| friend

Definition at line 50 of file ftdi.hpp.

friend class List
| friend

Definition at line 51 of file ftdi.hpp.

The documentation for this class was generated from the following files:

- ftdi.hpp
- ftdi.cpp