![]() |
libusb 1.0.24
USBデバイスにアクセスするためのクロス・プラットフォームのユーザー・ライブラリ
|
#include <libusb.h>
データ・フィールド | |
libusb_device_handle * | dev_handle |
この転送が送信(submit)されるデバイスのハンドル。 | |
uint8_t | flags |
libusb_transfer_flags
のビット論理和の組み合わせ。 | |
unsigned char | endpoint |
この転送が送られるエンドポイントのアドレス。 | |
unsigned char | type |
転送タイプ(libusb_transfer_type)。 | |
unsigned int | timeout |
この転送のタイムアウト(ミリ秒単位)。 詳細はコチラ | |
enum libusb_transfer_status | status |
転送ステータス。 詳細はコチラ | |
int | length |
データ・バッファの長さ。 詳細はコチラ | |
int | actual_length |
実際に転送されたデータの長さ。 詳細はコチラ | |
libusb_transfer_cb_fn | callback |
コールバック関数。 詳細はコチラ | |
void * | user_data |
ユーザー・データ。 詳細はコチラ | |
unsigned char * | buffer |
データ・バッファー。 | |
int | num_iso_packets |
アイソクロナス・パケットの数。 詳細はコチラ | |
struct libusb_iso_packet_descriptor | iso_packet_desc [ZERO_SIZED_ARRAY] |
アイソクロナス転送専用のアイソクロナス・パケット・デスクリプター。 | |
一般的なUSB転送構造体。ユーザーはこの構造体にデータを入力し、転送を要求するために送信(submits)します。転送が完了すると、ライブラリは転送に結果を入力し、ユーザーに返します。
unsigned int libusb_transfer::timeout |
この転送のタイムアウト(ミリ秒単位)
値が0の場合はタイムアウト無し。
enum libusb_transfer_status libusb_transfer::status |
転送ステータス。
読み取り専用で、転送コールバック関数内でのみ使用されます。
アイソクロナス転送の場合、フレームにエラーがあったとしても、このフィールドはCOMPLETEDと表示されることがあります。各パケットの status フィールドを使用して、エラーが発生したかどうかを判断します。
int libusb_transfer::length |
でーた・バッファーの長さ。
負の値を指定してはいけません。
int libusb_transfer::actual_length |
実際に転送されたデータの長さ。
読み取り専用で、転送コールバック関数内でのみ使用されます。アイソクロナス・エンドポイント転送では無効です。
libusb_transfer_cb_fn libusb_transfer::callback |
コールバック関数。
これは、転送が完了、失敗、またはキャンセルされたときに呼び出されます。
void* libusb_transfer::user_data |
ユーザ・データ。
コールバック関数内からアクセスできる転送に特定のデータを関連付けるのに便利です。
このフィールドは手動で設定することも、以下の関数の user_data
パラメーターとして使用することもできます:
int libusb_transfer::num_iso_packets |
アイソクロナス・パケットの数。
アイソクロナス・エンドポイントを使用した入出力にのみ使用されます。負の値を指定してはいけません。