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 |