d3dx9: Add d3dx9tex.h.
diff --git a/include/d3dx9tex.h b/include/d3dx9tex.h
new file mode 100644
index 0000000..8e553e0
--- /dev/null
+++ b/include/d3dx9tex.h
@@ -0,0 +1,697 @@
+/*
+ * Copyright (C) 2008 Tony Wasserka
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include <d3dx9.h>
+
+#ifndef __WINE_D3DX9TEX_H
+#define __WINE_D3DX9TEX_H
+
+/**********************************************
+ ***************** Definitions ****************
+ **********************************************/
+#define D3DX_FILTER_NONE 0x00000001
+#define D3DX_FILTER_POINT 0x00000002
+#define D3DX_FILTER_LINEAR 0x00000003
+#define D3DX_FILTER_TRIANGLE 0x00000004
+#define D3DX_FILTER_BOX 0x00000005
+#define D3DX_FILTER_MIRROR_U 0x00010000
+#define D3DX_FILTER_MIRROR_V 0x00020000
+#define D3DX_FILTER_MIRROR_W 0x00040000
+#define D3DX_FILTER_MIRROR 0x00070000
+#define D3DX_FILTER_DITHER 0x00080000
+#define D3DX_FILTER_DITHER_DIFFUSION 0x00100000
+#define D3DX_FILTER_SRGB_IN 0x00200000
+#define D3DX_FILTER_SRGB_OUT 0x00400000
+#define D3DX_FILTER_SRGB 0x00600000
+
+#define D3DX_NORMALMAP_MIRROR_U 0x00010000
+#define D3DX_NORMALMAP_MIRROR_V 0x00020000
+#define D3DX_NORMALMAP_MIRROR 0x00030000
+#define D3DX_NORMALMAP_INVERTSIGN 0x00080000
+#define D3DX_NORMALMAP_COMPUTE_OCCLUSION 0x00100000
+
+#define D3DX_CHANNEL_RED 0x00000001
+#define D3DX_CHANNEL_BLUE 0x00000002
+#define D3DX_CHANNEL_GREEN 0x00000004
+#define D3DX_CHANNEL_ALPHA 0x00000008
+#define D3DX_CHANNEL_LUMINANCE 0x00000010
+
+/**********************************************
+ **************** Typedefs ****************
+ **********************************************/
+typedef enum _D3DXIMAGE_FILEFORMAT
+{
+ D3DXIFF_BMP,
+ D3DXIFF_JPG,
+ D3DXIFF_TGA,
+ D3DXIFF_PNG,
+ D3DXIFF_DDS,
+ D3DXIFF_PPM,
+ D3DXIFF_DIB,
+ D3DXIFF_FORCE_DWORD = 0x7fffffff
+} D3DXIMAGE_FILEFORMAT;
+
+typedef struct _D3DXIMAGE_INFO
+{
+ UINT Width;
+ UINT Height;
+ UINT Depth;
+ UINT MipLevels;
+ D3DFORMAT Format;
+ D3DRESOURCETYPE ResourceType;
+ D3DXIMAGE_FILEFORMAT ImageFileFormat;
+} D3DXIMAGE_INFO;
+
+/**********************************************
+ ****************** Functions *****************
+ **********************************************/
+/* Typedefs for callback functions */
+typedef VOID (WINAPI *LPD3DXFILL2D)(D3DXVECTOR4 *out, CONST D3DXVECTOR2 *texcoord, CONST D3DXVECTOR2 *texelsize, LPVOID data);
+typedef VOID (WINAPI *LPD3DXFILL3D)(D3DXVECTOR4 *out, CONST D3DXVECTOR3 *texcoord, CONST D3DXVECTOR3 *texelsize, LPVOID data);
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+/* Image Information */
+HRESULT WINAPI D3DXGetImageInfoFromFileA(LPCSTR file, D3DXIMAGE_INFO *info);
+HRESULT WINAPI D3DXGetImageInfoFromFileW(LPCWSTR file, D3DXIMAGE_INFO *info);
+#define D3DXGetImageInfoFromFile WINELIB_NAME_AW(D3DXGetImageInfoFromFile)
+
+HRESULT WINAPI D3DXGetImageInfoFromResourceA(HMODULE module, LPCSTR resource, D3DXIMAGE_INFO *info);
+HRESULT WINAPI D3DXGetImageInfoFromResourceW(HMODULE module, LPCWSTR resource, D3DXIMAGE_INFO *info);
+#define D3DXGetImageInfoFromResource WINELIB_NAME_AW(D3DXGetImageInfoFromResource)
+
+HRESULT WINAPI D3DXGetImageInfoFromFileInMemory(LPCVOID data, UINT datasize, D3DXIMAGE_INFO *info);
+
+
+/* Surface Loading/Saving */
+HRESULT WINAPI D3DXLoadSurfaceFromFileA( LPDIRECT3DSURFACE9 destsurface,
+ CONST PALETTEENTRY *destpalette,
+ CONST RECT *destrect,
+ LPCSTR srcfile,
+ CONST RECT *srcrect,
+ DWORD filter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo);
+
+HRESULT WINAPI D3DXLoadSurfaceFromFileW( LPDIRECT3DSURFACE9 destsurface,
+ CONST PALETTEENTRY *destpalette,
+ CONST RECT *destrect,
+ LPCWSTR srcfile,
+ CONST RECT *srcrect,
+ DWORD filter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo);
+#define D3DXLoadSurfaceFromFile WINELIB_NAME_AW(D3DXLoadSurfaceFromFile)
+
+HRESULT WINAPI D3DXLoadSurfaceFromResourceA( LPDIRECT3DSURFACE9 destsurface,
+ CONST PALETTEENTRY *destpalette,
+ CONST RECT *destrect,
+ HMODULE srcmodule,
+ LPCSTR resource,
+ CONST RECT *srcrect,
+ DWORD filter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo);
+
+HRESULT WINAPI D3DXLoadSurfaceFromResourceW( LPDIRECT3DSURFACE9 destsurface,
+ CONST PALETTEENTRY *destpalette,
+ CONST RECT *destrect,
+ HMODULE srcmodule,
+ LPCWSTR resource,
+ CONST RECT *srcrect,
+ DWORD filter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo);
+#define D3DXLoadSurfaceFromResource WINELIB_NAME_AW(D3DXLoadSurfaceFromResource)
+
+HRESULT WINAPI D3DXLoadSurfaceFromFileInMemory(LPDIRECT3DSURFACE9 destsurface,
+ CONST PALETTEENTRY *destpalette,
+ CONST RECT*destrect,
+ LPCVOID srcdata,
+ UINT srcdatasize,
+ CONST RECT *srcrect,
+ DWORD filter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo);
+
+HRESULT WINAPI D3DXLoadSurfaceFromSurface( LPDIRECT3DSURFACE9 destsurface,
+ CONST PALETTEENTRY *destpalette,
+ CONST RECT *destrect,
+ LPDIRECT3DSURFACE9 srcsurface,
+ CONST PALETTEENTRY *srcpalette,
+ CONST RECT *srcrect,
+ DWORD filter,
+ D3DCOLOR colorkey);
+
+HRESULT WINAPI D3DXLoadSurfaceFromMemory( LPDIRECT3DSURFACE9 destsurface,
+ CONST PALETTEENTRY *destpalette,
+ CONST RECT *destrect,
+ LPCVOID srcmemory,
+ D3DFORMAT srcformat,
+ UINT srcpitch,
+ CONST PALETTEENTRY *srcpalette,
+ CONST RECT *srcrect,
+ DWORD filter,
+ D3DCOLOR colorkey);
+
+HRESULT WINAPI D3DXSaveSurfaceToFileA( LPCSTR destfile,
+ D3DXIMAGE_FILEFORMAT destformat,
+ LPDIRECT3DSURFACE9 srcsurface,
+ CONST PALETTEENTRY *srcpalette,
+ CONST RECT *srcrect);
+
+HRESULT WINAPI D3DXSaveSurfaceToFileW( LPCWSTR destfile,
+ D3DXIMAGE_FILEFORMAT destformat,
+ LPDIRECT3DSURFACE9 srcsurface,
+ CONST PALETTEENTRY *srcpalette,
+ CONST RECT *srcrect);
+#define D3DXSaveSurfaceToFile WINELIB_NAME_AW(D3DXSaveSurfaceToFile)
+
+
+/* Volume Loading/Saving */
+HRESULT WINAPI D3DXLoadVolumeFromFileA( LPDIRECT3DVOLUME9 destvolume,
+ CONST PALETTEENTRY *destpalette,
+ CONST D3DBOX *destbox,
+ LPCSTR srcfile,
+ CONST D3DBOX *srcbox,
+ DWORD filter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo);
+
+HRESULT WINAPI D3DXLoadVolumeFromFileW( LPDIRECT3DVOLUME9 destVolume,
+ CONST PALETTEENTRY *destpalette,
+ CONST D3DBOX *destbox,
+ LPCWSTR srcfile,
+ CONST D3DBOX *srcbox,
+ DWORD filter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo);
+#define D3DXLoadVolumeFromFile WINELIB_NAME_AW(D3DXLoadVolumeFromFile)
+
+HRESULT WINAPI D3DXLoadVolumeFromResourceA( LPDIRECT3DVOLUME9 destVolume,
+ CONST PALETTEENTRY *destpalette,
+ CONST D3DBOX *destbox,
+ HMODULE srcmodule,
+ LPCSTR resource,
+ CONST D3DBOX *srcbox,
+ DWORD filter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo);
+
+HRESULT WINAPI D3DXLoadVolumeFromResourceW( LPDIRECT3DVOLUME9 destVolume,
+ CONST PALETTEENTRY *destpalette,
+ CONST D3DBOX *destbox,
+ HMODULE srcmodule,
+ LPCWSTR resource,
+ CONST D3DBOX *srcbox,
+ DWORD filter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo);
+#define D3DXLoadVolumeFromResource WINELIB_NAME_AW(D3DXLoadVolumeFromResource)
+
+HRESULT WINAPI D3DXLoadVolumeFromFileInMemory(LPDIRECT3DVOLUME9 destvolume,
+ CONST PALETTEENTRY *destpalette,
+ CONST D3DBOX *destbox,
+ LPCVOID srcdata,
+ UINT srcdatasize,
+ CONST D3DBOX *srcbox,
+ DWORD filter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo);
+
+HRESULT WINAPI D3DXLoadVolumeFromVolume( LPDIRECT3DVOLUME9 destvolume,
+ CONST PALETTEENTRY *destpalette,
+ CONST D3DBOX *destbox,
+ LPDIRECT3DVOLUME9 srcvolume,
+ CONST PALETTEENTRY *srcpalette,
+ CONST D3DBOX *srcbox,
+ DWORD filter,
+ D3DCOLOR colorkey);
+
+HRESULT WINAPI D3DXLoadVolumeFromMemory( LPDIRECT3DVOLUME9 destvolume,
+ CONST PALETTEENTRY *destpalette,
+ CONST D3DBOX *destbox,
+ LPCVOID srcmemory,
+ D3DFORMAT srcformat,
+ UINT srcrowpitch,
+ UINT srcslicepitch,
+ CONST PALETTEENTRY *srcpalette,
+ CONST D3DBOX *srcbox,
+ DWORD filter,
+ D3DCOLOR colorkey);
+
+HRESULT WINAPI D3DXSaveVolumeToFileA( LPCSTR destfile,
+ D3DXIMAGE_FILEFORMAT destformat,
+ LPDIRECT3DVOLUME9 srcvolume,
+ CONST PALETTEENTRY *srcpalette,
+ CONST D3DBOX *srcbox);
+
+HRESULT WINAPI D3DXSaveVolumeToFileW( LPCWSTR destfile,
+ D3DXIMAGE_FILEFORMAT destformat,
+ LPDIRECT3DVOLUME9 srcvolume,
+ CONST PALETTEENTRY *srcpalette,
+ CONST D3DBOX *srcbox);
+#define D3DXSaveVolumeToFile WINELIB_NAME_AW(D3DXSaveVolumeToFile)
+
+
+/* Texture, cube texture and volume texture creation */
+HRESULT WINAPI D3DXCheckTextureRequirements( LPDIRECT3DDEVICE9 device,
+ UINT *width,
+ UINT *height,
+ UINT *miplevels,
+ DWORD usage,
+ D3DFORMAT *format,
+ D3DPOOL pool);
+HRESULT WINAPI D3DXCheckCubeTextureRequirements( LPDIRECT3DDEVICE9 device,
+ UINT *size,
+ UINT *miplevels,
+ DWORD usage,
+ D3DFORMAT *format,
+ D3DPOOL pool);
+
+HRESULT WINAPI D3DXCheckVolumeTextureRequirements(LPDIRECT3DDEVICE9 device,
+ UINT *width,
+ UINT *height,
+ UINT *depth,
+ UINT *miplevels,
+ DWORD usage,
+ D3DFORMAT *format,
+ D3DPOOL pool);
+
+HRESULT WINAPI D3DXCreateTexture( LPDIRECT3DDEVICE9 device,
+ UINT width,
+ UINT height,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ LPDIRECT3DTEXTURE9 *texture);
+
+HRESULT WINAPI D3DXCreateCubeTexture( LPDIRECT3DDEVICE9 device,
+ UINT size,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ LPDIRECT3DCUBETEXTURE9 *cube);
+
+HRESULT WINAPI D3DXCreateVolumeTexture(LPDIRECT3DDEVICE9 device,
+ UINT width,
+ UINT height,
+ UINT depth,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ LPDIRECT3DVOLUMETEXTURE9 *volume);
+
+HRESULT WINAPI D3DXCreateTextureFromFileA( LPDIRECT3DDEVICE9 device,
+ LPCSTR srcfile,
+ LPDIRECT3DTEXTURE9 *texture);
+
+HRESULT WINAPI D3DXCreateTextureFromFileW( LPDIRECT3DDEVICE9 device,
+ LPCWSTR srcfile,
+ LPDIRECT3DTEXTURE9 *texture);
+#define D3DXCreateTextureFromFile WINELIB_NAME_AW(D3DXCreateTextureFromFile)
+
+HRESULT WINAPI D3DXCreateCubeTextureFromFileA( LPDIRECT3DDEVICE9 device,
+ LPCSTR srcfile,
+ LPDIRECT3DCUBETEXTURE9 *cube);
+
+HRESULT WINAPI D3DXCreateCubeTextureFromFileW( LPDIRECT3DDEVICE9 device,
+ LPCWSTR srcfile,
+ LPDIRECT3DCUBETEXTURE9 *cube);
+#define D3DXCreateCubeTextureFromFile WINELIB_NAME_AW(D3DXCreateCubeTextureFromFile)
+
+HRESULT WINAPI D3DXCreateVolumeTextureFromFileA(LPDIRECT3DDEVICE9 device,
+ LPCSTR srcfile,
+ LPDIRECT3DVOLUMETEXTURE9 *volume);
+
+HRESULT WINAPI D3DXCreateVolumeTextureFromFileW(LPDIRECT3DDEVICE9 device,
+ LPCWSTR srcfile,
+ LPDIRECT3DVOLUMETEXTURE9 *volume);
+#define D3DXCreateVolumeTextureFromFile WINELIB_NAME_AW(D3DXCreateVolumeTextureFromFile)
+
+HRESULT WINAPI D3DXCreateTextureFromResourceA( LPDIRECT3DDEVICE9 device,
+ HMODULE srcmodule,
+ LPCSTR resource,
+ LPDIRECT3DTEXTURE9 *texture);
+
+HRESULT WINAPI D3DXCreateTextureFromResourceW( LPDIRECT3DDEVICE9 device,
+ HMODULE srcmodule,
+ LPCWSTR resource,
+ LPDIRECT3DTEXTURE9 *texture);
+#define D3DXCreateTextureFromResource WINELIB_NAME_AW(D3DXCreateTextureFromResource)
+
+HRESULT WINAPI D3DXCreateCubeTextureFromResourceA( LPDIRECT3DDEVICE9 device,
+ HMODULE srcmodule,
+ LPCSTR resource,
+ LPDIRECT3DCUBETEXTURE9 *cube);
+HRESULT WINAPI D3DXCreateCubeTextureFromResourceW( LPDIRECT3DDEVICE9 device,
+ HMODULE srcmodule,
+ LPCWSTR resource,
+ LPDIRECT3DCUBETEXTURE9 *cube);
+#define D3DXCreateCubeTextureFromResource WINELIB_NAME_AW(D3DXCreateCubeTextureFromResource)
+
+HRESULT WINAPI D3DXCreateVolumeTextureFromResourceA(LPDIRECT3DDEVICE9 device,
+ HMODULE srcmodule,
+ LPCSTR resource,
+ LPDIRECT3DVOLUMETEXTURE9 *volume);
+HRESULT WINAPI D3DXCreateVolumeTextureFromResourceW(LPDIRECT3DDEVICE9 device,
+ HMODULE srcmodule,
+ LPCWSTR resource,
+ LPDIRECT3DVOLUMETEXTURE9 *volume);
+#define D3DXCreateVolumeTextureFromResource WINELIB_NAME_AW(D3DXCreateVolumeTextureFromResource)
+
+HRESULT WINAPI D3DXCreateTextureFromFileExA( LPDIRECT3DDEVICE9 device,
+ LPCSTR srcfile,
+ UINT width,
+ UINT height,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ DWORD filter,
+ DWORD mipfilter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo,
+ PALETTEENTRY *palette,
+ LPDIRECT3DTEXTURE9 *texture);
+
+HRESULT WINAPI D3DXCreateTextureFromFileExW( LPDIRECT3DDEVICE9 device,
+ LPCWSTR srcfile,
+ UINT width,
+ UINT height,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ DWORD filter,
+ DWORD mipfilter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo,
+ PALETTEENTRY *palette,
+ LPDIRECT3DTEXTURE9 *texture);
+#define D3DXCreateTextureFromFileEx WINELIB_NAME_AW(D3DXCreateTextureFromFileEx)
+
+HRESULT WINAPI D3DXCreateCubeTextureFromFileExA( LPDIRECT3DDEVICE9 device,
+ LPCSTR srcfile,
+ UINT size,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ DWORD filter,
+ DWORD mipfilter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo,
+ PALETTEENTRY *palette,
+ LPDIRECT3DCUBETEXTURE9 *cube);
+
+HRESULT WINAPI D3DXCreateCubeTextureFromFileExW( LPDIRECT3DDEVICE9 device,
+ LPCWSTR srcfile,
+ UINT size,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ DWORD filter,
+ DWORD mipfilter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo,
+ PALETTEENTRY *palette,
+ LPDIRECT3DCUBETEXTURE9 *cube);
+#define D3DXCreateCubeTextureFromFileEx WINELIB_NAME_AW(D3DXCreateCubeTextureFromFileEx)
+
+HRESULT WINAPI D3DXCreateVolumeTextureFromFileExA(LPDIRECT3DDEVICE9 device,
+ LPCSTR srcfile,
+ UINT width,
+ UINT height,
+ UINT depth,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ DWORD filter,
+ DWORD mipfilter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo,
+ PALETTEENTRY *palette,
+ LPDIRECT3DVOLUMETEXTURE9 *volume);
+
+HRESULT WINAPI D3DXCreateVolumeTextureFromFileExW(LPDIRECT3DDEVICE9 device,
+ LPCWSTR srcfile,
+ UINT width,
+ UINT height,
+ UINT depth,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ DWORD filter,
+ DWORD mipfilter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo,
+ PALETTEENTRY *palette,
+ LPDIRECT3DVOLUMETEXTURE9 *volume);
+#define D3DXCreateVolumeTextureFromFileEx WINELIB_NAME_AW(D3DXCreateVolumeTextureFromFileEx)
+
+HRESULT WINAPI D3DXCreateTextureFromResourceExA( LPDIRECT3DDEVICE9 device,
+ HMODULE srcmodule,
+ LPCSTR resource,
+ UINT width,
+ UINT height,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ DWORD filter,
+ DWORD mipfilter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo,
+ PALETTEENTRY *palette,
+ LPDIRECT3DTEXTURE9 *texture);
+
+HRESULT WINAPI D3DXCreateTextureFromResourceExW( LPDIRECT3DDEVICE9 device,
+ HMODULE srcmodule,
+ LPCWSTR resource,
+ UINT width,
+ UINT height,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ DWORD filter,
+ DWORD mipfilter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo,
+ PALETTEENTRY *palette,
+ LPDIRECT3DTEXTURE9 *texture);
+#define D3DXCreateTextureFromResourceEx WINELIB_NAME_AW(D3DXCreateTextureFromResourceEx)
+
+HRESULT WINAPI D3DXCreateCubeTextureFromResourceExA( LPDIRECT3DDEVICE9 device,
+ HMODULE srcmodule,
+ LPCSTR resource,
+ UINT size,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ DWORD filter,
+ DWORD mipfilter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo,
+ PALETTEENTRY *palette,
+ LPDIRECT3DCUBETEXTURE9 *cube);
+
+HRESULT WINAPI D3DXCreateCubeTextureFromResourceExW( LPDIRECT3DDEVICE9 device,
+ HMODULE srcmodule,
+ LPCWSTR resource,
+ UINT size,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ DWORD filter,
+ DWORD mipfilter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo,
+ PALETTEENTRY *palette,
+ LPDIRECT3DCUBETEXTURE9 *cube);
+#define D3DXCreateCubeTextureFromResourceEx WINELIB_NAME_AW(D3DXCreateCubeTextureFromResourceEx)
+
+HRESULT WINAPI D3DXCreateVolumeTextureFromResourceExA(LPDIRECT3DDEVICE9 device,
+ HMODULE srcmodule,
+ LPCSTR resource,
+ UINT width,
+ UINT height,
+ UINT depth,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ DWORD filter,
+ DWORD mipfilter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo,
+ PALETTEENTRY *palette,
+ LPDIRECT3DVOLUMETEXTURE9 *volume);
+
+HRESULT WINAPI D3DXCreateVolumeTextureFromResourceExW(LPDIRECT3DDEVICE9 device,
+ HMODULE srcmodule,
+ LPCWSTR resource,
+ UINT width,
+ UINT height,
+ UINT depth,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ DWORD filter,
+ DWORD mipfilter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo,
+ PALETTEENTRY *palette,
+ LPDIRECT3DVOLUMETEXTURE9 *volume);
+#define D3DXCreateVolumeTextureFromResourceEx WINELIB_NAME_AW(D3DXCreateVolumeTextureFromResourceEx)
+
+HRESULT WINAPI D3DXCreateTextureFromFileInMemory( LPDIRECT3DDEVICE9 device,
+ LPCVOID srcdata,
+ UINT srcdatasize,
+ LPDIRECT3DTEXTURE9* texture);
+
+HRESULT WINAPI D3DXCreateCubeTextureFromFileInMemory( LPDIRECT3DDEVICE9 device,
+ LPCVOID srcdata,
+ UINT srcdatasize,
+ LPDIRECT3DCUBETEXTURE9* cube);
+
+HRESULT WINAPI D3DXCreateVolumeTextureFromFileInMemory(LPDIRECT3DDEVICE9 device,
+ LPCVOID srcdata,
+ UINT srcdatasize,
+ LPDIRECT3DVOLUMETEXTURE9 *volume);
+
+HRESULT WINAPI D3DXCreateTextureFromFileInMemoryEx( LPDIRECT3DDEVICE9 device,
+ LPCVOID srcdata,
+ UINT srcdatasize,
+ UINT width,
+ UINT height,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ DWORD filter,
+ DWORD mipfilter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo,
+ PALETTEENTRY *palette,
+ LPDIRECT3DTEXTURE9 *texture);
+
+HRESULT WINAPI D3DXCreateCubeTextureFromFileInMemoryEx( LPDIRECT3DDEVICE9 device,
+ LPCVOID srcdata,
+ UINT srcdatasize,
+ UINT size,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ DWORD filter,
+ DWORD mipfilter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo,
+ PALETTEENTRY *palette,
+ LPDIRECT3DCUBETEXTURE9 *cube);
+
+HRESULT WINAPI D3DXCreateVolumeTextureFromFileInMemoryEx(LPDIRECT3DDEVICE9 device,
+ LPCVOID srcdata,
+ UINT srcdatasize,
+ UINT width,
+ UINT height,
+ UINT depth,
+ UINT miplevels,
+ DWORD usage,
+ D3DFORMAT format,
+ D3DPOOL pool,
+ DWORD filter,
+ DWORD mipfilter,
+ D3DCOLOR colorkey,
+ D3DXIMAGE_INFO *srcinfo,
+ PALETTEENTRY *palette,
+ LPDIRECT3DVOLUMETEXTURE9 *volume);
+
+HRESULT WINAPI D3DXSaveTextureToFileA(LPCSTR destfile,
+ D3DXIMAGE_FILEFORMAT destformat,
+ LPDIRECT3DBASETEXTURE9 srctexture,
+ CONST PALETTEENTRY *srcpalette);
+HRESULT WINAPI D3DXSaveTextureToFileW(LPCWSTR destfile,
+ D3DXIMAGE_FILEFORMAT destformat,
+ LPDIRECT3DBASETEXTURE9 srctexture,
+ CONST PALETTEENTRY *srcpalette);
+#define D3DXSaveTextureToFile WINELIB_NAME_AW(D3DXSaveTextureToFile)
+
+
+/* Other functions */
+HRESULT WINAPI D3DXFilterTexture( LPDIRECT3DBASETEXTURE9 texture,
+ CONST PALETTEENTRY *palette,
+ UINT srclevel,
+ DWORD filter);
+#define D3DXFilterCubeTexture D3DXFilterTexture
+#define D3DXFilterVolumeTexture D3DXFilterTexture
+
+HRESULT WINAPI D3DXFillTexture( LPDIRECT3DTEXTURE9 texture,
+ LPD3DXFILL2D function,
+ LPVOID data);
+
+HRESULT WINAPI D3DXFillCubeTexture( LPDIRECT3DCUBETEXTURE9 cube,
+ LPD3DXFILL3D function,
+ LPVOID data);
+
+HRESULT WINAPI D3DXFillVolumeTexture( LPDIRECT3DVOLUMETEXTURE9 volume,
+ LPD3DXFILL3D function,
+ LPVOID data);
+
+HRESULT WINAPI D3DXFillTextureTX( LPDIRECT3DTEXTURE9 texture,
+ CONST DWORD *function,
+ CONST D3DXVECTOR4 *constants,
+ UINT numconstants);
+
+HRESULT WINAPI D3DXFillCubeTextureTX( LPDIRECT3DCUBETEXTURE9 cube,
+ CONST DWORD *function,
+ CONST D3DXVECTOR4 *constants,
+ UINT numconstants);
+
+HRESULT WINAPI D3DXFillVolumeTextureTX(LPDIRECT3DVOLUMETEXTURE9 volume,
+ CONST DWORD *function,
+ CONST D3DXVECTOR4 *constants,
+ UINT numconstants);
+
+HRESULT WINAPI D3DXComputeNormalMap( LPDIRECT3DTEXTURE9 texture,
+ LPDIRECT3DTEXTURE9 srctexture,
+ CONST PALETTEENTRY *srcpalette,
+ DWORD flags,
+ DWORD channel,
+ FLOAT amplitude);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __WINE_D3DX9TEX_H */