Поделиться через


Метод IDXGIObject::SetPrivateData (dxgi.h)

Задает определяемые приложением данные для объекта и связывает эти данные с ИДЕНТИФИКАТОРом GUID.

Синтаксис

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

Параметры

[in] Name

Тип: REFGUID

Идентификатор GUID, идентифицирующий данные. Используйте этот GUID в вызове GetPrivateData для получения данных.

DataSize

Тип: UINT

Размер данных объекта.

[in] pData

Тип: const void*

Указатель на данные объекта.

Возвращаемое значение

Тип: HRESULT

Возвращает одно из значений DXGI_ERROR .

Комментарии

SetPrivateData создает копию указанных данных и сохраняет их вместе с объектом .

Частные данные, хранящиеся в объекте SetPrivateData , занимают то же место, что и частные данные, которые хранятся связанными объектами Direct3D (например, устройством Microsoft Direct3D 11 через ID3D11Device::SetPrivateData или дочерним устройством Direct3D 11 через ID3D11DeviceChild::SetPrivateData).

Уровень отладки сообщает об утечках памяти, выводя список указателей интерфейса объекта вместе с понятными именами. По умолчанию используется понятное имя unnamed<>. Можно задать понятное имя, чтобы определить, вызвал ли утечку соответствующий указатель интерфейса объекта. Чтобы задать понятное имя, используйте метод SetPrivateData и известный GUID частных данных (WKPDID_D3DDebugObjectName), который находится в D3Dcommon.h. Например, чтобы присвоить pContext понятное имя My name, используйте следующий код:


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

Вы можете использовать WKPDID_D3DDebugObjectName для отслеживания утечек памяти и понимания характеристик производительности приложений. Эти сведения отражаются в выходных данных уровня отладки , связанного с утечками памяти (ID3D11Debug::ReportLiveDeviceObjects), а также в трассировке событий Windows, добавленных в Windows 8.

Требования

   
Целевая платформа Windows
Header dxgi.h
Библиотека DXGI.lib

См. также раздел

Интерфейсы DXGI

IDXGIObject