функция WinUsb_WriteIsochPipe (winusb.h)
Функция WinUsb_WriteIsochPipe записывает содержимое буфера, предоставленного вызывающим объектом, в изохронную конечную точку OUT, начиная с указанного номера кадра.
Синтаксис
BOOL WinUsb_WriteIsochPipe(
[in] WINUSB_ISOCH_BUFFER_HANDLE BufferHandle,
[in] ULONG Offset,
[in] ULONG Length,
[in, out] PULONG FrameNumber,
[in, optional] LPOVERLAPPED Overlapped
);
Параметры
[in] BufferHandle
Непрозрачный дескриптор буфера передачи, зарегистрированный при предыдущем вызове WinUsb_RegisterIsochBuffer.
[in] Offset
Смещение в буфер относительно начала передачи.
[in] Length
Длина буфера передачи в байтах.
[in, out] FrameNumber
На входных данных указывает начальный номер кадра для передачи. В выходных данных содержит номер кадра, следующего за последним кадром, используемым при передаче.
[in, optional] Overlapped
Указатель на структуру OVERLAPPED, используемую для асинхронных операций.
Возвращаемое значение
WinUsb_WriteIsochPipe возвращает значение TRUE, если операция выполнена успешно. В противном случае эта функция возвращает значение FALSE, и вызывающий объект может получить зарегистрированную ошибку, вызвав Метод GetLastError.
Комментарии
WinUsb_WriteIsochPipe пакетизирует буфер передачи, чтобы за каждый интервал в 1 мс узел может отправлять максимально допустимое количество байтов для каждого интервала. Максимальное число байтов определяется дескриптором конечной точки для полной и высокоскоростной конечных точек, а также дескриптором-компаньоном конечных точек для конечных точек SuperSpeed. Если вызывающий объект отправляет несколько запросов на запись для потоковой передачи данных на устройство, размер передачи должен быть кратным максимальному значению байтов на интервал (возвращаемый WinUsb_QueryPipeEx) * 8 / интервал.
Из-за упаковки передачи, используемой в базовом интерфейсе режима ядра, самая низкая задержка уведомления для приложения или драйвера составляет 1 мс.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 8.1 |
Минимальная версия сервера | Windows Server 2012 R2 |
Целевая платформа | Универсальное |
Верхняя часть | winusb.h (включая Winusb.h) |
Библиотека | Winusb.lib |
DLL | Winusb.dll |
См. также раздел
Отправка изохронных передач по USB из классического приложения WinUSB