Artifact 06a52066351ca0ebffaa0c2ba12473ae23843bfc
- File
src/win32/directx/d3dx10tex.d
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
The problem was __gshared. Replacing it with TLS fixed the issue. Remaining problem is that "hack.d"'s CloseHandle hack is not working anymore.
(user: kinaba) [annotate]
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
/***********************************************************************\ * d3dx10tex.d * * * * Windows API header module * * * * Placed into public domain * \***********************************************************************/ module win32.directx.d3dx10tex; private import win32.windows; private import win32.directx.d3d10; private import win32.directx.d3dx10core; enum D3DX10_FILTER_FLAG { D3DX10_FILTER_NONE = 0x000001, D3DX10_FILTER_POINT = 0x000002, D3DX10_FILTER_LINEAR = 0x000003, D3DX10_FILTER_TRIANGLE = 0x000004, D3DX10_FILTER_BOX = 0x000005, D3DX10_FILTER_MIRROR_U = 0x010000, D3DX10_FILTER_MIRROR_V = 0x020000, D3DX10_FILTER_MIRROR_W = 0x040000, D3DX10_FILTER_MIRROR = 0x070000, D3DX10_FILTER_DITHER = 0x080000, D3DX10_FILTER_DITHER_DIFFUSION = 0x100000, D3DX10_FILTER_SRGB_IN = 0x200000, D3DX10_FILTER_SRGB_OUT = 0x400000, D3DX10_FILTER_SRGB = 0x600000 } enum D3DX10_NORMALMAP_FLAG { D3DX10_NORMALMAP_MIRROR_U = 0x010000, D3DX10_NORMALMAP_MIRROR_V = 0x020000, D3DX10_NORMALMAP_MIRROR = 0x030000, D3DX10_NORMALMAP_INVERTSIGN = 0x080000, D3DX10_NORMALMAP_COMPUTE_OCCLUSION = 0x100000 } enum D3DX10_CHANNEL_FLAG { D3DX10_CHANNEL_RED = 1, D3DX10_CHANNEL_BLUE = 2, D3DX10_CHANNEL_GREEN = 4, D3DX10_CHANNEL_ALPHA = 8, D3DX10_CHANNEL_LUMINANCE = 16 } enum D3DX10_IMAGE_FILE_FORMAT { D3DX10_IFF_BMP = 0, D3DX10_IFF_JPG = 1, D3DX10_IFF_PNG = 3, D3DX10_IFF_DDS = 4, D3DX10_IFF_TIFF = 10, D3DX10_IFF_GIF = 11, D3DX10_IFF_WMP = 12, D3DX10_IFF_FORCE_DWORD = 0x7fffffff } enum D3DX10_SAVE_TEXTURE_FLAG { D3DX10_STF_USEINPUTBLOB = 1 } struct D3DX10_IMAGE_INFO { UINT Width; UINT Height; UINT Depth; UINT ArraySize; UINT MipLevels; UINT MiscFlags; DXGI_FORMAT Format; D3D10_RESOURCE_DIMENSION ResourceDimension; D3DX10_IMAGE_FILE_FORMAT ImageFileFormat; } struct D3DX10_IMAGE_LOAD_INFO { UINT Width; UINT Height; UINT Depth; UINT FirstMipLevel; UINT MipLevels; D3D10_USAGE Usage; UINT BindFlags; UINT CpuAccessFlags; UINT MiscFlags; DXGI_FORMAT Format; UINT Filter; UINT MipFilter; D3DX10_IMAGE_INFO* pSrcInfo; } HRESULT D3DX10GetImageInfoFromFileA(LPCSTR pSrcFile, ID3DX10ThreadPump pPump, D3DX10_IMAGE_INFO* pSrcInfo, HRESULT* pHResult); HRESULT D3DX10GetImageInfoFromFileW(LPCWSTR pSrcFile, ID3DX10ThreadPump pPump, D3DX10_IMAGE_INFO* pSrcInfo, HRESULT* pHResult); HRESULT D3DX10GetImageInfoFromResourceA(HMODULE hSrcModule, LPCSTR pSrcResource, ID3DX10ThreadPump pPump, D3DX10_IMAGE_INFO* pSrcInfo, HRESULT* pHResult); HRESULT D3DX10GetImageInfoFromResourceW(HMODULE hSrcModule, LPCWSTR pSrcResource, ID3DX10ThreadPump pPump, D3DX10_IMAGE_INFO* pSrcInfo, HRESULT* pHResult); HRESULT D3DX10GetImageInfoFromMemory(LPCVOID pSrcData, SIZE_T SrcDataSize, ID3DX10ThreadPump pPump, D3DX10_IMAGE_INFO* pSrcInfo, HRESULT* pHResult); HRESULT D3DX10CreateShaderResourceViewFromFileA(ID3D10Device pDevice, LPCSTR pSrcFile, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, ID3DX10ThreadPump pPump, ID3D10ShaderResourceView* ppShaderResourceView, HRESULT* pHResult); HRESULT D3DX10CreateShaderResourceViewFromFileW(ID3D10Device pDevice, LPCWSTR pSrcFile, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, ID3DX10ThreadPump pPump, ID3D10ShaderResourceView* ppShaderResourceView, HRESULT* pHResult); HRESULT D3DX10CreateTextureFromFileA(ID3D10Device pDevice, LPCSTR pSrcFile, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, ID3DX10ThreadPump pPump, ID3D10Resource* ppTexture, HRESULT* pHResult); HRESULT D3DX10CreateTextureFromFileW(ID3D10Device pDevice, LPCWSTR pSrcFile, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, ID3DX10ThreadPump pPump, ID3D10Resource* ppTexture, HRESULT* pHResult); HRESULT D3DX10CreateShaderResourceViewFromResourceA(ID3D10Device pDevice, HMODULE hSrcModule, LPCSTR pSrcResource, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, ID3DX10ThreadPump pPump, ID3D10ShaderResourceView* ppShaderResourceView, HRESULT* pHResult); HRESULT D3DX10CreateShaderResourceViewFromResourceW(ID3D10Device pDevice, HMODULE hSrcModule, LPCWSTR pSrcResource, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, ID3DX10ThreadPump pPump, ID3D10ShaderResourceView* ppShaderResourceView, HRESULT* pHResult); HRESULT D3DX10CreateTextureFromResourceA(ID3D10Device pDevice, HMODULE hSrcModule, LPCSTR pSrcResource, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, ID3DX10ThreadPump pPump, ID3D10Resource* ppTexture, HRESULT* pHResult); HRESULT D3DX10CreateTextureFromResourceW(ID3D10Device pDevice, HMODULE hSrcModule, LPCWSTR pSrcResource, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, ID3DX10ThreadPump pPump, ID3D10Resource* ppTexture, HRESULT* pHResult); HRESULT D3DX10CreateShaderResourceViewFromMemory(ID3D10Device pDevice, LPCVOID pSrcData, SIZE_T SrcDataSize, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, ID3DX10ThreadPump pPump, ID3D10ShaderResourceView* ppShaderResourceView, HRESULT* pHResult); HRESULT D3DX10CreateTextureFromMemory(ID3D10Device pDevice, LPCVOID pSrcData, SIZE_T SrcDataSize, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, ID3DX10ThreadPump pPump, ID3D10Resource* ppTexture, HRESULT* pHResult); 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; } HRESULT D3DX10LoadTextureFromTexture(ID3D10Resource pSrcTexture, D3DX10_TEXTURE_LOAD_INFO* pLoadInfo, ID3D10Resource pDstTexture); HRESULT D3DX10FilterTexture(ID3D10Resource pTexture, UINT SrcLevel, UINT MipFilter); HRESULT D3DX10SaveTextureToFileA(ID3D10Resource pSrcTexture, D3DX10_IMAGE_FILE_FORMAT DestFormat, LPCSTR pDestFile); HRESULT D3DX10SaveTextureToFileW(ID3D10Resource pSrcTexture, D3DX10_IMAGE_FILE_FORMAT DestFormat, LPCWSTR pDestFile); HRESULT D3DX10SaveTextureToMemory(ID3D10Resource pSrcTexture, D3DX10_IMAGE_FILE_FORMAT DestFormat, ID3D10Blob* ppDestBuf, UINT Flags); HRESULT D3DX10ComputeNormalMap(ID3D10Texture2D pSrcTexture, UINT Flags, UINT Channel, FLOAT Amplitude, ID3D10Texture2D pDestTexture); HRESULT D3DX10SHProjectCubeMap(UINT Order, ID3D10Texture2D pCubeMap, FLOAT* pROut, FLOAT* pGOut, FLOAT* pBOut); version(Unicode) { alias D3DX10GetImageInfoFromFileW D3DX10GetImageInfoFromFile; alias D3DX10GetImageInfoFromResourceW D3DX10GetImageInfoFromResource; alias D3DX10CreateShaderResourceViewFromFileW D3DX10CreateShaderResourceViewFromFile; alias D3DX10CreateTextureFromFileW D3DX10CreateTextureFromFile; alias D3DX10CreateShaderResourceViewFromResourceW D3DX10CreateShaderResourceViewFromResource; alias D3DX10CreateTextureFromResourceW D3DX10CreateTextureFromResource; alias D3DX10SaveTextureToFileW D3DX10SaveTextureToFile; } else { alias D3DX10GetImageInfoFromFileA D3DX10GetImageInfoFromFile; alias D3DX10GetImageInfoFromResourceA D3DX10GetImageInfoFromResource; alias D3DX10CreateShaderResourceViewFromFileA D3DX10CreateShaderResourceViewFromFile; alias D3DX10CreateTextureFromFileA D3DX10CreateTextureFromFile; alias D3DX10CreateShaderResourceViewFromResourceA D3DX10CreateShaderResourceViewFromResource; alias D3DX10CreateTextureFromResourceA D3DX10CreateTextureFromResource; alias D3DX10SaveTextureToFileA D3DX10SaveTextureToFile; }