WinUsb_StartTrackingForTimeSync function

The WinUsb_StartTrackingForTimeSync function starts the time synchronization feature in the USB driver stack that gets the associated system QPC time for USB bus frames and microframes.

Syntax

BOOL WinUsb_StartTrackingForTimeSync(
  WINUSB_INTERFACE_HANDLE                       InterfaceHandle,
  PUSB_START_TRACKING_FOR_TIME_SYNC_INFORMATION StartTrackingInfo
);

Parameters

InterfaceHandle

An opaque handle retrieved in the previous call to WinUsb_Initialize.

StartTrackingInfo

A pointer to a USB_START_TRACKING_FOR_TIME_SYNC_INFORMATION structure. Set TimeTrackingHandle to INAVLID_HANDLE. Set IsStartupDelayTolerable to TRUE if the initial startup latency of up to 2.048 seconds is tolerable. FALSE, the registration is delayed until the USB driver stack is able to detect a valid frame or microframe boundary.

Return Value

WinUsb_StartTrackingForTimeSync returns TRUE if the operation succeeds. Otherwise, this routine returns FALSE, and the caller can retrieve the logged error by calling GetLastError.

GetLastError can return one of the following error codes.

Return code Description
ERROR_INVALID_HANDLE
The caller passed NULL in the InterfaceHandle or StartTrackingInfo parameter.

Requirements

   
Minimum supported client Windows 10
Minimum supported server Windows Server 2016
Target Platform Universal
Header winusb.h (include Winusb.h)
Library Winusb.lib
DLL Winusb.dll

See Also

WinUSB

WinUSB Functions

WinUsb_Initialize