DD_FLIPDATA structure (ddrawint.h)
La structure DD_FLIPDATA contient les informations nécessaires pour effectuer un retournement.
Syntaxe
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;
Membres
lpDD
Pointe vers la structure DD_DIRECTDRAW_GLOBAL qui décrit le périphérique du pilote.
lpSurfCurr
Pointe vers la structure DD_SURFACE_LOCAL décrivant la surface actuelle.
lpSurfTarg
Pointe vers la structure DD_SURFACE_LOCAL décrivant la surface cible ; c’est-à-dire la surface vers laquelle le pilote doit basculer.
dwFlags
Indique un ensemble d’indicateurs qui fournissent au pilote des détails pour le retournement. Ce membre peut être un ou au niveau du bit des indicateurs suivants :
Indicateur | Signification |
---|---|
DDFLIP_DONOTWAIT | Spécifie de retourner DDERR_WASSTILLDRAWING si l’accélérateur est occupé. La valeur par défaut est DDFLIP_WAIT. |
DDFLIP_EVEN | La surface sur laquelle le membre lpSurfTarg pointe contient uniquement le champ pair des données vidéo. Cet indicateur est valide uniquement lorsque la surface est une superposition et s’exclut mutuellement de DDFLIP_ODD. |
DDFLIP_ODD | La surface sur laquelle le membre lpSurfTarg pointe contient uniquement le champ impair des données vidéo. Cet indicateur est valide uniquement lorsque la surface est une superposition et s’exclut mutuellement de DDFLIP_EVEN. |
DDFLIP_NOVSYNC | Le pilote doit effectuer le retournement et retourner immédiatement. En règle générale, la mémoire tampon d’arrière-plan actuelle (qui était auparavant la mémoire tampon avant) est toujours visible jusqu’au prochain retracement vertical. Les opérations suivantes impliquant les surfaces vers lesquelles pointent les membres lpSurfCurr et lpSurfTarg ne case activée pas pour voir si le retournement physique est terminé. Cela permet à une application d’effectuer des retournements à une fréquence supérieure à la fréquence d’actualisation du moniteur, bien qu’elle puisse introduire des artefacts visibles. |
DDFLIP_INTERVAL2 | Le pilote doit effectuer le basculement sur toutes les autres synchronisations verticales. Elle doit retourner DDERR_WASSTILLDRAWING jusqu’à ce que le deuxième retracement vertical ait eu lieu. Cet indicateur s’exclut mutuellement des DDFLIP_INTERVAL3 et des DDFLIP_INTERVAL4. |
DDFLIP_INTERVAL3 | Le pilote doit effectuer le basculement sur chaque troisième synchronisation verticale. Il doit retourner DDERR_WASSTILLDRAWING jusqu’à ce que le troisième retracement vertical ait eu lieu. Cet indicateur s’exclut mutuellement des DDFLIP_INTERVAL2 et des DDFLIP_INTERVAL4. |
DDFLIP_INTERVAL4 | Le pilote doit effectuer le basculement sur chaque quatrième synchronisation verticale. Il doit retourner DDERR_WASSTILLDRAWING jusqu’à ce que le quatrième retracement vertical ait eu lieu. Cet indicateur s’exclut mutuellement des DDFLIP_INTERVAL2 et des DDFLIP_INTERVAL3. |
DDFLIP_STEREO | Spécifie d’activer la capture automatique stéréo (le matériel bascule automatiquement entre les mémoires tampons gauche et droite lors de chaque actualisation de l’écran). |
DDFLIP_WAIT | Spécifie de ne pas retourner tant que le retournement ou qu’une erreur ne se produit pas. |
ddRVal
Spécifie l’emplacement dans lequel le pilote écrit la valeur de retour du rappel DdFlip . Un code de retour de DD_OK indique la réussite. Pour plus d’informations, consultez Valeurs de retour pour DirectDraw.
Flip
Utilisé par l’API Microsoft DirectDraw et ne doit pas être renseigné par le pilote.
lpSurfCurrLeft
Pointe vers la structure DD_SURFACE_LOCAL décrivant la surface gauche actuelle.
lpSurfTargLeft
Pointe vers la structure DD_SURFACE_LOCAL décrivant la surface cible gauche vers laquelle basculer.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | ddrawint.h (incluez Winddi.h) |