Функция UsbBuildOpenStaticStreamsRequest (usbdlib.h)
Встроенная функция UsbBuildOpenStaticStreamsRequest форматирует структуру URB для запроса open-streams. Запрос открывает потоки, связанные с указанной конечной точкой массовых операций.
Синтаксис
void UsbBuildOpenStaticStreamsRequest(
[in, out] PURB Urb,
[in] USBD_PIPE_HANDLE PipeHandle,
[in] USHORT NumberOfStreams,
[in] PUSBD_STREAM_INFORMATION StreamInfoArray
);
Параметры
[in, out] Urb
Указатель на структуру URB , отформатированную для запроса open-stream (URB_FUNCTION_OPEN_STATIC_STREAMS). Вызывающий объект должен выделить непагрегированные пулы для этого URB.
[in] PipeHandle
Непрозрачный дескриптор для канала, связанного с конечной точкой, которая содержит потоки для открытия.
Драйвер клиента получает PipeHandle из предыдущего запроса на выборку конфигурации (URB_FUNCTION_SELECT_CONFIGURATION) или запроса интерфейса выбора (URB_FUNCTION_SELECT_INTERFACE).
[in] NumberOfStreams
Количество открываемых потоков. Значение NumberOfStreams указывает количество элементов в массиве, на который указывает Streams. Это значение должно быть больше нуля и меньше или равно максимальному количеству потоков, поддерживаемых оборудованием хост-контроллера. Чтобы получить максимальное количество поддерживаемых потоков, вызовите USBD_QueryUsbCapability.
Число потоков также должно быть меньше или равно максимальному числу потоков, поддерживаемых USB-устройством. Чтобы получить это число, проверьте дескриптор компаньона конечной точки.
В поле NumberOfStreams укажите меньшее из двух значений, поддерживаемых хост-контроллером и USB-устройством.
[in] StreamInfoArray
Указатель на выделенный вызывающим объектом инициализированный массив USBD_STREAM_INFORMATION структур. Длина массива зависит от количества открытых потоков и должна совпадать со значением NumberOfStreams .
Возвращаемое значение
None
Remarks
Пример кода, демонстрирующий формат URB, необходимый для запроса open-streams, см. в разделе Открытие и закрытие статических потоков в массовой конечной точке USB.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Требуется WDK для Windows 8. Предназначен для Windows Vista и более поздних версий операционной системы Windows. |
Целевая платформа | Персональный компьютер |
Верхняя часть | usbdlib.h |
См. также раздел
Открытие и закрытие статических потоков в конечной точке массовой передачи USB