libftdi1  1.3
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. More...
 
 ~Context ()
 Destructor. More...
 
Eepromeeprom ()
 
const std::string & vendor ()
 Device strings properties. More...
 
const std::string & description ()
 Device strings properties. More...
 
const std::string & serial ()
 Device strings properties. More...
 
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 (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_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 363 of file ftdi.cpp.

Referenced by get_strings().

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

Device strings properties.

Definition at line 370 of file ftdi.cpp.

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

Device strings properties.

Definition at line 377 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::get_usb_read_timeout ( ) const

Definition at line 183 of file ftdi.cpp.

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

Definition at line 188 of file ftdi.cpp.

int Ftdi::Context::get_usb_write_timeout ( ) const

Definition at line 193 of file ftdi.cpp.

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

Definition at line 198 of file ftdi.cpp.

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

Definition at line 203 of file ftdi.cpp.

References ftdi_read_data().

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

Definition at line 222 of file ftdi.cpp.

References ftdi_write_data().

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

Definition at line 208 of file ftdi.cpp.

References ftdi_read_data_set_chunksize().

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

Definition at line 227 of file ftdi.cpp.

References ftdi_write_data_set_chunksize().

int Ftdi::Context::read_chunk_size ( )

Definition at line 213 of file ftdi.cpp.

References ftdi_read_data_get_chunksize().

int Ftdi::Context::write_chunk_size ( )

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

References ftdi_set_event_char().

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

Definition at line 292 of file ftdi.cpp.

References ftdi_set_error_char().

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

Definition at line 241 of file ftdi.cpp.

References ftdi_setflowctrl().

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

Definition at line 246 of file ftdi.cpp.

References Dtr, ftdi_setdtr_rts(), and Rts.

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

Definition at line 268 of file ftdi.cpp.

References ftdi_set_latency_timer().

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

Definition at line 258 of file ftdi.cpp.

References ftdi_setdtr().

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

Definition at line 263 of file ftdi.cpp.

References ftdi_setrts().

unsigned short Ftdi::Context::poll_modem_status ( )

Definition at line 280 of file ftdi.cpp.

References ftdi_poll_modem_status().

unsigned Ftdi::Context::latency ( )

Definition at line 273 of file ftdi.cpp.

References ftdi_get_latency_timer().

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

Definition at line 297 of file ftdi.cpp.

References ftdi_set_bitmode().

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

Definition at line 302 of file ftdi.cpp.

References ftdi_set_bitmode().

int Ftdi::Context::bitbang_disable ( )

Definition at line 307 of file ftdi.cpp.

References ftdi_disable_bitbang().

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

Definition at line 312 of file ftdi.cpp.

References ftdi_read_pins().

char * Ftdi::Context::error_string ( )

Definition at line 317 of file ftdi.cpp.

References ftdi_get_error_string().

int Ftdi::Context::get_strings ( )
protected

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

References ftdi_usb_open_dev(), and get_strings().

Referenced by open().

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

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

References context(), and ftdi_free().

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

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