libusb  1.0.24
USBデバイスにアクセスするためのクロス・プラットフォームのユーザー・ライブラリ
データ・フィールド
libusb_transfer 構造体リファレンス

#include <libusb.h>

データ・フィールド

libusb_device_handledev_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)します。転送が完了すると、ライブラリは転送に結果を入力し、ユーザーに返します。

フィールド解説

◆ timeout

unsigned int libusb_transfer::timeout

この転送のタイムアウト(ミリ秒単位)

値が0の場合はタイムアウト無し。

◆ status

enum libusb_transfer_status libusb_transfer::status

転送ステータス。

読み取り専用で、転送コールバック関数内でのみ使用されます。

アイソクロナス転送の場合、フレームにエラーがあったとしても、このフィールドはCOMPLETEDと表示されることがあります。各パケットの status フィールドを使用して、エラーが発生したかどうかを判断します。

◆ length

int libusb_transfer::length

でーた・バッファーの長さ。

負の値を指定してはいけません。

◆ actual_length

int libusb_transfer::actual_length

実際に転送されたデータの長さ。

読み取り専用で、転送コールバック関数内でのみ使用されます。アイソクロナス・エンドポイント転送では無効です。

◆ callback

libusb_transfer_cb_fn libusb_transfer::callback

コールバック関数。

これは、転送が完了、失敗、またはキャンセルされたときに呼び出されます。

◆ user_data

void* libusb_transfer::user_data

ユーザ・データ。

コールバック関数内からアクセスできる転送に特定のデータを関連付けるのに便利です。

このフィールドは手動で設定することも、以下の関数の user_data パラメーターとして使用することもできます:

◆ num_iso_packets

int libusb_transfer::num_iso_packets

アイソクロナス・パケットの数。

アイソクロナス・エンドポイントを使用した入出力にのみ使用されます。負の値を指定してはいけません。


この文書は以下のファイルから生成されました: