Macro UsbBuildInterruptOrBulkTransferRequest (usbdlib.h)
A macro UsbBuildInterruptOrBulkTransferRequest formata um URB para enviar ou receber dados em um pipe em massa ou para receber dados de um pipe de interrupção.
Sintaxe
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
Ponteiro para um URB a ser formatado como uma solicitação de interrupção ou transferência em massa.
[in] length
Especifica o tamanho, em bytes, da URB.
[in] pipeHandle
Especifica o identificador desse pipe retornado pelo HCD quando uma configuração foi selecionada.
[in, optional] transferBuffer
Ponteiro para um buffer residente para a transferência ou será NULL se um MDL for fornecido em TransferBufferMDL. O conteúdo desse buffer depende do valor de TransferFlags. Se USBD_TRANSFER_DIRECTION_IN for especificado, esse buffer conterá dados lidos do dispositivo no retorno do HCD. Caso contrário, esse buffer contém dados fornecidos pelo driver a serem transferidos para o dispositivo.
[in, optional] transferBufferMDL
Ponteiro para um MDL que descreve um buffer residente ou é NULL se um buffer for fornecido no TransferBuffer. O conteúdo do buffer depende do valor de TransferFlags. Se USBD_TRANSFER_DIRECTION_IN for especificado, o buffer descrito conterá dados lidos do dispositivo no retorno do HCD. Caso contrário, o buffer contém dados fornecidos pelo driver a serem transferidos para o dispositivo. O MDL deve ser alocado do pool nãopagado.
[in] transferBufferLength
Especifica o comprimento, em bytes, do buffer especificado em TransferBuffer ou descrito em TransferBufferMDL.
[in] transferFlags
Especifica zero, um ou uma combinação dos seguintes sinalizadores:
USBD_TRANSFER_DIRECTION_IN
Está definido para solicitar dados de um dispositivo. Para transferir dados para um dispositivo, esse sinalizador deve estar claro.
USBD_SHORT_TRANSFER_OK
Pode ser usado se USBD_TRANSFER_DIRECTION_IN estiver definido. Se definido, direciona o HCD para não retornar um erro se um pacote for recebido do dispositivo menor que o tamanho máximo do pacote para o ponto de extremidade. Caso contrário, uma solicitação curta retornará uma condição de erro.
[in] link
Reservado. Deve ser definido como NULL.
Retornar valor
Nenhum
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Área de Trabalho |
Cabeçalho | usbdlib.h (inclua Usbdlib.h) |