WinUsb_ReadIsochPipe (winusb.h)
Fungsi WinUsb_ReadIsochPipe membaca data dari titik akhir IN isochronous.
Sintaks
BOOL WinUsb_ReadIsochPipe(
[in] WINUSB_ISOCH_BUFFER_HANDLE BufferHandle,
[in] ULONG Offset,
[in] ULONG Length,
[in, out] PULONG FrameNumber,
[in] ULONG NumberOfPackets,
[out] PUSBD_ISO_PACKET_DESCRIPTOR IsoPacketDescriptors,
[in, optional] LPOVERLAPPED Overlapped
);
Parameter
[in] BufferHandle
Handel buram ke buffer transfer yang didaftarkan oleh panggilan sebelumnya ke WinUsb_RegisterIsochBuffer.
[in] Offset
Offset ke dalam buffer relatif terhadap mulai transfer.
[in] Length
Panjang dalam byte buffer transfer.
[in, out] FrameNumber
Pada input, menunjukkan nomor bingkai awal untuk transfer. Pada output, berisi nomor bingkai bingkai yang mengikuti bingkai terakhir yang digunakan dalam transfer.
[in] NumberOfPackets
Jumlah total paket isochronous yang diperlukan untuk menahan buffer transfer. Juga menunjukkan jumlah elemen dalam array yang ditunjukkan oleh IsoPacketDescriptors.
[out] IsoPacketDescriptors
Array struktur USBD_ISO_PACKET_DESCRIPTOR . Setelah transfer selesai, setiap elemen berisi status dan ukuran paket isochronous.
[in, optional] Overlapped
Penunjuk ke struktur TUMPANG TINDIH yang digunakan untuk operasi asinkron.
Nilai kembali
WinUsb_ReadIsochPipe mengembalikan TRUE jika operasi berhasil. Jika tidak, fungsi ini mengembalikan FALSE, dan pemanggil dapat mengambil kesalahan yang dicatat dengan memanggil GetLastError.
Keterangan
WinUsb_ReadIsochPipe mengemas buffer transfer sehingga dalam setiap interval 1ms, host dapat menerima byte maksimum yang diizinkan per interval. Byte maksimum seperti yang ditentukan oleh deskriptor titik akhir untuk titik akhir penuh dan berkecepatan tinggi, dan deskriptor pendamping titik akhir untuk titik akhir SuperSpeed. Jika pemanggil mengirimkan beberapa permintaan baca untuk mengalirkan data dari perangkat, ukuran transfer harus menjadi kelipatan byte maksimum per interval (seperti yang dikembalikan oleh WinUsb_QueryPipeEx) * 8 / interval.
Karena kemasan transfer yang digunakan dalam antarmuka mode kernel yang mendasar, pemberitahuan latensi terendah ke aplikasi atau driver adalah interval 1ms.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 8.1 |
Server minimum yang didukung | Windows Server 2012 R2 |
Target Platform | Universal |
Header | winusb.h (termasuk Winusb.h) |
Pustaka | Winusb.lib |
DLL | Winusb.dll |
Lihat juga
Mengirim transfer isochronous USB dari aplikasi desktop WinUSB