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 |