IDirectDrawVideoPort::WaitForSync

The IDirectDrawVideoPort::WaitForSync method waits for VSYNC or until a given scan line is being drawn.

HRESULT WaitForSync(
  DWORD dwFlags,  
  DWORD dwLine,   
  DWORD dwTimeout 
);
 

Parameters

dwFlags
Flag specifying how the method will wait for the video VSYNC or the specified line number.
DDVPWAIT_BEGIN
Return at the start of the vertical blanking interval.
DDVPWAIT_END
Return at the end of the vertical blanking interval.
DDVPWAIT_LINE
Return when the video counter either reaches or passes the line specified by the dwLine parameter.
dwLine
The video line determining when the method should return, relative to the field height, before prescaling. This parameter is ignored if the dwFlags parameter is set to DDVPWAIT_BEGIN or DDVPWAIT_END.
dwTimeout
Amount of time, in milliseconds, that the method will wait for the next video vertical blank before timing out. If this parameter is 0, the method waits 3 times the value specified in the dwMicrosecondsPerField member of the DDVIDEOPORTDESC.

Return Values

If the method succeeds, the return value is DD_OK.

If the method fails, the return value may be one of the following error values:

DDERR_INVALIDOBJECT
DDERR_INVALIDPARAMS
DDERR_UNSUPPORTED
DDERR_VIDEONOTACTIVE
DDERR_WASSTILLDRAWING

Remarks

This method helps the caller synchronize with the video vertical blank interval or with an arbitrary line of video data. The method blocks the calling thread until either the video VSYNC occurs or when the video line counter matches the specified line number.

QuickInfo

  Windows NT/2000: Requires Windows 2000.
  Windows 95/98: Requires Windows 95 or later. Available as a redistributable for Windows 95.
  Header: Declared in dvp.h.
  Import Library: Use ddraw.lib.