struktur _URB_SELECT_INTERFACE (usb.h)
Struktur _URB_SELECT_INTERFACE digunakan oleh driver klien USB untuk memilih pengaturan alternatif untuk antarmuka atau untuk mengubah ukuran paket maksimum pipa dalam konfigurasi saat ini pada perangkat USB.
Sintaks
struct _URB_SELECT_INTERFACE {
struct _URB_HEADER Hdr;
USBD_CONFIGURATION_HANDLE ConfigurationHandle;
USBD_INTERFACE_INFORMATION Interface;
};
Anggota
Hdr
Penunjuk ke struktur _URB_HEADER yang menentukan informasi header URB. Hdr.Function harus URB_FUNCTION_SELECT_INTERFACE, dan Hdr.Length harus berukuran seluruh URB.
ConfigurationHandle
Menentukan handel ke konfigurasi tempat antarmuka ini berada. Driver pengontrol host mengembalikan handel ini ketika klien memilih konfigurasi dengan permintaan URB_FUNCTION_SELECT_CONFIGURATION.
Interface
Struktur USBD_INTERFACE_INFORMATION panjang variabel yang menentukan antarmuka dan pengaturan alternatif baru untuk antarmuka tersebut, dan jika diperlukan, ukuran paket maksimum baru untuk pipa yang sesuai. Untuk informasi selengkapnya, lihat Keterangan.
Keterangan
Anda dapat menggunakan makro GET_SELECT_INTERFACE_REQUEST_SIZE untuk menentukan ukuran URB_FUNCTION_SELECT_INTERFACE URB, dan rutinitas UsbBuildSelectInterfaceRequest untuk memformat URB.
Struktur USBD_INTERFACE_INFORMATION berisi informasi tentang antarmuka dan pengaturan alternatifnya. Anggota PipaUSBD_INTERFACE_INFORMATION menunjuk ke array struktur USBD_PIPE_INFORMATION . Array menyimpan informasi tentang pipa yang terkait dengan titik akhir antarmuka. Anda dapat mengganti pengaturan default tertentu untuk pipa, seperti ukuran paket maksimumnya. Untuk mengubah ukuran paket maksimum, atur bendera USBD_PF_CHANGE_MAX_PACKET di Pipes[i].PipeFlags
, lalu tentukan nilai baru di Pipes[i].MaximumPacketSize
.
Setelah driver bus berhasil menyelesaikan pemrosesan URB URB_FUNCTION_SELECT_INTERFACE, ia mengembalikan array handel untuk setiap pipa dalam Pipes[i].PipeHandle
anggota. Driver klien dapat menyimpan handel pipa untuk mengirim permintaan I/O ke pipa tertentu.
Persyaratan
Persyaratan | Nilai |
---|---|
Header | usb.h (termasuk Usb.h) |