struct libusb_transfer
这个libubs_transfer代表了一切的传输方式。批量,中断,控制,等时。
这是一个装货的卡车。需要事先把货物装在到卡车上。因此我们可以推测他应当有如下几个成员
1 货车为之服务的公司, 即是 usb设备句柄。
2 货物 即传输的数据以及数据长度
3 货物运送仓库地址 即端点号
4 方向 是主机到USB还是USB到主机。
5 到达时间
此外应当还有 送达时间。
因此这libusb_transfer将是我们重点操作的对象。 由它封装了对端点以及数据传输的操作。
创建一个libusb_transfer
struct libusb_transfer * libusb_alloc_transfer | ( | int | iso_packets | ) |
libusb_transfer *libusb_alloc_transfer(int iso_packets);
这个函数只是让我们操作了libusb_transfer中的一个数值,即int libusb_transfer::num_iso_packets
Number of isochronous packets.
这个是用在等时传输的端点,如果不是等时传输,那么可以将其设置为0。