IDXGIObject::SetPrivateData, méthode (dxgi.h)

Définit les données définies par l’application sur l’objet et associe ces données à un GUID.

Syntaxe

HRESULT SetPrivateData(
  [in] REFGUID    Name,
       UINT       DataSize,
  [in] const void *pData
);

Paramètres

[in] Name

Type : REFGUID

GUID qui identifie les données. Utilisez ce GUID dans un appel à GetPrivateData pour obtenir les données.

DataSize

Type : UINT

Taille des données de l’objet.

[in] pData

Type : const void*

Pointeur vers les données de l’objet.

Valeur retournée

Type : HRESULT

Retourne l’une des valeurs DXGI_ERROR .

Notes

SetPrivateData effectue une copie des données spécifiées et les stocke avec l’objet .

Les données privées que SetPrivateData stocke dans l’objet occupent le même espace de stockage que les données privées stockées par les objets Direct3D associés (par exemple, par un appareil Microsoft Direct3D 11 via ID3D11Device::SetPrivateData ou par un appareil enfant Direct3D 11 via ID3D11DeviceChild::SetPrivateData).

La couche de débogage signale les fuites de mémoire en mettant une liste de pointeurs d’interface d’objet avec leurs noms conviviaux. Le nom convivial par défaut est «< sans nom> ». Vous pouvez définir le nom convivial afin de déterminer si le pointeur d’interface objet correspondant a provoqué la fuite. Pour définir le nom convivial, utilisez la méthode SetPrivateData et le GUID de données privées (WKPDID_D3DDebugObjectName) bien connu qui se trouve dans D3Dcommon.h. Par exemple, pour donner à pContext un nom convivial Mon nom, utilisez le code suivant :


static const char c_szName[] = "My name";
hr = pContext->SetPrivateData( WKPDID_D3DDebugObjectName, sizeof( c_szName ) - 1, c_szName );

Vous pouvez utiliser WKPDID_D3DDebugObjectName pour suivre les fuites de mémoire et comprendre les caractéristiques de performances de vos applications. Ces informations sont reflétées dans la sortie de la couche de débogage liée aux fuites de mémoire (ID3D11Debug::ReportLiveDeviceObjects) et dans le suivi d’événements pour les événements Windows que nous avons ajoutés à Windows 8.

Spécifications

   
Plateforme cible Windows
En-tête dxgi.h
Bibliothèque DXGI.lib

Voir aussi

DXGI Interfaces

IDXGIObject