次の方法で共有


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 メソッドと、D3Dcommon.h にある WKPDID_D3DDebugObjectName GUID を使用します。 たとえば、pContext に [マイ名] というフレンドリ名を付ける場合は、次のコードを使用します。


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

要件

要件
対象プラットフォーム Windows
ヘッダー d3d11.h
Library D3D11.lib

こちらもご覧ください

ID3D11DeviceChild