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


Метод ID3D11DeviceChild::SetPrivateData (d3d11.h)

Задайте данные, определяемые приложением, дочерним устройством и свяжите эти данные с идентификатором GUID, определяемым приложением.

Синтаксис

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

Параметры

[in] guid

Тип: REFGUID

Guid, связанный с данными.

[in] DataSize

Тип: UINT

Размер данных.

[in, optional] pData

Тип: const void*

Указатель на данные, которые будут храниться с этим дочерним устройством. Если pData имеет значение NULL, DataSize также должен иметь значение 0, а все данные, ранее связанные с указанным GUID, будут уничтожены.

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

Тип: HRESULT

Этот метод возвращает один из следующих кодов возврата Direct3D 11.

Комментарии

Данные, хранящиеся в дочернем устройстве с помощью этого метода, можно получить с помощью ID3D11DeviceChild::GetPrivateData.

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


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

Требования

Требование Значение
Целевая платформа Windows
Header d3d11.h
Библиотека D3D11.lib

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

ID3D11DeviceChild