Module: vkd3d Branch: master Commit: 9ce98f9be5b9d9db48b37d36fa8ba182e2a4005a URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/9ce98f9be5b9d9db48b37d36fa8ba1...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Tue Feb 21 16:08:50 2023 +0100
vkd3d-utils: Implement D3DGetOutputSignatureBlob().
---
include/vkd3d_d3dcompiler.h | 1 + include/vkd3d_utils.h | 2 ++ libs/vkd3d-utils/vkd3d_utils.map | 1 + libs/vkd3d-utils/vkd3d_utils_main.c | 7 +++++++ 4 files changed, 11 insertions(+)
diff --git a/include/vkd3d_d3dcompiler.h b/include/vkd3d_d3dcompiler.h index 50d3c0e5..794f58a9 100644 --- a/include/vkd3d_d3dcompiler.h +++ b/include/vkd3d_d3dcompiler.h @@ -92,6 +92,7 @@ HRESULT WINAPI D3DGetBlobPart(const void *data, SIZE_T data_size, D3D_BLOB_PART HRESULT WINAPI D3DGetDebugInfo(const void *data, SIZE_T data_size, ID3DBlob **blob); HRESULT WINAPI D3DGetInputAndOutputSignatureBlob(const void *data, SIZE_T data_size, ID3DBlob **blob); HRESULT WINAPI D3DGetInputSignatureBlob(const void *data, SIZE_T data_size, ID3DBlob **blob); +HRESULT WINAPI D3DGetOutputSignatureBlob(const void *data, SIZE_T data_size, ID3DBlob **blob); HRESULT WINAPI D3DPreprocess(const void *data, SIZE_T size, const char *filename, const D3D_SHADER_MACRO *macros, ID3DInclude *include, ID3DBlob **shader, ID3DBlob **error_messages);
diff --git a/include/vkd3d_utils.h b/include/vkd3d_utils.h index 3678fee9..297750b1 100644 --- a/include/vkd3d_utils.h +++ b/include/vkd3d_utils.h @@ -113,6 +113,8 @@ VKD3D_UTILS_API HRESULT WINAPI D3DGetDebugInfo(const void *data, SIZE_T data_siz VKD3D_UTILS_API HRESULT WINAPI D3DGetInputAndOutputSignatureBlob(const void *data, SIZE_T data_size, ID3DBlob **blob); /** \since 1.10 */ VKD3D_UTILS_API HRESULT WINAPI D3DGetInputSignatureBlob(const void *data, SIZE_T data_size, ID3DBlob **blob); +/** \since 1.10 */ +VKD3D_UTILS_API HRESULT WINAPI D3DGetOutputSignatureBlob(const void *data, SIZE_T data_size, ID3DBlob **blob);
#ifdef __cplusplus } diff --git a/libs/vkd3d-utils/vkd3d_utils.map b/libs/vkd3d-utils/vkd3d_utils.map index e1650618..0001b7da 100644 --- a/libs/vkd3d-utils/vkd3d_utils.map +++ b/libs/vkd3d-utils/vkd3d_utils.map @@ -15,6 +15,7 @@ global: D3DGetDebugInfo; D3DGetInputAndOutputSignatureBlob; D3DGetInputSignatureBlob; + D3DGetOutputSignatureBlob; D3DPreprocess; vkd3d_create_event; vkd3d_destroy_event; diff --git a/libs/vkd3d-utils/vkd3d_utils_main.c b/libs/vkd3d-utils/vkd3d_utils_main.c index 46d40a26..45b1a0ce 100644 --- a/libs/vkd3d-utils/vkd3d_utils_main.c +++ b/libs/vkd3d-utils/vkd3d_utils_main.c @@ -780,6 +780,13 @@ HRESULT WINAPI D3DGetInputSignatureBlob(const void *data, SIZE_T data_size, ID3D return get_blob_part(data, data_size, D3D_BLOB_INPUT_SIGNATURE_BLOB, 0, blob); }
+HRESULT WINAPI D3DGetOutputSignatureBlob(const void *data, SIZE_T data_size, ID3DBlob **blob) +{ + TRACE("data %p, data_size %lu, blob %p.\n", data, data_size, blob); + + return get_blob_part(data, data_size, D3D_BLOB_OUTPUT_SIGNATURE_BLOB, 0, blob); +} + void vkd3d_utils_set_log_callback(PFN_vkd3d_log callback) { vkd3d_set_log_callback(callback);