From cb79ad8217901782f404ac60b18869a166333dc9 Mon Sep 17 00:00:00 2001 From: Connor McAdams Date: Wed, 6 Nov 2019 10:06:30 +0100 Subject: [PATCH] d3dx10: Add D3DX10LoadTextureFromTexture() stub. Signed-off-by: Connor McAdams Signed-off-by: Matteo Bruni Signed-off-by: Alexandre Julliard --- dlls/d3dx10_43/d3dx10_43.spec | 2 +- dlls/d3dx10_43/d3dx10_43_main.c | 8 ++++++++ include/d3dx10tex.h | 34 +++++++++++++++++++++++++++++++-- 3 files changed, 41 insertions(+), 3 deletions(-) diff --git a/dlls/d3dx10_43/d3dx10_43.spec b/dlls/d3dx10_43/d3dx10_43.spec index cb491241d4b..36c7633d8e0 100644 --- a/dlls/d3dx10_43/d3dx10_43.spec +++ b/dlls/d3dx10_43/d3dx10_43.spec @@ -54,7 +54,7 @@ @ stdcall D3DX10GetImageInfoFromMemory(ptr long ptr ptr ptr) @ stub D3DX10GetImageInfoFromResourceA(long str ptr ptr ptr) @ stub D3DX10GetImageInfoFromResourceW(long wstr ptr ptr ptr) -@ stub D3DX10LoadTextureFromTexture(ptr ptr ptr) +@ stdcall D3DX10LoadTextureFromTexture(ptr ptr ptr) @ stub D3DX10PreprocessShaderFromFileA(str ptr ptr ptr ptr ptr) @ stub D3DX10PreprocessShaderFromFileW(wstr ptr ptr ptr ptr ptr) @ stdcall D3DX10PreprocessShaderFromMemory(ptr long str ptr ptr ptr ptr ptr ptr) diff --git a/dlls/d3dx10_43/d3dx10_43_main.c b/dlls/d3dx10_43/d3dx10_43_main.c index b0295cc093f..45247756b8e 100644 --- a/dlls/d3dx10_43/d3dx10_43_main.c +++ b/dlls/d3dx10_43/d3dx10_43_main.c @@ -241,3 +241,11 @@ D3DX_CPU_OPTIMIZATION WINAPI D3DXCpuOptimizations(BOOL enable) return D3DX_NOT_OPTIMIZED; } + +HRESULT WINAPI D3DX10LoadTextureFromTexture(ID3D10Resource *src_texture, D3DX10_TEXTURE_LOAD_INFO *load_info, + ID3D10Resource *dst_texture) +{ + FIXME("src_texture %p, load_info %p, dst_texture %p stub!\n", src_texture, load_info, dst_texture); + + return E_NOTIMPL; +} diff --git a/include/d3dx10tex.h b/include/d3dx10tex.h index 25ad490949a..98cb82c0c93 100644 --- a/include/d3dx10tex.h +++ b/include/d3dx10tex.h @@ -103,17 +103,47 @@ typedef struct D3DX10_IMAGE_LOAD_INFO #endif } D3DX10_IMAGE_LOAD_INFO; +typedef struct _D3DX10_TEXTURE_LOAD_INFO +{ + D3D10_BOX *pSrcBox; + D3D10_BOX *pDstBox; + UINT SrcFirstMip; + UINT DstFirstMip; + UINT NumMips; + UINT SrcFirstElement; + UINT DstFirstElement; + UINT NumElements; + UINT Filter; + UINT MipFilter; + +#ifdef __cplusplus + _D3DX10_TEXTURE_LOAD_INFO() + { + pSrcBox = NULL; + pDstBox = NULL; + SrcFirstMip = 0; + DstFirstMip = 0; + NumMips = D3DX10_DEFAULT; + SrcFirstElement = 0; + DstFirstElement = 0; + NumElements = D3DX10_DEFAULT; + Filter = D3DX10_DEFAULT; + MipFilter = D3DX10_DEFAULT; + } +#endif +} D3DX10_TEXTURE_LOAD_INFO; + #ifdef __cplusplus extern "C" { #endif HRESULT WINAPI D3DX10CreateTextureFromMemory(ID3D10Device *device, const void *src_data, SIZE_T src_data_size, D3DX10_IMAGE_LOAD_INFO *loadinfo, ID3DX10ThreadPump *pump, ID3D10Resource **texture, HRESULT *hresult); - HRESULT WINAPI D3DX10FilterTexture(ID3D10Resource *texture, UINT src_level, UINT filter); - HRESULT WINAPI D3DX10GetImageInfoFromMemory(const void *src_data, SIZE_T src_data_size, ID3DX10ThreadPump *pump, D3DX10_IMAGE_INFO *img_info, HRESULT *hresult); +HRESULT WINAPI D3DX10LoadTextureFromTexture(ID3D10Resource *src_texture, D3DX10_TEXTURE_LOAD_INFO *load_info, + ID3D10Resource *dst_texture); #ifdef __cplusplus }