Freigeben über


DD_FLIPDATA-Struktur (ddrawint.h)

Die DD_FLIPDATA-Struktur enthält Informationen, die zum Ausführen eines Flips erforderlich sind.

Syntax

typedef struct _DD_FLIPDATA {
  PDD_DIRECTDRAW_GLOBAL lpDD;
  PDD_SURFACE_LOCAL     lpSurfCurr;
  PDD_SURFACE_LOCAL     lpSurfTarg;
  DWORD                 dwFlags;
  HRESULT               ddRVal;
  VOID                  *Flip;
  PDD_SURFACE_LOCAL     lpSurfCurrLeft;
  PDD_SURFACE_LOCAL     lpSurfTargLeft;
} *PDD_FLIPDATA, DD_FLIPDATA;

Member

lpDD

Zeigt auf die DD_DIRECTDRAW_GLOBAL-Struktur , die das Gerät des Treibers beschreibt.

lpSurfCurr

Zeigt auf die DD_SURFACE_LOCAL-Struktur , die die aktuelle Oberfläche beschreibt.

lpSurfTarg

Zeigt auf die DD_SURFACE_LOCAL Struktur, die die Zieloberfläche beschreibt; d. h. die Oberfläche, auf die der Treiber umdrehen soll.

dwFlags

Gibt eine Reihe von Flags an, die dem Treiber Details für das Flip bereitstellen. Dieses Element kann ein bitweiser OR der folgenden Flags sein:

Flag Bedeutung
DDFLIP_DONOTWAIT Gibt an, DDERR_WASSTILLDRAWING zurückzugeben, wenn der Accelerator ausgelastet ist. Der Standardwert ist DDFLIP_WAIT.
DDFLIP_EVEN Die Oberfläche, auf die das lpSurfTarg-Element verweist, enthält nur das gerade Feld der Videodaten. Dieses Flag ist nur gültig, wenn die Oberfläche eine Überlagerung ist und sich gegenseitig von DDFLIP_ODD ausschließt.
DDFLIP_ODD Die Oberfläche, auf die das lpSurfTarg-Element verweist, enthält nur das ungerade Feld der Videodaten. Dieses Flag ist nur gültig, wenn die Oberfläche eine Überlagerung ist und sich gegenseitig von DDFLIP_EVEN ausschließt.
DDFLIP_NOVSYNC Der Treiber sollte das Umdrehen ausführen und sofort zurückkehren. In der Regel ist der aktuelle Backpuffer (bei dem es sich um den Frontpuffer handelte) bis zum nächsten vertikalen Rücklauf weiterhin sichtbar. Nachfolgende Vorgänge, die die Oberflächen betreffen, auf die die Elemente lpSurfCurr und lpSurfTarg verweisen, überprüfen nicht, ob der physische Flip abgeschlossen ist. Dadurch kann eine Anwendung Flips mit einer höheren Häufigkeit als die Monitoraktualisierungsrate ausführen, obwohl sie sichtbare Artefakte einführt.
DDFLIP_INTERVAL2 Der Treiber sollte das Umdrehen bei jeder anderen vertikalen Synchronisierung durchführen. Es sollte DDERR_WASSTILLDRAWING zurückgeben, bis der zweite vertikale Retrace aufgetreten ist. Dieses Flag schließt sich gegenseitig von DDFLIP_INTERVAL3 und DDFLIP_INTERVAL4 aus.
DDFLIP_INTERVAL3 Der Treiber sollte jede dritte vertikale Synchronisierung umdrehen. Es sollte DDERR_WASSTILLDRAWING zurückgeben, bis der dritte vertikale Retrace aufgetreten ist. Dieses Flag schließt sich gegenseitig aus DDFLIP_INTERVAL2 und DDFLIP_INTERVAL4.
DDFLIP_INTERVAL4 Der Treiber sollte jede vierte vertikale Synchronisierung umdrehen. Es sollte DDERR_WASSTILLDRAWING zurückgeben, bis der vierte vertikale Retrace aufgetreten ist. Dieses Flag schließt sich gegenseitig von DDFLIP_INTERVAL2 und DDFLIP_INTERVAL3 aus.
DDFLIP_STEREO Gibt an, dass das automatische Stereoflipping aktiviert werden soll (die Hardware wechselt automatisch zwischen dem linken und rechten Puffer während jeder Bildschirmaktualisierung).
DDFLIP_WAIT Gibt an, dass erst zurückgegeben wird, wenn das Umdrehen oder ein Fehler auftritt.

ddRVal

Gibt den Speicherort an, an dem der Treiber den Rückgabewert des DdFlip-Rückrufs schreibt. Ein Rückgabecode von DD_OK zeigt den Erfolg an. Weitere Informationen finden Sie unter Rückgabewerte für DirectDraw.

Flip

Wird von der Microsoft DirectDraw-API verwendet und sollte nicht vom Treiber ausgefüllt werden.

lpSurfCurrLeft

Zeigt auf die DD_SURFACE_LOCAL Struktur, die die aktuelle linke Oberfläche beschreibt.

lpSurfTargLeft

Zeigt auf die DD_SURFACE_LOCAL Struktur, die die linke Zieloberfläche beschreibt, auf die gedreht werden soll.

Anforderungen

Anforderung Wert
Header ddrawint.h (include Winddi.h)

Weitere Informationen

DdFlip