Поделиться через


функция 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

Функции WinUSB