Макрос UsbBuildInterruptOrBulkTransferRequest (usbdlib.h)
Макрос USBBuildInterruptOrBulkTransferRequest форматирует URB для отправки или получения данных на массовом канале или получения данных из канала прерывания.
Синтаксис
void UsbBuildInterruptOrBulkTransferRequest(
[in, out] urb,
[in] length,
[in] pipeHandle,
[in, optional] transferBuffer,
[in, optional] transferBufferMDL,
[in] transferBufferLength,
[in] transferFlags,
[in] link
);
Параметры
[in, out] urb
Указатель на URB форматировать как прерывание или массовый запрос на передачу.
[in] length
Задает размер URBв байтах.
[in] pipeHandle
Указывает дескриптор для этого канала, возвращаемый HCD при выборе конфигурации.
[in, optional] transferBuffer
Указатель на буфер резидента для передачи или null, если MDL предоставляется в TransferBufferMDL. Содержимое этого буфера зависит от значения TransferFlags. Если указан USBD_TRANSFER_DIRECTION_IN, этот буфер будет содержать данные, считываемые с устройства при возврате из HCD. В противном случае этот буфер содержит предоставленные драйвером данные для передачи на устройство.
[in, optional] transferBufferMDL
Указатель на MDL, описывающий буфер резидента или значение NULL, если буфер предоставляется в TransferBuffer. Содержимое буфера зависит от значения TransferFlags. Если указана USBD_TRANSFER_DIRECTION_IN, описанный буфер будет содержать данные, считываемые с устройства при возврате из HCD. В противном случае буфер содержит предоставленные драйвером данные для передачи на устройство. MDL должен быть выделен из непагированного пула.
[in] transferBufferLength
Указывает длину буфера, указанного в TransferBuffer или описанном в TransferBufferMDL.
[in] transferFlags
Указывает ноль, один или сочетание следующих флагов:
USBD_TRANSFER_DIRECTION_IN
Устанавливается для запроса данных с устройства. Чтобы передать данные на устройство, этот флаг должен быть снят.
USBD_SHORT_TRANSFER_OK
Можно использовать, если задано USBD_TRANSFER_DIRECTION_IN. Если задано, то HCD не возвращает ошибку, если пакет получен от устройства, который короче максимального размера пакета для конечной точки. В противном случае короткий запрос возвращает условие ошибки.
[in] link
Скрытный. Необходимо задать значение NULL.
Возвращаемое значение
Никакой
Требования
Требование | Ценность |
---|---|
целевая платформа | Настольный |
заголовка | usbdlib.h (include Usbdlib.h) |