Macro UsbBuildInterruptOrBulkTransferRequest (usbdlib.h)
La macro USBBuildInterruptOrBulkTransferRequest da formato a un URB de para enviar o recibir datos en una canalización masiva o para recibir datos de una canalización de interrupción.
Sintaxis
void UsbBuildInterruptOrBulkTransferRequest(
[in, out] urb,
[in] length,
[in] pipeHandle,
[in, optional] transferBuffer,
[in, optional] transferBufferMDL,
[in] transferBufferLength,
[in] transferFlags,
[in] link
);
Parámetros
[in, out] urb
Puntero a un urb de que se va a formatear como una solicitud de interrupción o transferencia masiva.
[in] length
Especifica el tamaño, en bytes, del URB.
[in] pipeHandle
Especifica el identificador de esta canalización devuelta por HCD cuando se seleccionó una configuración.
[in, optional] transferBuffer
Puntero a un búfer residente para la transferencia o se NULL si se proporciona una MDL en TransferBufferMDL. El contenido de este búfer depende del valor de TransferFlags. Si se especifica USBD_TRANSFER_DIRECTION_IN, este búfer contendrá datos leídos del dispositivo a cambio de HCD. De lo contrario, este búfer contiene los datos proporcionados por el controlador que se van a transferir al dispositivo.
[in, optional] transferBufferMDL
Puntero a una MDL que describe un búfer residente o NULL si se proporciona un búfer en TransferBuffer. El contenido del búfer depende del valor de TransferFlags. Si se especifica USBD_TRANSFER_DIRECTION_IN, el búfer descrito contendrá datos leídos del dispositivo a cambio de HCD. De lo contrario, el búfer contiene los datos proporcionados por el controlador que se van a transferir al dispositivo. La MDL debe asignarse desde un grupo no paginado.
[in] transferBufferLength
Especifica la longitud, en bytes, del búfer especificado en TransferBuffer o descrito en TransferBufferMDL.
[in] transferFlags
Especifica cero, uno o una combinación de las marcas siguientes:
USBD_TRANSFER_DIRECTION_IN
Se establece para solicitar datos desde un dispositivo. Para transferir datos a un dispositivo, esta marca debe estar desactivada.
USBD_SHORT_TRANSFER_OK
Se puede usar si se establece USBD_TRANSFER_DIRECTION_IN. Si se establece, dirige el HCD para que no devuelva un error si se recibe un paquete del dispositivo que es más corto que el tamaño máximo del paquete para el punto de conexión. De lo contrario, una solicitud corta devuelve una condición de error.
[in] link
Reservado. Debe establecerse en NULL.
Valor devuelto
Ninguno
Requisitos
Requisito | Valor |
---|---|
de la plataforma de destino de | Escritorio |
encabezado de | usbdlib.h (include Usbdlib.h) |
Consulte también
referencia de programación del controlador de dispositivo USB