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)

Lihat juga

Mengonfigurasi Perangkat USB

URB

Struktur USB

USBD_INTERFACE_INFORMATION

_URB_HEADER