WinUsb_ReadIsochPipe routine
The WinUsb_ReadIsochPipe function reads data from an isochronous OUT endpoint.
Syntax
BOOL __stdcall WinUsb_ReadIsochPipe( _In_ PWINUSB_ISOCH_BUFFER_HANDLE BufferHandle, _In_ ULONG Offset, _In_ ULONG Length, _Inout_ PULONG FrameNumber, _In_ PULONG NumberOfPackets, _Out_ PULONG IsoPacketDescriptors, _In_opt_ LPOVERLAPPED Overlapped );
Parameters
- BufferHandle [in]
-
An opaque handle to the transfer buffer that was registered by a previous call to WinUsb_RegisterIsochBuffer.
- Offset [in]
-
Offset into the buffer relative to the start the transfer.
- Length [in]
-
Length in bytes of the transfer buffer.
- FrameNumber [in, out]
-
On input, indicates the starting frame number for the transfer. On output, contains the frame number of the frame that follows the last frame used in the transfer.
- NumberOfPackets [in]
-
Total number of isochronous packets required to hold the transfer buffer. Also indicates the number of elements in the array pointed to by IsoPacketDescriptors.
- IsoPacketDescriptors [out]
-
An array of USBD_ISO_PACKET_DESCRIPTOR structures. After the transfer completes, each element contains the status and size of the isochronous packet.
- Overlapped [in, optional]
-
Pointer to an OVERLAPPED structure used for asynchronous operations.
Return value
WinUsb_ReadIsochPipe returns TRUE if the operation succeeds. Otherwise this function returns FALSE, and the caller can retrieve the logged error by calling GetLastError.
Remarks
WinUsb_ReadIsochPipe packetizes the transfer buffer so that in each interval, the host can receive the maximum bytes allowed per interval. The maximum bytes is as specified by the endpoint descriptor for full and high-speed endpoints, and endpoint companion descriptor for SuperSpeed endpoints. If the caller submits multiple read requests to stream data from the device, the transfer size should be a multiple of the maximum bytes per interval (as returned by WinUsb_QueryPipeEx) * 8 / interval.
Requirements
Minimum supported client | Windows 8.1 |
---|---|
Minimum supported server | Windows Server 2012 R2 |
Header |
|
Library |
|
See also
Send comments about this topic to Microsoft
Build date: 12/5/2013