libusb1 implementation of fusb_ephandle More...
#include <fusb_libusb1.h>
Public Member Functions | |
fusb_ephandle_libusb1 (fusb_devhandle_libusb1 *dh, int endpoint, bool input_p, int block_size=0, int nblocks=0) | |
virtual | ~fusb_ephandle_libusb1 () |
virtual bool | start () |
begin streaming i/o | |
virtual bool | stop () |
stop streaming i/o | |
virtual int | write (const void *buffer, int nbytes) |
virtual int | read (void *buffer, int nbytes) |
virtual void | wait_for_completion () |
void | free_list_add (struct libusb_transfer *lut) |
void | completed_list_add (struct libusb_transfer *lut) |
struct libusb_transfer * | free_list_get () |
struct libusb_transfer * | completed_list_get () |
fusb_devhandle_libusb1 * | get_fusb_devhandle_libusb1 () const |
libusb1 implementation of fusb_ephandle
fusb_ephandle_libusb1::fusb_ephandle_libusb1 | ( | fusb_devhandle_libusb1 * | dh, | |
int | endpoint, | |||
bool | input_p, | |||
int | block_size = 0 , |
|||
int | nblocks = 0 | |||
) |
fusb_ephandle_libusb1::~fusb_ephandle_libusb1 | ( | ) | [virtual] |
References completed_list_get(), free_list_get(), and stop().
void fusb_ephandle_libusb1::completed_list_add | ( | struct libusb_transfer * | lut | ) |
libusb_transfer * fusb_ephandle_libusb1::completed_list_get | ( | ) | [read] |
Referenced by stop(), and ~fusb_ephandle_libusb1().
void fusb_ephandle_libusb1::free_list_add | ( | struct libusb_transfer * | lut | ) |
Referenced by stop().
libusb_transfer * fusb_ephandle_libusb1::free_list_get | ( | ) | [read] |
Referenced by start(), and ~fusb_ephandle_libusb1().
fusb_devhandle_libusb1* fusb_ephandle_libusb1::get_fusb_devhandle_libusb1 | ( | ) | const [inline] |
int fusb_ephandle_libusb1::read | ( | void * | buffer, | |
int | nbytes | |||
) | [virtual] |
Implements fusb_ephandle.
References fusb_ephandle::d_input_p, and fusb_ephandle::d_started.
bool fusb_ephandle_libusb1::start | ( | ) | [virtual] |
begin streaming i/o
Implements fusb_ephandle.
References fusb_ephandle::d_input_p, fusb_ephandle::d_nblocks, fusb_ephandle::d_started, and free_list_get().
bool fusb_ephandle_libusb1::stop | ( | ) | [virtual] |
stop streaming i/o
Implements fusb_ephandle.
References fusb_devhandle_libusb1::_cancel_pending_rqsts(), fusb_devhandle_libusb1::_reap(), completed_list_get(), fusb_ephandle::d_nblocks, fusb_ephandle::d_started, and free_list_add().
Referenced by ~fusb_ephandle_libusb1().
void fusb_ephandle_libusb1::wait_for_completion | ( | ) | [virtual] |
Implements fusb_ephandle.
References fusb_devhandle_libusb1::_wait_for_completion().
int fusb_ephandle_libusb1::write | ( | const void * | buffer, | |
int | nbytes | |||
) | [virtual] |
nbytes
if write was successfully enqueued, else -1. Will block if no free buffers available. Implements fusb_ephandle.
References fusb_ephandle::d_input_p, and fusb_ephandle::d_started.