Ftdi::Context Class Reference

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

#include <ftdi.hpp>

List of all members.

Classes

class  Private

Public Types

enum  Direction { Input = 0x2, Output = 0x1 }
 

Direction flags for flush().

More...
enum  ModemCtl { Dtr = 0x2, Rts = 0x1 }
 

Modem control flags.

More...

Public Member Functions

 Context ()
 Constructor.
 ~Context ()
 Destructor.
Eepromeeprom ()
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 get_usb_read_timeout () const
void set_usb_read_timeout (int usb_read_timeout)
int get_usb_write_timeout () const
void set_usb_write_timeout (int usb_write_timeout)
int read (unsigned char *buf, int size)
int write (const 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)
const char * error_string ()

Protected Member Functions

int get_strings (bool vendor=true, bool description=true, bool serial=true)
int get_strings_and_reopen (bool vendor=true, bool description=true, bool serial=true)
struct ftdi_contextcontext ()
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

Direction flags for flush().

Enumerator:
Input 
Output 

Definition at line 56 of file ftdi.hpp.

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 382 of file ftdi.cpp.

References get_strings_and_reopen().

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

Device strings properties.

Definition at line 391 of file ftdi.cpp.

References get_strings_and_reopen().

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

Device strings properties.

Definition at line 400 of file ftdi.cpp.

References get_strings_and_reopen().

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  ) 
int Ftdi::Context::set_interface ( enum ftdi_interface  interface  ) 

Definition at line 171 of file ftdi.cpp.

References ftdi_set_interface().

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

Definition at line 176 of file ftdi.cpp.

References ftdi_set_usbdev().

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

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

Definition at line 182 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 187 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 192 of file ftdi.cpp.

References ftdi_set_line_property2().

int Ftdi::Context::get_usb_read_timeout (  )  const

Definition at line 197 of file ftdi.cpp.

void Ftdi::Context::set_usb_read_timeout ( int  usb_read_timeout  ) 

Definition at line 202 of file ftdi.cpp.

int Ftdi::Context::get_usb_write_timeout (  )  const

Definition at line 207 of file ftdi.cpp.

void Ftdi::Context::set_usb_write_timeout ( int  usb_write_timeout  ) 

Definition at line 212 of file ftdi.cpp.

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

Definition at line 217 of file ftdi.cpp.

References ftdi_read_data().

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

Definition at line 236 of file ftdi.cpp.

References ftdi_write_data().

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

Definition at line 222 of file ftdi.cpp.

References ftdi_read_data_set_chunksize().

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

Definition at line 241 of file ftdi.cpp.

References ftdi_write_data_set_chunksize().

int Ftdi::Context::read_chunk_size (  ) 

Definition at line 227 of file ftdi.cpp.

References ftdi_read_data_get_chunksize().

int Ftdi::Context::write_chunk_size (  ) 

Definition at line 246 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 301 of file ftdi.cpp.

References ftdi_set_event_char().

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

Definition at line 306 of file ftdi.cpp.

References ftdi_set_error_char().

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

Definition at line 255 of file ftdi.cpp.

References ftdi_setflowctrl().

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

Definition at line 260 of file ftdi.cpp.

References Dtr, ftdi_setdtr_rts(), and Rts.

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

Definition at line 282 of file ftdi.cpp.

References ftdi_set_latency_timer().

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

Definition at line 272 of file ftdi.cpp.

References ftdi_setdtr().

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

Definition at line 277 of file ftdi.cpp.

References ftdi_setrts().

unsigned short Ftdi::Context::poll_modem_status (  ) 

Definition at line 294 of file ftdi.cpp.

References ftdi_poll_modem_status().

unsigned Ftdi::Context::latency (  ) 

Definition at line 287 of file ftdi.cpp.

References ftdi_get_latency_timer().

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

Definition at line 311 of file ftdi.cpp.

References ftdi_set_bitmode().

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

Definition at line 316 of file ftdi.cpp.

References ftdi_set_bitmode().

int Ftdi::Context::bitbang_disable (  ) 

Definition at line 321 of file ftdi.cpp.

References ftdi_disable_bitbang().

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

Definition at line 326 of file ftdi.cpp.

References ftdi_read_pins().

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

Definition at line 331 of file ftdi.cpp.

References ftdi_get_error_string().

int Ftdi::Context::get_strings ( bool  vendor = true,
bool  description = true,
bool  serial = true 
) [protected]

Definition at line 336 of file ftdi.cpp.

References ftdi_usb_get_strings().

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

int Ftdi::Context::get_strings_and_reopen ( bool  vendor = true,
bool  description = true,
bool  serial = true 
) [protected]

Definition at line 353 of file ftdi.cpp.

References ftdi_usb_open_dev(), and get_strings().

Referenced by description(), open(), serial(), and vendor().

struct ftdi_context * Ftdi::Context::context (  )  [read, protected]

Definition at line 418 of file ftdi.cpp.

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

void Ftdi::Context::set_context ( struct ftdi_context context  )  [protected]

Definition at line 407 of file ftdi.cpp.

References ftdi_free().

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

Definition at line 413 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:

Generated on 9 Dec 2019 for libftdi1 by  doxygen 1.6.1