Partager via


IDirect3DIndexBuffer9::Lock, méthode (d3d9helper.h)

Verrouille une plage de données d’index et obtient un pointeur vers la mémoire tampon d’index.

Syntaxe

HRESULT Lock(
  [in]  UINT  OffsetToLock,
  [in]  UINT  SizeToLock,
  [out] void  **ppbData,
  [in]  DWORD Flags
);

Paramètres

[in] OffsetToLock

Type : UINT

Décaler dans les données d’index à verrouiller, en octets. Verrouillez la mémoire tampon d’index entière en spécifiant 0 pour les deux paramètres, SizeToLock et OffsetToLock.

[in] SizeToLock

Type : UINT

Taille des données d’index à verrouiller, en octets. Verrouillez la mémoire tampon d’index entière en spécifiant 0 pour les deux paramètres, SizeToLock et OffsetToLock.

[out] ppbData

Type : VOID**

POINTEUR VOID* vers une mémoire tampon contenant les données d’index retournées.

[in] Flags

Type : DWORD

Combinaison de zéro ou plusieurs indicateurs de verrouillage qui décrivent le type de verrou à effectuer. Pour cette méthode, les indicateurs valides sont les suivants :

  • D3DLOCK_DISCARD
  • D3DLOCK_NO_DIRTY_UPDATE
  • D3DLOCK_NOSYSLOCK
  • D3DLOCK_READONLY
  • D3DLOCK_NOOVERWRITE
Pour obtenir une description des indicateurs, consultez D3DLOCK.

Valeur retournée

Type : HRESULT

Si la méthode réussit, la valeur de retour est D3D_OK. Si la méthode échoue, la valeur de retour peut être D3DERR_INVALIDCALL.

Notes

En règle générale, ne tenez pas de verrou sur plusieurs images. Lorsque vous utilisez des mémoires tampons d’index, vous êtes autorisé à effectuer plusieurs appels de verrouillage. Toutefois, vous devez vous assurer que le nombre d’appels de verrouillage correspond au nombre d’appels de déverrouillage. Les appels IDirect3DDevice9::D rawIndexedPrimitive ne réussissent pas avec le nombre de verrous en suspens sur la mémoire tampon d’index actuellement définie.

Les indicateurs D3DLOCK_DISCARD et D3DLOCK_NOOVERWRITE sont valides uniquement sur les mémoires tampons créées avec D3DUSAGE_DYNAMIC.

Pour plus d’informations sur l’utilisation de D3DLOCK_DISCARD ou de D3DLOCK_NOOVERWRITE , consultez Conseils de programmation (Direct3D 9 ).

Spécifications

   
Plateforme cible Windows
En-tête d3d9helper.h (incluez D3D9.h)
Bibliothèque D3D9.lib

Voir aussi

IDirect3DIndexBuffer9

IDirect3DIndexBuffer9::Unlock

Mémoires tampons d’index (Direct3D 9)