IDirectDrawVideoPort::Flip

The IDirectDrawVideoPort::Flip method instructs the DirectDrawVideoPort object to write the next frame of video to a new surface.

HRESULT Flip(
  LPDIRECTDRAWSURFACE lpDDSurface,  
  DWORD dwFlags                     
);
 

Parameters

lpDDSurface
Address of the IDirectDrawSurface interface for the surface that will receive the next frame of video. Setting this parameter to NULL causes DirectDraw to cycle through surfaces in the flipping chain in the order they were attached.
dwFlags
Flip options flags. This parameter can be one of the following values:
DDVPFLIP_VIDEO
The specified surface is to receive the normal video data.
DDVPFLIP_VBI
The specified surface is to receive only the data within the vertical blanking interval.

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

Remarks

This method can be used to prevent tearing. Calls to IDirectDrawVideoPort::Flip are asynchronous—the actual flip operation will always be synchronized with the vertical blank of the video signal.

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.