función WinUsb_WriteIsochPipeAsap (winusb.h)
El WinUsb_WriteIsochPipeAsap envía una solicitud para escribir el contenido de un búfer en un punto de conexión OUT isócrono.
Sintaxis
BOOL WinUsb_WriteIsochPipeAsap(
[in] WINUSB_ISOCH_BUFFER_HANDLE BufferHandle,
[in] ULONG Offset,
[in] ULONG Length,
[in] BOOL ContinueStream,
[in, optional] LPOVERLAPPED Overlapped
);
Parámetros
[in] BufferHandle
Identificador opaco del búfer de transferencia registrado por una llamada anterior a WinUsb_RegisterIsochBuffer.
[in] Offset
Desplazamiento en el búfer relativo al inicio de la transferencia.
[in] Length
Longitud en bytes del búfer de transferencia.
[in] ContinueStream
Indica que la transferencia solo debe enviarse si se puede programar en el primer fotograma después de la última transferencia pendiente.
[in, optional] Overlapped
Puntero a una estructura SUPERPUESTA usada para las operaciones asincrónicas.
Valor devuelto
WinUsb_WriteIsochPipeAsap devuelve TRUE si la operación se realiza correctamente. De lo contrario, esta función devuelve FALSE y el autor de la llamada puede recuperar el error registrado llamando a GetLastError.
Si el autor de la llamada establece ContinueStream en TRUE, se produce un error en la transferencia si Winusb.sys no puede programar la transferencia para continuar la secuencia sin quitar uno o varios fotogramas.
Comentarios
WinUsb_WriteIsochPipeAsap permite que la pila del controlador USB elija el número de fotograma inicial de la transferencia. Si una o varias transferencias ya están pendientes en el punto de conexión, la transferencia se programará para el número de fotograma inmediatamente después del último número de fotograma de la última transferencia pendiente actualmente.
WinUsb_WriteIsochPipeAsap paqueteiza el búfer de transferencia para que, en cada intervalo de 1 ms, el host pueda enviar los bytes máximos permitidos por intervalo. El descriptor de punto de conexión especifica los bytes máximos para los puntos de conexión completos y de alta velocidad, y el descriptor complementario del punto de conexión para los puntos de conexión SuperSpeed. Si el autor de la llamada envía varias solicitudes de escritura para transmitir datos al dispositivo, el tamaño de la transferencia debe ser un múltiplo de los bytes máximos por intervalo (devueltos por WinUsb_QueryPipeEx) * 8 /interval.
Debido al empaquetado de transferencia usado en la interfaz del modo kernel subyacente, la notificación de latencia más baja a una aplicación o controlador es de 1 ms intervalos.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 8.1 |
Servidor mínimo compatible | Windows Server 2012 R2 |
Plataforma de destino | Universal |
Encabezado | winusb.h (incluya Winusb.h) |
Library | Winusb.lib |
Archivo DLL | Winusb.dll |
Consulte también
Envío de transferencias isócrónicas USB desde una aplicación de escritorio winUSB