D3D12CreateVersionedRootSignatureDeserializer-Funktion (d3d12.h)

Generiert eine Schnittstelle, die die deserialisierte Datenstruktur über GetUnconvertedRootSignatureDesc zurückgeben kann.

Syntax

HRESULT D3D12CreateVersionedRootSignatureDeserializer(
  [in]  LPCVOID pSrcData,
  [in]  SIZE_T  SrcDataSizeInBytes,
  [in]  REFIID  pRootSignatureDeserializerInterface,
  [out] void    **ppRootSignatureDeserializer
);

Parameter

[in] pSrcData

Typ: LPCVOID

Ein Zeiger auf die Quelldaten für die serialisierte Stammsignatur.

[in] SrcDataSizeInBytes

Typ: SIZE_T

Die Größe des Speicherblocks in Bytes, auf den pSrcData verweist.

[in] pRootSignatureDeserializerInterface

Typ: REFIID

Der globally unique Identifier (GUID) für die Deserialisierungsschnittstelle der Stammsignatur. Siehe Bemerkungen.

[out] ppRootSignatureDeserializer

Typ: void**

Ein Zeiger auf einen Speicherblock, der einen Zeiger auf den Stammsignaturenenerialisierer empfängt.

Rückgabewert

Typ: HRESULT

Gibt bei erfolgreicher Ausführung S_OK zurück. Gibt andernfalls einen der Direct3D 12-Rückgabecodes zurück.

Hinweise

Wenn eine Anwendung bereits über eine serialisierte Stammsignatur verfügt oder über einen kompilierten Shader verfügt, der eine Stammsignatur enthält und die Layoutdefinition bestimmen möchte, kann sie D3D12CreateVersionedRootSignatureDeserializer aufrufen, um eine ID3D12VersionedRootSignatureDeserializer-Schnittstelle zu generieren. ID3D12VersionedRootSignatureDeserializer::GetRootSignatureDescAtVersion kann die deserialisierte Datenstruktur (D3D12_ROOT_SIGNATURE_DESC1) zurückgeben. ID3D12VersionedRootSignatureDeserializer besitzt nur die Lebensdauer des Arbeitsspeichers für die deserialisierte Datenstruktur.

Die REFIID oder GUID der Schnittstelle zum Stammsignaturenenerialisierer kann mithilfe des Makros __uuidof() abgerufen werden. Beispielsweise ruft __uuidof(ID3D12VersionedRootSignatureDeserializer) die GUID der Schnittstelle zu einem Stammsignaturendeserializer ab.

Die Funktionssignatur PFN_D3D12_CREATE_ROOT_SIGNATURE_DESERIALIZER wird als Typedef bereitgestellt, sodass Sie dynamische Verknüpfungstechniken (GetProcAddress) anstelle von statisch verknüpfen können.

Diese Funktion ersetzt D3D12CreateRootSignatureDeserializer.

Anforderungen

   
Zielplattform Windows
Kopfzeile d3d12.h
Bibliothek D3d12.lib
DLL D3d12.dll

Weitere Informationen

Kernfunktionen

Erstellen einer Stammsignatur

Stammsignatur, Version 1.1