ReactOS  0.4.13-dev-259-g5ca9c9c
d3dx9effect.h File Reference
#include <d3dx9.h>
Include dependency graph for d3dx9effect.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _D3DXEFFECT_DESC
 
struct  _D3DXPARAMETER_DESC
 
struct  _D3DXTECHNIQUE_DESC
 
struct  _D3DXPASS_DESC
 
struct  _D3DXFUNCTION_DESC
 

Macros

#define D3DXFX_DONOTSAVESTATE   (1 << 0)
 
#define D3DXFX_DONOTSAVESHADERSTATE   (1 << 1)
 
#define D3DXFX_DONOTSAVESAMPLERSTATE   (1 << 2)
 
#define D3DXFX_NOT_CLONEABLE   (1 << 11)
 
#define D3DXFX_LARGEADDRESSAWARE   (1 << 17)
 
#define D3DX_PARAMETER_SHARED   1
 
#define D3DX_PARAMETER_LITERAL   2
 
#define D3DX_PARAMETER_ANNOTATION   4
 
#define INTERFACE   ID3DXEffectPool
 
#define INTERFACE   ID3DXBaseEffect
 
#define INTERFACE   ID3DXEffectStateManager
 
#define INTERFACE   ID3DXEffect
 
#define INTERFACE   ID3DXEffectCompiler
 
#define D3DXCreateEffectFromFileEx   WINELIB_NAME_AW(D3DXCreateEffectFromFileEx)
 
#define D3DXCreateEffectFromFile   WINELIB_NAME_AW(D3DXCreateEffectFromFile)
 
#define D3DXCreateEffectFromResourceEx   WINELIB_NAME_AW(D3DXCreateEffectFromResourceEx)
 
#define D3DXCreateEffectFromResource   WINELIB_NAME_AW(D3DXCreateEffectFromResource)
 
#define D3DXCreateEffectCompilerFromFile   WINELIB_NAME_AW(D3DXCreateEffectCompilerFromFile)
 
#define D3DXCreateEffectCompilerFromResource   WINELIB_NAME_AW(D3DXCreateEffectCompilerFromResource)
 

Typedefs

typedef struct _D3DXEFFECT_DESC D3DXEFFECT_DESC
 
typedef struct _D3DXPARAMETER_DESC D3DXPARAMETER_DESC
 
typedef struct _D3DXTECHNIQUE_DESC D3DXTECHNIQUE_DESC
 
typedef struct _D3DXPASS_DESC D3DXPASS_DESC
 
typedef struct _D3DXFUNCTION_DESC D3DXFUNCTION_DESC
 
typedef struct ID3DXEffectPool * LPD3DXEFFECTPOOL
 
typedef struct ID3DXBaseEffect * LPD3DXBASEEFFECT
 
typedef struct ID3DXEffectStateManager * LPD3DXEFFECTSTATEMANAGER
 
typedef struct ID3DXEffect * LPD3DXEFFECT
 
typedef struct ID3DXEffectCompiler * LPD3DXEFFECTCOMPILER
 

Functions

 DEFINE_GUID (IID_ID3DXEffectPool, 0x9537ab04, 0x3250, 0x412e, 0x82, 0x13, 0xfc, 0xd2, 0xf8, 0x67, 0x79, 0x33)
 
 DECLARE_INTERFACE_ (ID3DXEffectPool, IUnknown)
 
 DEFINE_GUID (IID_ID3DXBaseEffect, 0x17c18ac, 0x103f, 0x4417, 0x8c, 0x51, 0x6b, 0xf6, 0xef, 0x1e, 0x56, 0xbe)
 
 DECLARE_INTERFACE_ (ID3DXBaseEffect, IUnknown)
 
 DEFINE_GUID (IID_ID3DXEffectStateManager, 0x79aab587, 0x6dbc, 0x4fa7, 0x82, 0xde, 0x37, 0xfa, 0x17, 0x81, 0xc5, 0xce)
 
 DECLARE_INTERFACE_ (ID3DXEffectStateManager, IUnknown)
 
 DEFINE_GUID (IID_ID3DXEffect, 0xf6ceb4b3, 0x4e4c, 0x40dd, 0xb8, 0x83, 0x8d, 0x8d, 0xe5, 0xea, 0xc, 0xd5)
 
 DECLARE_INTERFACE_ (ID3DXEffect, ID3DXBaseEffect)
 
 DEFINE_GUID (IID_ID3DXEffectCompiler, 0x51b8a949, 0x1a31, 0x47e6, 0xbe, 0xa0, 0x4b, 0x30, 0xdb, 0x53, 0xf1, 0xe0)
 
 DECLARE_INTERFACE_ (ID3DXEffectCompiler, ID3DXBaseEffect)
 
HRESULT WINAPI D3DXCreateEffectPool (ID3DXEffectPool **pool)
 
HRESULT WINAPI D3DXCreateEffect (struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatalen, const D3DXMACRO *defines, struct ID3DXInclude *include, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors)
 
HRESULT WINAPI D3DXCreateEffectEx (struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatalen, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors)
 
HRESULT WINAPI D3DXCreateEffectCompiler (const char *srcdata, UINT srcdatalen, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXEffectCompiler **compiler, ID3DXBuffer **parse_errors)
 
HRESULT WINAPI D3DXCreateEffectFromFileExA (struct IDirect3DDevice9 *device, const char *srcfile, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors)
 
HRESULT WINAPI D3DXCreateEffectFromFileExW (struct IDirect3DDevice9 *device, const WCHAR *srcfile, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors)
 
HRESULT WINAPI D3DXCreateEffectFromFileA (struct IDirect3DDevice9 *device, const char *srcfile, const D3DXMACRO *defines, struct ID3DXInclude *include, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors)
 
HRESULT WINAPI D3DXCreateEffectFromFileW (struct IDirect3DDevice9 *device, const WCHAR *srcfile, const D3DXMACRO *defines, struct ID3DXInclude *include, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors)
 
HRESULT WINAPI D3DXCreateEffectFromResourceExA (struct IDirect3DDevice9 *device, HMODULE srcmodule, const char *srcresource, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors)
 
HRESULT WINAPI D3DXCreateEffectFromResourceExW (struct IDirect3DDevice9 *device, HMODULE srcmodule, const WCHAR *srcresource, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors)
 
HRESULT WINAPI D3DXCreateEffectFromResourceA (struct IDirect3DDevice9 *device, HMODULE srcmodule, const char *srcresource, const D3DXMACRO *defines, struct ID3DXInclude *include, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors)
 
HRESULT WINAPI D3DXCreateEffectFromResourceW (struct IDirect3DDevice9 *device, HMODULE srcmodule, const WCHAR *srcresource, const D3DXMACRO *defines, struct ID3DXInclude *include, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors)
 
HRESULT WINAPI D3DXCreateEffectCompilerFromFileA (const char *srcfile, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXEffectCompiler **effectcompiler, ID3DXBuffer **parseerrors)
 
HRESULT WINAPI D3DXCreateEffectCompilerFromFileW (const WCHAR *srcfile, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXEffectCompiler **effectcompiler, ID3DXBuffer **parseerrors)
 
HRESULT WINAPI D3DXCreateEffectCompilerFromResourceA (HMODULE srcmodule, const char *srcresource, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXEffectCompiler **effectcompiler, ID3DXBuffer **parseerrors)
 
HRESULT WINAPI D3DXCreateEffectCompilerFromResourceW (HMODULE srcmodule, const WCHAR *srcresource, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXEffectCompiler **effectcompiler, ID3DXBuffer **parseerrors)
 
HRESULT WINAPI D3DXDisassembleEffect (ID3DXEffect *effect, BOOL enable_color_code, ID3DXBuffer **disassembly)
 

Macro Definition Documentation

◆ D3DX_PARAMETER_ANNOTATION

#define D3DX_PARAMETER_ANNOTATION   4

Definition at line 32 of file d3dx9effect.h.

◆ D3DX_PARAMETER_LITERAL

#define D3DX_PARAMETER_LITERAL   2

Definition at line 31 of file d3dx9effect.h.

◆ D3DX_PARAMETER_SHARED

#define D3DX_PARAMETER_SHARED   1

Definition at line 30 of file d3dx9effect.h.

◆ D3DXCreateEffectCompilerFromFile

#define D3DXCreateEffectCompilerFromFile   WINELIB_NAME_AW(D3DXCreateEffectCompilerFromFile)

Definition at line 418 of file d3dx9effect.h.

◆ D3DXCreateEffectCompilerFromResource

#define D3DXCreateEffectCompilerFromResource   WINELIB_NAME_AW(D3DXCreateEffectCompilerFromResource)

Definition at line 426 of file d3dx9effect.h.

◆ D3DXCreateEffectFromFile

#define D3DXCreateEffectFromFile   WINELIB_NAME_AW(D3DXCreateEffectFromFile)

Definition at line 394 of file d3dx9effect.h.

◆ D3DXCreateEffectFromFileEx

#define D3DXCreateEffectFromFileEx   WINELIB_NAME_AW(D3DXCreateEffectFromFileEx)

Definition at line 386 of file d3dx9effect.h.

◆ D3DXCreateEffectFromResource

#define D3DXCreateEffectFromResource   WINELIB_NAME_AW(D3DXCreateEffectFromResource)

Definition at line 412 of file d3dx9effect.h.

◆ D3DXCreateEffectFromResourceEx

#define D3DXCreateEffectFromResourceEx   WINELIB_NAME_AW(D3DXCreateEffectFromResourceEx)

Definition at line 404 of file d3dx9effect.h.

◆ D3DXFX_DONOTSAVESAMPLERSTATE

#define D3DXFX_DONOTSAVESAMPLERSTATE   (1 << 2)

Definition at line 26 of file d3dx9effect.h.

◆ D3DXFX_DONOTSAVESHADERSTATE

#define D3DXFX_DONOTSAVESHADERSTATE   (1 << 1)

Definition at line 25 of file d3dx9effect.h.

◆ D3DXFX_DONOTSAVESTATE

#define D3DXFX_DONOTSAVESTATE   (1 << 0)

Definition at line 24 of file d3dx9effect.h.

◆ D3DXFX_LARGEADDRESSAWARE

#define D3DXFX_LARGEADDRESSAWARE   (1 << 17)

Definition at line 28 of file d3dx9effect.h.

◆ D3DXFX_NOT_CLONEABLE

#define D3DXFX_NOT_CLONEABLE   (1 << 11)

Definition at line 27 of file d3dx9effect.h.

◆ INTERFACE [1/5]

#define INTERFACE   ID3DXEffectPool

Definition at line 295 of file d3dx9effect.h.

◆ INTERFACE [2/5]

#define INTERFACE   ID3DXBaseEffect

Definition at line 295 of file d3dx9effect.h.

◆ INTERFACE [3/5]

#define INTERFACE   ID3DXEffectStateManager

Definition at line 295 of file d3dx9effect.h.

◆ INTERFACE [4/5]

#define INTERFACE   ID3DXEffect

Definition at line 295 of file d3dx9effect.h.

◆ INTERFACE [5/5]

#define INTERFACE   ID3DXEffectCompiler

Definition at line 295 of file d3dx9effect.h.

Typedef Documentation

◆ D3DXEFFECT_DESC

◆ D3DXFUNCTION_DESC

◆ D3DXPARAMETER_DESC

◆ D3DXPASS_DESC

◆ D3DXTECHNIQUE_DESC

◆ LPD3DXBASEEFFECT

typedef struct ID3DXBaseEffect* LPD3DXBASEEFFECT

Definition at line 94 of file d3dx9effect.h.

◆ LPD3DXEFFECT

typedef struct ID3DXEffect* LPD3DXEFFECT

Definition at line 198 of file d3dx9effect.h.

◆ LPD3DXEFFECTCOMPILER

typedef struct ID3DXEffectCompiler* LPD3DXEFFECTCOMPILER

Definition at line 291 of file d3dx9effect.h.

◆ LPD3DXEFFECTPOOL

typedef struct ID3DXEffectPool* LPD3DXEFFECTPOOL

Definition at line 78 of file d3dx9effect.h.

◆ LPD3DXEFFECTSTATEMANAGER

typedef struct ID3DXEffectStateManager* LPD3DXEFFECTSTATEMANAGER

Definition at line 164 of file d3dx9effect.h.

Function Documentation

◆ D3DXCreateEffect()

HRESULT WINAPI D3DXCreateEffect ( struct IDirect3DDevice9 *  device,
const void srcdata,
UINT  srcdatalen,
const D3DXMACRO defines,
struct ID3DXInclude *  include,
DWORD  flags,
struct ID3DXEffectPool *  pool,
struct ID3DXEffect **  effect,
struct ID3DXBuffer **  compilation_errors 
)

Definition at line 6790 of file effect.c.

6793 {
6794  TRACE("(%p, %p, %u, %p, %p, %#x, %p, %p, %p): Forwarded to D3DXCreateEffectEx\n", device, srcdata, srcdatalen, defines,
6795  include, flags, pool, effect, compilation_errors);
6796 
6797  return D3DXCreateEffectEx(device, srcdata, srcdatalen, defines, include, NULL, flags, pool, effect, compilation_errors);
6798 }
Definition: devices.h:37
smooth NULL
Definition: ftsmooth.c:416
HRESULT WINAPI D3DXCreateEffectEx(struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatalen, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors)
Definition: effect.c:6745
#define TRACE(s)
Definition: solgame.cpp:4
GLbitfield flags
Definition: glext.h:7161

◆ D3DXCreateEffectCompiler()

HRESULT WINAPI D3DXCreateEffectCompiler ( const char srcdata,
UINT  srcdatalen,
const D3DXMACRO defines,
ID3DXInclude *  include,
DWORD  flags,
ID3DXEffectCompiler **  compiler,
ID3DXBuffer **  parse_errors 
)

Definition at line 6815 of file effect.c.

6817 {
6819  HRESULT hr;
6820 
6821  TRACE("srcdata %p, srcdatalen %u, defines %p, include %p, flags %#x, compiler %p, parse_errors %p\n",
6822  srcdata, srcdatalen, defines, include, flags, compiler, parse_errors);
6823 
6824  if (!srcdata || !compiler)
6825  {
6826  WARN("Invalid arguments supplied\n");
6827  return D3DERR_INVALIDCALL;
6828  }
6829 
6830  object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object));
6831  if (!object)
6832  return E_OUTOFMEMORY;
6833 
6834  hr = d3dx9_effect_compiler_init(object, srcdata, srcdatalen, (const D3D_SHADER_MACRO *)defines,
6835  (ID3DInclude *)include, flags, (ID3DBlob **)parse_errors);
6836  if (FAILED(hr))
6837  {
6838  WARN("Failed to initialize effect compiler\n");
6839  HeapFree(GetProcessHeap(), 0, object);
6840  return hr;
6841  }
6842 
6843  *compiler = &object->ID3DXEffectCompiler_iface;
6844 
6845  TRACE("Created ID3DXEffectCompiler %p\n", object);
6846 
6847  return D3D_OK;
6848 }
HRESULT hr
Definition: shlfolder.c:183
#define WARN(fmt,...)
Definition: debug.h:111
#define D3DERR_INVALIDCALL
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
static HRESULT d3dx9_effect_compiler_init(struct ID3DXEffectCompilerImpl *compiler, const char *data, SIZE_T data_size, const D3D_SHADER_MACRO *defines, ID3DInclude *include, UINT eflags, ID3DBlob **error_messages)
Definition: effect.c:6800
#define TRACE(s)
Definition: solgame.cpp:4
#define GetProcessHeap()
Definition: compat.h:395
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
LONG HRESULT
Definition: typedefs.h:77
GLbitfield flags
Definition: glext.h:7161
#define D3D_OK
Definition: d3d.h:106
#define HEAP_ZERO_MEMORY
Definition: compat.h:123
#define HeapFree(x, y, z)
Definition: compat.h:394
void * object
Definition: jmemsys.h:48

Referenced by D3DXCreateEffectCompilerFromFileW(), D3DXCreateEffectCompilerFromResourceA(), and D3DXCreateEffectCompilerFromResourceW().

◆ D3DXCreateEffectCompilerFromFileA()

HRESULT WINAPI D3DXCreateEffectCompilerFromFileA ( const char srcfile,
const D3DXMACRO defines,
ID3DXInclude *  include,
DWORD  flags,
ID3DXEffectCompiler **  effectcompiler,
ID3DXBuffer **  parseerrors 
)

Definition at line 7129 of file effect.c.

7131 {
7132  WCHAR *srcfileW;
7133  HRESULT ret;
7134  DWORD len;
7135 
7136  TRACE("srcfile %s, defines %p, include %p, flags %#x, effectcompiler %p, parseerrors %p.\n",
7137  debugstr_a(srcfile), defines, include, flags, effectcompiler, parseerrors);
7138 
7139  if (!srcfile)
7140  return D3DERR_INVALIDCALL;
7141 
7142  len = MultiByteToWideChar(CP_ACP, 0, srcfile, -1, NULL, 0);
7143  srcfileW = HeapAlloc(GetProcessHeap(), 0, len * sizeof(*srcfileW));
7144  MultiByteToWideChar(CP_ACP, 0, srcfile, -1, srcfileW, len);
7145 
7146  ret = D3DXCreateEffectCompilerFromFileW(srcfileW, defines, include, flags, effectcompiler, parseerrors);
7147  HeapFree(GetProcessHeap(), 0, srcfileW);
7148 
7149  return ret;
7150 }
HRESULT WINAPI D3DXCreateEffectCompilerFromFileW(const WCHAR *srcfile, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXEffectCompiler **effectcompiler, ID3DXBuffer **parseerrors)
Definition: effect.c:7105
#define CP_ACP
Definition: compat.h:99
#define D3DERR_INVALIDCALL
smooth NULL
Definition: ftsmooth.c:416
#define TRACE(s)
Definition: solgame.cpp:4
#define GetProcessHeap()
Definition: compat.h:395
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define debugstr_a
Definition: kernel32.h:31
LONG HRESULT
Definition: typedefs.h:77
unsigned long DWORD
Definition: ntddk_ex.h:95
GLbitfield flags
Definition: glext.h:7161
int ret
GLenum GLsizei len
Definition: glext.h:6722
#define MultiByteToWideChar
Definition: compat.h:100
#define HeapFree(x, y, z)
Definition: compat.h:394

◆ D3DXCreateEffectCompilerFromFileW()

HRESULT WINAPI D3DXCreateEffectCompilerFromFileW ( const WCHAR srcfile,
const D3DXMACRO defines,
ID3DXInclude *  include,
DWORD  flags,
ID3DXEffectCompiler **  effectcompiler,
ID3DXBuffer **  parseerrors 
)

Definition at line 7105 of file effect.c.

7107 {
7108  void *buffer;
7109  HRESULT ret;
7110  DWORD size;
7111 
7112  TRACE("srcfile %s, defines %p, include %p, flags %#x, effectcompiler %p, parseerrors %p.\n",
7113  debugstr_w(srcfile), defines, include, flags, effectcompiler, parseerrors);
7114 
7115  if (!srcfile)
7116  return D3DERR_INVALIDCALL;
7117 
7118  ret = map_view_of_file(srcfile, &buffer, &size);
7119 
7120  if (FAILED(ret))
7121  return D3DXERR_INVALIDDATA;
7122 
7123  ret = D3DXCreateEffectCompiler(buffer, size, defines, include, flags, effectcompiler, parseerrors);
7125 
7126  return ret;
7127 }
HRESULT WINAPI D3DXCreateEffectCompiler(const char *srcdata, UINT srcdatalen, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXEffectCompiler **compiler, ID3DXBuffer **parse_errors)
Definition: effect.c:6815
#define D3DERR_INVALIDCALL
GLuint buffer
Definition: glext.h:5915
#define debugstr_w
Definition: kernel32.h:32
#define TRACE(s)
Definition: solgame.cpp:4
GLsizeiptr size
Definition: glext.h:5919
LONG HRESULT
Definition: typedefs.h:77
unsigned long DWORD
Definition: ntddk_ex.h:95
GLbitfield flags
Definition: glext.h:7161
HRESULT map_view_of_file(const WCHAR *filename, void **buffer, DWORD *length) DECLSPEC_HIDDEN
Definition: util.c:118
int ret
#define UnmapViewOfFile
Definition: compat.h:403

Referenced by D3DXCreateEffectCompilerFromFileA().

◆ D3DXCreateEffectCompilerFromResourceA()

HRESULT WINAPI D3DXCreateEffectCompilerFromResourceA ( HMODULE  srcmodule,
const char srcresource,
const D3DXMACRO defines,
ID3DXInclude *  include,
DWORD  flags,
ID3DXEffectCompiler **  effectcompiler,
ID3DXBuffer **  parseerrors 
)

Definition at line 7152 of file effect.c.

7155 {
7156  HRSRC resinfo;
7157  void *buffer;
7158  DWORD size;
7159 
7160  TRACE("srcmodule %p, srcresource %s, defines %p, include %p, flags %#x, effectcompiler %p, parseerrors %p.\n",
7161  srcmodule, debugstr_a(srcresource), defines, include, flags, effectcompiler, parseerrors);
7162 
7163  if (!(resinfo = FindResourceA(srcmodule, srcresource, (const char *)RT_RCDATA)))
7164  return D3DXERR_INVALIDDATA;
7165 
7166  if (FAILED(load_resource_into_memory(srcmodule, resinfo, &buffer, &size)))
7167  return D3DXERR_INVALIDDATA;
7168 
7169  return D3DXCreateEffectCompiler(buffer, size, defines, include, flags, effectcompiler, parseerrors);
7170 }
HRESULT WINAPI D3DXCreateEffectCompiler(const char *srcdata, UINT srcdatalen, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXEffectCompiler **compiler, ID3DXBuffer **parse_errors)
Definition: effect.c:6815
HRSRC WINAPI FindResourceA(HMODULE hModule, LPCSTR name, LPCSTR type)
Definition: res.c:155
GLuint buffer
Definition: glext.h:5915
HRESULT load_resource_into_memory(HMODULE module, HRSRC resinfo, void **buffer, DWORD *length) DECLSPEC_HIDDEN
Definition: util.c:166
#define TRACE(s)
Definition: solgame.cpp:4
GLsizeiptr size
Definition: glext.h:5919
#define debugstr_a
Definition: kernel32.h:31
unsigned long DWORD
Definition: ntddk_ex.h:95
GLbitfield flags
Definition: glext.h:7161
#define RT_RCDATA
Definition: pedump.c:372

◆ D3DXCreateEffectCompilerFromResourceW()

HRESULT WINAPI D3DXCreateEffectCompilerFromResourceW ( HMODULE  srcmodule,
const WCHAR srcresource,
const D3DXMACRO defines,
ID3DXInclude *  include,
DWORD  flags,
ID3DXEffectCompiler **  effectcompiler,
ID3DXBuffer **  parseerrors 
)

Definition at line 7172 of file effect.c.

7175 {
7176  HRSRC resinfo;
7177  void *buffer;
7178  DWORD size;
7179 
7180  TRACE("srcmodule %p, srcresource %s, defines %p, include %p, flags %#x, effectcompiler %p, parseerrors %p.\n",
7181  srcmodule, debugstr_w(srcresource), defines, include, flags, effectcompiler, parseerrors);
7182 
7183  if (!(resinfo = FindResourceW(srcmodule, srcresource, (const WCHAR *)RT_RCDATA)))
7184  return D3DXERR_INVALIDDATA;
7185 
7186  if (FAILED(load_resource_into_memory(srcmodule, resinfo, &buffer, &size)))
7187  return D3DXERR_INVALIDDATA;
7188 
7189  return D3DXCreateEffectCompiler(buffer, size, defines, include, flags, effectcompiler, parseerrors);
7190 }
HRESULT WINAPI D3DXCreateEffectCompiler(const char *srcdata, UINT srcdatalen, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXEffectCompiler **compiler, ID3DXBuffer **parse_errors)
Definition: effect.c:6815
GLuint buffer
Definition: glext.h:5915
HRSRC WINAPI FindResourceW(HINSTANCE hModule, LPCWSTR name, LPCWSTR type)
Definition: res.c:176
#define debugstr_w
Definition: kernel32.h:32
HRESULT load_resource_into_memory(HMODULE module, HRSRC resinfo, void **buffer, DWORD *length) DECLSPEC_HIDDEN
Definition: util.c:166
#define TRACE(s)
Definition: solgame.cpp:4
GLsizeiptr size
Definition: glext.h:5919
__wchar_t WCHAR
Definition: xmlstorage.h:180
unsigned long DWORD
Definition: ntddk_ex.h:95
GLbitfield flags
Definition: glext.h:7161
#define RT_RCDATA
Definition: pedump.c:372

◆ D3DXCreateEffectEx()

HRESULT WINAPI D3DXCreateEffectEx ( struct IDirect3DDevice9 *  device,
const void srcdata,
UINT  srcdatalen,
const D3DXMACRO defines,
struct ID3DXInclude *  include,
const char skip_constants,
DWORD  flags,
struct ID3DXEffectPool *  pool,
struct ID3DXEffect **  effect,
struct ID3DXBuffer **  compilation_errors 
)

Definition at line 6745 of file effect.c.

6748 {
6749  struct ID3DXEffectImpl *object;
6750  HRESULT hr;
6751 
6752  TRACE("device %p, srcdata %p, srcdatalen %u, defines %p, include %p,"
6753  " skip_constants %p, flags %#x, pool %p, effect %p, compilation_errors %p.\n",
6754  device, srcdata, srcdatalen, defines, include,
6755  skip_constants, flags, pool, effect, compilation_errors);
6756 
6757  if (compilation_errors)
6758  *compilation_errors = NULL;
6759 
6760  if (!device || !srcdata)
6761  return D3DERR_INVALIDCALL;
6762 
6763  if (!srcdatalen)
6764  return E_FAIL;
6765 
6766  /* Native dll allows effect to be null so just return D3D_OK after doing basic checks */
6767  if (!effect)
6768  return D3D_OK;
6769 
6770  object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object));
6771  if (!object)
6772  return E_OUTOFMEMORY;
6773 
6774  hr = d3dx9_effect_init(object, device, srcdata, srcdatalen, (const D3D_SHADER_MACRO *)defines,
6775  (ID3DInclude *)include, flags, (ID3DBlob **)compilation_errors, pool, skip_constants);
6776  if (FAILED(hr))
6777  {
6778  WARN("Failed to create effect object.\n");
6779  HeapFree(GetProcessHeap(), 0, object);
6780  return hr;
6781  }
6782 
6783  *effect = &object->ID3DXEffect_iface;
6784 
6785  TRACE("Created ID3DXEffect %p\n", object);
6786 
6787  return D3D_OK;
6788 }
HRESULT hr
Definition: shlfolder.c:183
#define WARN(fmt,...)
Definition: debug.h:111
#define D3DERR_INVALIDCALL
#define E_FAIL
Definition: ddrawi.h:102
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
Definition: devices.h:37
smooth NULL
Definition: ftsmooth.c:416
static HRESULT d3dx9_effect_init(struct ID3DXEffectImpl *effect, struct IDirect3DDevice9 *device, const char *data, SIZE_T data_size, const D3D_SHADER_MACRO *defines, ID3DInclude *include, UINT eflags, ID3DBlob **error_messages, struct ID3DXEffectPool *pool, const char *skip_constants)
Definition: effect.c:6705
#define TRACE(s)
Definition: solgame.cpp:4
#define GetProcessHeap()
Definition: compat.h:395
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
LONG HRESULT
Definition: typedefs.h:77
GLbitfield flags
Definition: glext.h:7161
#define D3D_OK
Definition: d3d.h:106
#define HEAP_ZERO_MEMORY
Definition: compat.h:123
#define HeapFree(x, y, z)
Definition: compat.h:394
void * object
Definition: jmemsys.h:48

Referenced by D3DXCreateEffect(), D3DXCreateEffectEx25(), D3DXCreateEffectFromFileExW(), D3DXCreateEffectFromResourceExA(), and D3DXCreateEffectFromResourceExW().

◆ D3DXCreateEffectFromFileA()

HRESULT WINAPI D3DXCreateEffectFromFileA ( struct IDirect3DDevice9 *  device,
const char srcfile,
const D3DXMACRO defines,
struct ID3DXInclude *  include,
DWORD  flags,
struct ID3DXEffectPool *  pool,
struct ID3DXEffect **  effect,
struct ID3DXBuffer **  compilation_errors 
)

Definition at line 7029 of file effect.c.

7032 {
7033  TRACE("(void): relay\n");
7034  return D3DXCreateEffectFromFileExA(device, srcfile, defines, include, NULL, flags, pool, effect, compilationerrors);
7035 }
Definition: devices.h:37
smooth NULL
Definition: ftsmooth.c:416
#define TRACE(s)
Definition: solgame.cpp:4
GLbitfield flags
Definition: glext.h:7161
HRESULT WINAPI D3DXCreateEffectFromFileExA(struct IDirect3DDevice9 *device, const char *srcfile, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skipconstants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilationerrors)
Definition: effect.c:6995

◆ D3DXCreateEffectFromFileExA()

HRESULT WINAPI D3DXCreateEffectFromFileExA ( struct IDirect3DDevice9 *  device,
const char srcfile,
const D3DXMACRO defines,
struct ID3DXInclude *  include,
const char skip_constants,
DWORD  flags,
struct ID3DXEffectPool *  pool,
struct ID3DXEffect **  effect,
struct ID3DXBuffer **  compilation_errors 
)

Definition at line 6995 of file effect.c.

6998 {
6999  WCHAR *srcfileW;
7000  HRESULT ret;
7001  DWORD len;
7002 
7003  TRACE("device %p, srcfile %s, defines %p, include %p, skipconstants %s, "
7004  "flags %#x, pool %p, effect %p, compilationerrors %p.\n",
7005  device, debugstr_a(srcfile), defines, include, debugstr_a(skipconstants),
7006  flags, pool, effect, compilationerrors);
7007 
7008  if (!srcfile)
7009  return D3DERR_INVALIDCALL;
7010 
7011  len = MultiByteToWideChar(CP_ACP, 0, srcfile, -1, NULL, 0);
7012  srcfileW = HeapAlloc(GetProcessHeap(), 0, len * sizeof(*srcfileW));
7013  MultiByteToWideChar(CP_ACP, 0, srcfile, -1, srcfileW, len);
7014 
7015  ret = D3DXCreateEffectFromFileExW(device, srcfileW, defines, include, skipconstants, flags, pool, effect, compilationerrors);
7016  HeapFree(GetProcessHeap(), 0, srcfileW);
7017 
7018  return ret;
7019 }
#define CP_ACP
Definition: compat.h:99
#define D3DERR_INVALIDCALL
Definition: devices.h:37
smooth NULL
Definition: ftsmooth.c:416
#define TRACE(s)
Definition: solgame.cpp:4
#define GetProcessHeap()
Definition: compat.h:395
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define debugstr_a
Definition: kernel32.h:31
LONG HRESULT
Definition: typedefs.h:77
unsigned long DWORD
Definition: ntddk_ex.h:95
GLbitfield flags
Definition: glext.h:7161
int ret
GLenum GLsizei len
Definition: glext.h:6722
HRESULT WINAPI D3DXCreateEffectFromFileExW(struct IDirect3DDevice9 *device, const WCHAR *srcfile, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skipconstants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilationerrors)
Definition: effect.c:6947
#define MultiByteToWideChar
Definition: compat.h:100
#define HeapFree(x, y, z)
Definition: compat.h:394

Referenced by D3DXCreateEffectFromFileA(), and D3DXCreateEffectFromFileExA25().

◆ D3DXCreateEffectFromFileExW()

HRESULT WINAPI D3DXCreateEffectFromFileExW ( struct IDirect3DDevice9 *  device,
const WCHAR srcfile,
const D3DXMACRO defines,
struct ID3DXInclude *  include,
const char skip_constants,
DWORD  flags,
struct ID3DXEffectPool *  pool,
struct ID3DXEffect **  effect,
struct ID3DXBuffer **  compilation_errors 
)

Definition at line 6947 of file effect.c.

6950 {
6951  struct d3dx_include_from_file include_from_file;
6952  const void *buffer;
6953  unsigned int size;
6954  char *filename_a;
6955  HRESULT ret;
6956 
6957  TRACE("device %p, srcfile %s, defines %p, include %p, skipconstants %s, "
6958  "flags %#x, pool %p, effect %p, compilationerrors %p.\n",
6959  device, debugstr_w(srcfile), defines, include, debugstr_a(skipconstants),
6960  flags, pool, effect, compilationerrors);
6961 
6962  if (!device || !srcfile)
6963  return D3DERR_INVALIDCALL;
6964 
6965  if (!include)
6966  {
6967  include_from_file.ID3DXInclude_iface.lpVtbl = &d3dx_include_from_file_vtbl;
6968  include = &include_from_file.ID3DXInclude_iface;
6969  }
6970 
6971  size = WideCharToMultiByte(CP_ACP, 0, srcfile, -1, NULL, 0, NULL, NULL);
6972  filename_a = heap_alloc(size);
6973  if (!filename_a)
6974  return E_OUTOFMEMORY;
6975  WideCharToMultiByte(CP_ACP, 0, srcfile, -1, filename_a, size, NULL, NULL);
6976 
6978  ret = ID3DXInclude_Open(include, D3DXINC_LOCAL, filename_a, NULL, &buffer, &size);
6979  if (FAILED(ret))
6980  {
6982  heap_free(filename_a);
6983  return D3DXERR_INVALIDDATA;
6984  }
6985 
6986  ret = D3DXCreateEffectEx(device, buffer, size, defines, include, skipconstants, flags, pool,
6987  effect, compilationerrors);
6988 
6989  ID3DXInclude_Close(include, buffer);
6991  heap_free(filename_a);
6992  return ret;
6993 }
#define ID3DXInclude_Open(p, a, b, c, d, e)
Definition: d3dx9shader.h:303
#define WideCharToMultiByte
Definition: compat.h:101
#define CP_ACP
Definition: compat.h:99
const struct ID3DXIncludeVtbl d3dx_include_from_file_vtbl
Definition: shader.c:314
#define D3DERR_INVALIDCALL
GLuint buffer
Definition: glext.h:5915
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
static void * heap_alloc(size_t len)
Definition: appwiz.h:65
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
Definition: devices.h:37
#define debugstr_w
Definition: kernel32.h:32
smooth NULL
Definition: ftsmooth.c:416
#define ID3DXInclude_Close(p, a)
Definition: d3dx9shader.h:304
HRESULT WINAPI D3DXCreateEffectEx(struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatalen, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors)
Definition: effect.c:6745
#define TRACE(s)
Definition: solgame.cpp:4
GLsizeiptr size
Definition: glext.h:5919
#define debugstr_a
Definition: kernel32.h:31
LONG HRESULT
Definition: typedefs.h:77
GLbitfield flags
Definition: glext.h:7161
int ret
CRITICAL_SECTION from_file_mutex
Definition: shader.c:228
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
static BOOL heap_free(void *mem)
Definition: appwiz.h:75

Referenced by D3DXCreateEffectFromFileExA(), D3DXCreateEffectFromFileExW25(), and D3DXCreateEffectFromFileW().

◆ D3DXCreateEffectFromFileW()

HRESULT WINAPI D3DXCreateEffectFromFileW ( struct IDirect3DDevice9 *  device,
const WCHAR srcfile,
const D3DXMACRO defines,
struct ID3DXInclude *  include,
DWORD  flags,
struct ID3DXEffectPool *  pool,
struct ID3DXEffect **  effect,
struct ID3DXBuffer **  compilation_errors 
)

Definition at line 7021 of file effect.c.

7024 {
7025  TRACE("(void): relay\n");
7026  return D3DXCreateEffectFromFileExW(device, srcfile, defines, include, NULL, flags, pool, effect, compilationerrors);
7027 }
Definition: devices.h:37
smooth NULL
Definition: ftsmooth.c:416
#define TRACE(s)
Definition: solgame.cpp:4
GLbitfield flags
Definition: glext.h:7161
HRESULT WINAPI D3DXCreateEffectFromFileExW(struct IDirect3DDevice9 *device, const WCHAR *srcfile, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skipconstants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilationerrors)
Definition: effect.c:6947

◆ D3DXCreateEffectFromResourceA()

HRESULT WINAPI D3DXCreateEffectFromResourceA ( struct IDirect3DDevice9 *  device,
HMODULE  srcmodule,
const char srcresource,
const D3DXMACRO defines,
struct ID3DXInclude *  include,
DWORD  flags,
struct ID3DXEffectPool *  pool,
struct ID3DXEffect **  effect,
struct ID3DXBuffer **  compilation_errors 
)

Definition at line 7097 of file effect.c.

7100 {
7101  TRACE("(void): relay\n");
7102  return D3DXCreateEffectFromResourceExA(device, srcmodule, srcresource, defines, include, NULL, flags, pool, effect, compilationerrors);
7103 }
Definition: devices.h:37
smooth NULL
Definition: ftsmooth.c:416
#define TRACE(s)
Definition: solgame.cpp:4
GLbitfield flags
Definition: glext.h:7161
HRESULT WINAPI D3DXCreateEffectFromResourceExA(struct IDirect3DDevice9 *device, HMODULE srcmodule, const char *srcresource, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skipconstants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilationerrors)
Definition: effect.c:7063

◆ D3DXCreateEffectFromResourceExA()

HRESULT WINAPI D3DXCreateEffectFromResourceExA ( struct IDirect3DDevice9 *  device,
HMODULE  srcmodule,
const char srcresource,
const D3DXMACRO defines,
struct ID3DXInclude *  include,
const char skip_constants,
DWORD  flags,
struct ID3DXEffectPool *  pool,
struct ID3DXEffect **  effect,
struct ID3DXBuffer **  compilation_errors 
)

Definition at line 7063 of file effect.c.

7066 {
7067  HRSRC resinfo;
7068  void *buffer;
7069  DWORD size;
7070 
7071  TRACE("device %p, srcmodule %p, srcresource %s, defines %p, include %p, skipconstants %s, "
7072  "flags %#x, pool %p, effect %p, compilationerrors %p.\n",
7073  device, srcmodule, debugstr_a(srcresource), defines, include, debugstr_a(skipconstants),
7074  flags, pool, effect, compilationerrors);
7075 
7076  if (!device)
7077  return D3DERR_INVALIDCALL;
7078 
7079  if (!(resinfo = FindResourceA(srcmodule, srcresource, (const char *)RT_RCDATA)))
7080  return D3DXERR_INVALIDDATA;
7081 
7082  if (FAILED(load_resource_into_memory(srcmodule, resinfo, &buffer, &size)))
7083  return D3DXERR_INVALIDDATA;
7084 
7085  return D3DXCreateEffectEx(device, buffer, size, defines, include,
7086  skipconstants, flags, pool, effect, compilationerrors);
7087 }
HRSRC WINAPI FindResourceA(HMODULE hModule, LPCSTR name, LPCSTR type)
Definition: res.c:155
#define D3DERR_INVALIDCALL
GLuint buffer
Definition: glext.h:5915
Definition: devices.h:37
HRESULT load_resource_into_memory(HMODULE module, HRSRC resinfo, void **buffer, DWORD *length) DECLSPEC_HIDDEN
Definition: util.c:166
HRESULT WINAPI D3DXCreateEffectEx(struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatalen, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors)
Definition: effect.c:6745
#define TRACE(s)
Definition: solgame.cpp:4
GLsizeiptr size
Definition: glext.h:5919
#define debugstr_a
Definition: kernel32.h:31
unsigned long DWORD
Definition: ntddk_ex.h:95
GLbitfield flags
Definition: glext.h:7161
#define RT_RCDATA
Definition: pedump.c:372

Referenced by D3DXCreateEffectFromResourceA(), and D3DXCreateEffectFromResourceExA25().

◆ D3DXCreateEffectFromResourceExW()

HRESULT WINAPI D3DXCreateEffectFromResourceExW ( struct IDirect3DDevice9 *  device,
HMODULE  srcmodule,
const WCHAR srcresource,
const D3DXMACRO defines,
struct ID3DXInclude *  include,
const char skip_constants,
DWORD  flags,
struct ID3DXEffectPool *  pool,
struct ID3DXEffect **  effect,
struct ID3DXBuffer **  compilation_errors 
)

Definition at line 7037 of file effect.c.

7040 {
7041  HRSRC resinfo;
7042  void *buffer;
7043  DWORD size;
7044 
7045  TRACE("device %p, srcmodule %p, srcresource %s, defines %p, include %p, skipconstants %s, "
7046  "flags %#x, pool %p, effect %p, compilationerrors %p.\n",
7047  device, srcmodule, debugstr_w(srcresource), defines, include, debugstr_a(skipconstants),
7048  flags, pool, effect, compilationerrors);
7049 
7050  if (!device)
7051  return D3DERR_INVALIDCALL;
7052 
7053  if (!(resinfo = FindResourceW(srcmodule, srcresource, (const WCHAR *)RT_RCDATA)))
7054  return D3DXERR_INVALIDDATA;
7055 
7056  if (FAILED(load_resource_into_memory(srcmodule, resinfo, &buffer, &size)))
7057  return D3DXERR_INVALIDDATA;
7058 
7059  return D3DXCreateEffectEx(device, buffer, size, defines, include,
7060  skipconstants, flags, pool, effect, compilationerrors);
7061 }
#define D3DERR_INVALIDCALL
GLuint buffer
Definition: glext.h:5915
HRSRC WINAPI FindResourceW(HINSTANCE hModule, LPCWSTR name, LPCWSTR type)
Definition: res.c:176
Definition: devices.h:37
#define debugstr_w
Definition: kernel32.h:32
HRESULT load_resource_into_memory(HMODULE module, HRSRC resinfo, void **buffer, DWORD *length) DECLSPEC_HIDDEN
Definition: util.c:166
HRESULT WINAPI D3DXCreateEffectEx(struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatalen, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors)
Definition: effect.c:6745
#define TRACE(s)
Definition: solgame.cpp:4
GLsizeiptr size
Definition: glext.h:5919
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define debugstr_a
Definition: kernel32.h:31
unsigned long DWORD
Definition: ntddk_ex.h:95
GLbitfield flags
Definition: glext.h:7161
#define RT_RCDATA
Definition: pedump.c:372

Referenced by D3DXCreateEffectFromResourceExW25(), and D3DXCreateEffectFromResourceW().

◆ D3DXCreateEffectFromResourceW()

HRESULT WINAPI D3DXCreateEffectFromResourceW ( struct IDirect3DDevice9 *  device,
HMODULE  srcmodule,
const WCHAR srcresource,
const D3DXMACRO defines,
struct ID3DXInclude *  include,
DWORD  flags,
struct ID3DXEffectPool *  pool,
struct ID3DXEffect **  effect,
struct ID3DXBuffer **  compilation_errors 
)

Definition at line 7089 of file effect.c.

7092 {
7093  TRACE("(void): relay\n");
7094  return D3DXCreateEffectFromResourceExW(device, srcmodule, srcresource, defines, include, NULL, flags, pool, effect, compilationerrors);
7095 }
Definition: devices.h:37
smooth NULL
Definition: ftsmooth.c:416
#define TRACE(s)
Definition: solgame.cpp:4
GLbitfield flags
Definition: glext.h:7161
HRESULT WINAPI D3DXCreateEffectFromResourceExW(struct IDirect3DDevice9 *device, HMODULE srcmodule, const WCHAR *srcresource, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skipconstants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilationerrors)
Definition: effect.c:7037

◆ D3DXCreateEffectPool()

HRESULT WINAPI D3DXCreateEffectPool ( ID3DXEffectPool **  pool)

Definition at line 6926 of file effect.c.

6927 {
6928  struct d3dx_effect_pool *object;
6929 
6930  TRACE("pool %p.\n", pool);
6931 
6932  if (!pool)
6933  return D3DERR_INVALIDCALL;
6934 
6935  object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object));
6936  if (!object)
6937  return E_OUTOFMEMORY;
6938 
6939  object->ID3DXEffectPool_iface.lpVtbl = &ID3DXEffectPool_Vtbl;
6940  object->refcount = 1;
6941 
6942  *pool = &object->ID3DXEffectPool_iface;
6943 
6944  return S_OK;
6945 }
#define D3DERR_INVALIDCALL
static const struct ID3DXEffectPoolVtbl ID3DXEffectPool_Vtbl
Definition: effect.c:6918
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define TRACE(s)
Definition: solgame.cpp:4
#define GetProcessHeap()
Definition: compat.h:395
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
#define S_OK
Definition: intsafe.h:59
#define HEAP_ZERO_MEMORY
Definition: compat.h:123
void * object
Definition: jmemsys.h:48

◆ D3DXDisassembleEffect()

HRESULT WINAPI D3DXDisassembleEffect ( ID3DXEffect *  effect,
BOOL  enable_color_code,
ID3DXBuffer **  disassembly 
)

Definition at line 7192 of file effect.c.

7193 {
7194  FIXME("(%p, %u, %p): stub\n", effect, enable_color_code, disassembly);
7195 
7196  return D3DXERR_INVALIDDATA;
7197 }
#define FIXME(fmt,...)
Definition: debug.h:110

Referenced by D3DXDisassembleEffect25().

◆ DECLARE_INTERFACE_() [1/5]

DECLARE_INTERFACE_ ( ID3DXEffectPool  ,
IUnknown   
)

Definition at line 85 of file d3dx9effect.h.

86 {
87  /*** IUnknown methods ***/
91 };
#define REFIID
Definition: guiddef.h:113
#define THIS_
Definition: basetyps.h:65
_In_ BOOLEAN Release
Definition: classpnp.h:929
#define THIS
Definition: basetyps.h:66
REFIID riid
Definition: precomp.h:44
NTSTATUS QueryInterface(IN PDEVICE_OBJECT DeviceObject, IN CONST GUID InterfaceType, IN LONG Size, IN LONG Version, OUT PVOID Interface)
Definition: fdo.c:532
#define STDMETHOD(m)
Definition: basetyps.h:62
static FILE * out
Definition: regtests2xml.c:44
#define PURE
Definition: basetyps.h:64
static ULONG WINAPI AddRef(IStream *iface)
Definition: clist.c:90
unsigned int ULONG
Definition: retypes.h:1
#define STDMETHOD_(t, m)
Definition: basetyps.h:63

◆ DECLARE_INTERFACE_() [2/5]

DECLARE_INTERFACE_ ( ID3DXBaseEffect  ,
IUnknown   
)

Definition at line 100 of file d3dx9effect.h.

101 {
102  /*** IUnknown methods ***/
106  /*** ID3DXBaseEffect methods ***/
108  STDMETHOD(GetParameterDesc)(THIS_ D3DXHANDLE parameter, D3DXPARAMETER_DESC* desc) PURE;
109  STDMETHOD(GetTechniqueDesc)(THIS_ D3DXHANDLE technique, D3DXTECHNIQUE_DESC* desc) PURE;
113  STDMETHOD_(D3DXHANDLE, GetParameterByName)(THIS_ D3DXHANDLE parameter, const char *name) PURE;
114  STDMETHOD_(D3DXHANDLE, GetParameterBySemantic)(THIS_ D3DXHANDLE parameter, const char *semantic) PURE;
115  STDMETHOD_(D3DXHANDLE, GetParameterElement)(THIS_ D3DXHANDLE parameter, UINT index) PURE;
116  STDMETHOD_(D3DXHANDLE, GetTechnique)(THIS_ UINT index) PURE;
117  STDMETHOD_(D3DXHANDLE, GetTechniqueByName)(THIS_ const char *name) PURE;
119  STDMETHOD_(D3DXHANDLE, GetPassByName)(THIS_ D3DXHANDLE technique, const char *name) PURE;
120  STDMETHOD_(D3DXHANDLE, GetFunction)(THIS_ UINT index);
121  STDMETHOD_(D3DXHANDLE, GetFunctionByName)(THIS_ const char *name);
123  STDMETHOD_(D3DXHANDLE, GetAnnotationByName)(THIS_ D3DXHANDLE object, const char *name) PURE;
124  STDMETHOD(SetValue)(THIS_ D3DXHANDLE parameter, const void *data, UINT bytes) PURE;
125  STDMETHOD(GetValue)(THIS_ D3DXHANDLE parameter, void *data, UINT bytes) PURE;
126  STDMETHOD(SetBool)(THIS_ D3DXHANDLE parameter, BOOL b) PURE;
127  STDMETHOD(GetBool)(THIS_ D3DXHANDLE parameter, BOOL* b) PURE;
128  STDMETHOD(SetBoolArray)(THIS_ D3DXHANDLE parameter, const BOOL *b, UINT count) PURE;
129  STDMETHOD(GetBoolArray)(THIS_ D3DXHANDLE parameter, BOOL* b, UINT count) PURE;
130  STDMETHOD(SetInt)(THIS_ D3DXHANDLE parameter, INT n) PURE;
131  STDMETHOD(GetInt)(THIS_ D3DXHANDLE parameter, INT* n) PURE;
132  STDMETHOD(SetIntArray)(THIS_ D3DXHANDLE parameter, const INT *n, UINT count) PURE;
133  STDMETHOD(GetIntArray)(THIS_ D3DXHANDLE parameter, INT* n, UINT count) PURE;
134  STDMETHOD(SetFloat)(THIS_ D3DXHANDLE parameter, FLOAT f) PURE;
135  STDMETHOD(GetFloat)(THIS_ D3DXHANDLE parameter, FLOAT* f) PURE;
136  STDMETHOD(SetFloatArray)(THIS_ D3DXHANDLE parameter, const FLOAT *f, UINT count) PURE;
137  STDMETHOD(GetFloatArray)(THIS_ D3DXHANDLE parameter, FLOAT* f, UINT count) PURE;
138  STDMETHOD(SetVector)(THIS_ D3DXHANDLE parameter, const D3DXVECTOR4 *vector) PURE;
139  STDMETHOD(GetVector)(THIS_ D3DXHANDLE parameter, D3DXVECTOR4* vector) PURE;
140  STDMETHOD(SetVectorArray)(THIS_ D3DXHANDLE parameter, const D3DXVECTOR4 *vector, UINT count) PURE;
141  STDMETHOD(GetVectorArray)(THIS_ D3DXHANDLE parameter, D3DXVECTOR4* vector, UINT count) PURE;
144  STDMETHOD(SetMatrixArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) PURE;
145  STDMETHOD(GetMatrixArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix, UINT count) PURE;
146  STDMETHOD(SetMatrixPointerArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) PURE;
147  STDMETHOD(GetMatrixPointerArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX** matrix, UINT count) PURE;
148  STDMETHOD(SetMatrixTranspose)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix) PURE;
149  STDMETHOD(GetMatrixTranspose)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix) PURE;
150  STDMETHOD(SetMatrixTransposeArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) PURE;
151  STDMETHOD(GetMatrixTransposeArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix, UINT count) PURE;
152  STDMETHOD(SetMatrixTransposePointerArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) PURE;
153  STDMETHOD(GetMatrixTransposePointerArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX** matrix, UINT count) PURE;
154  STDMETHOD(SetString)(THIS_ D3DXHANDLE parameter, const char *string) PURE;
155  STDMETHOD(GetString)(THIS_ D3DXHANDLE parameter, const char **string) PURE;
156  STDMETHOD(SetTexture)(THIS_ D3DXHANDLE parameter, struct IDirect3DBaseTexture9 *texture) PURE;
157  STDMETHOD(GetTexture)(THIS_ D3DXHANDLE parameter, struct IDirect3DBaseTexture9 **texture) PURE;
158  STDMETHOD(GetPixelShader)(THIS_ D3DXHANDLE parameter, struct IDirect3DPixelShader9 **shader) PURE;
159  STDMETHOD(GetVertexShader)(THIS_ D3DXHANDLE parameter, struct IDirect3DVertexShader9 **shader) PURE;
160  STDMETHOD(SetArrayRange)(THIS_ D3DXHANDLE parameter, UINT start, UINT end) PURE;
161 };
#define REFIID
Definition: guiddef.h:113
#define THIS_
Definition: basetyps.h:65
static TCHAR * GetParameter(TCHAR **pPointer)
Definition: start.c:20
_In_ BOOLEAN Release
Definition: classpnp.h:929
const char * D3DXHANDLE
Definition: d3dx9shader.h:48
#define THIS
Definition: basetyps.h:66
REFIID riid
Definition: precomp.h:44
GLuint GLenum matrix
Definition: glext.h:9407
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLdouble n
Definition: glext.h:7729
GLuint GLuint end
Definition: gl.h:1545
NTSTATUS QueryInterface(IN PDEVICE_OBJECT DeviceObject, IN CONST GUID InterfaceType, IN LONG Size, IN LONG Version, OUT PVOID Interface)
Definition: fdo.c:532
int32_t INT
Definition: typedefs.h:56
#define STDMETHOD(m)
Definition: basetyps.h:62
pass
Definition: typegen.h:24
static unsigned char bytes[4]
Definition: adnsresfilter.c:74
unsigned int BOOL
Definition: ntddk_ex.h:94
const struct builtin_class_descr * desc
Definition: regcontrol.c:48
#define b
Definition: ke_i.h:79
GLuint shader
Definition: glext.h:6030
void SetMatrix(HWND hwnd, MATRIX *matrix)
Definition: matrix.c:294
GLenum GLuint texture
Definition: glext.h:6295
static FILE * out
Definition: regtests2xml.c:44
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
#define index(s, c)
Definition: various.h:29
char string[160]
Definition: util.h:11
char * GetPass(const char *const prompt)
Definition: util.c:186
GLuint start
Definition: gl.h:1545
#define f
Definition: ke_i.h:83
#define PURE
Definition: basetyps.h:64
unsigned int UINT
Definition: ndis.h:50
static ULONG WINAPI AddRef(IStream *iface)
Definition: clist.c:90
float FLOAT
Definition: typedefs.h:67
unsigned int ULONG
Definition: retypes.h:1
#define STDMETHOD_(t, m)
Definition: basetyps.h:63
MATRIX * GetMatrix(HWND hwnd)
Definition: matrix.c:289
void * object
Definition: jmemsys.h:48
GLuint const GLchar * name
Definition: glext.h:6031

◆ DECLARE_INTERFACE_() [3/5]

DECLARE_INTERFACE_ ( ID3DXEffectStateManager  ,
IUnknown   
)

Definition at line 170 of file d3dx9effect.h.

171 {
172  /*** IUnknown methods ***/
176  /*** ID3DXEffectStateManager methods ***/
178  STDMETHOD(SetMaterial)(THIS_ const D3DMATERIAL9 *material) PURE;
179  STDMETHOD(SetLight)(THIS_ DWORD index, const D3DLIGHT9 *light) PURE;
180  STDMETHOD(LightEnable)(THIS_ DWORD index, BOOL enable) PURE;
182  STDMETHOD(SetTexture)(THIS_ DWORD stage, struct IDirect3DBaseTexture9 *texture) PURE;
183  STDMETHOD(SetTextureStageState)(THIS_ DWORD stage, D3DTEXTURESTAGESTATETYPE type, DWORD value) PURE;
185  STDMETHOD(SetNPatchMode)(THIS_ FLOAT num_segments) PURE;
186  STDMETHOD(SetFVF)(THIS_ DWORD format) PURE;
187  STDMETHOD(SetVertexShader)(THIS_ struct IDirect3DVertexShader9 *shader) PURE;
188  STDMETHOD(SetVertexShaderConstantF)(THIS_ UINT register_index, const FLOAT *constant_data, UINT register_count) PURE;
189  STDMETHOD(SetVertexShaderConstantI)(THIS_ UINT register_index, const INT *constant_data, UINT register_count) PURE;
190  STDMETHOD(SetVertexShaderConstantB)(THIS_ UINT register_index, const BOOL *constant_data, UINT register_count) PURE;
191  STDMETHOD(SetPixelShader)(THIS_ struct IDirect3DPixelShader9 *shader) PURE;
192  STDMETHOD(SetPixelShaderConstantF)(THIS_ UINT register_index, const FLOAT *constant_data, UINT register_count) PURE;
193  STDMETHOD(SetPixelShaderConstantI)(THIS_ UINT register_index, const INT *constant_data, UINT register_count) PURE;
194  STDMETHOD(SetPixelShaderConstantB)(THIS_ UINT register_index, const BOOL *constant_data, UINT register_count) PURE;
195 };
#define REFIID
Definition: guiddef.h:113
#define THIS_
Definition: basetyps.h:65
_In_ BOOLEAN Release
Definition: classpnp.h:929
#define THIS
Definition: basetyps.h:66
REFIID riid
Definition: precomp.h:44
GLuint GLenum matrix
Definition: glext.h:9407
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
NTSTATUS QueryInterface(IN PDEVICE_OBJECT DeviceObject, IN CONST GUID InterfaceType, IN LONG Size, IN LONG Version, OUT PVOID Interface)
Definition: fdo.c:532
int32_t INT
Definition: typedefs.h:56
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: gl.h:1546
#define STDMETHOD(m)
Definition: basetyps.h:62
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum light
Definition: glfuncs.h:170
unsigned int BOOL
Definition: ntddk_ex.h:94
GLuint shader
Definition: glext.h:6030
GLenum GLuint texture
Definition: glext.h:6295
D3DRENDERSTATETYPE
Definition: d3dtypes.h:874
static FILE * out
Definition: regtests2xml.c:44
unsigned long DWORD
Definition: ntddk_ex.h:95
#define index(s, c)
Definition: various.h:29
enum _D3DSAMPLERSTATETYPE D3DSAMPLERSTATETYPE
static int state
Definition: maze.c:121
GLsizei const GLfloat * value
Definition: glext.h:6069
GLboolean enable
Definition: glext.h:11120
#define PURE
Definition: basetyps.h:64
unsigned int UINT
Definition: ndis.h:50
static ULONG WINAPI AddRef(IStream *iface)
Definition: clist.c:90
float FLOAT
Definition: typedefs.h:67
enum _D3DTEXTURESTAGESTATETYPE D3DTEXTURESTAGESTATETYPE
unsigned int ULONG
Definition: retypes.h:1
enum _D3DTRANSFORMSTATETYPE D3DTRANSFORMSTATETYPE
#define STDMETHOD_(t, m)
Definition: basetyps.h:63
GLuint sampler
Definition: glext.h:7283

◆ DECLARE_INTERFACE_() [4/5]

DECLARE_INTERFACE_ ( ID3DXEffect  ,
ID3DXBaseEffect   
)

Definition at line 204 of file d3dx9effect.h.

205 {
206  /*** IUnknown methods ***/
210  /*** ID3DXBaseEffect methods ***/
212  STDMETHOD(GetParameterDesc)(THIS_ D3DXHANDLE parameter, D3DXPARAMETER_DESC* desc) PURE;
213  STDMETHOD(GetTechniqueDesc)(THIS_ D3DXHANDLE technique, D3DXTECHNIQUE_DESC* desc) PURE;
217  STDMETHOD_(D3DXHANDLE, GetParameterByName)(THIS_ D3DXHANDLE parameter, const char *name) PURE;
218  STDMETHOD_(D3DXHANDLE, GetParameterBySemantic)(THIS_ D3DXHANDLE parameter, const char *semantic) PURE;
219  STDMETHOD_(D3DXHANDLE, GetParameterElement)(THIS_ D3DXHANDLE parameter, UINT index) PURE;
220  STDMETHOD_(D3DXHANDLE, GetTechnique)(THIS_ UINT index) PURE;
221  STDMETHOD_(D3DXHANDLE, GetTechniqueByName)(THIS_ const char *name) PURE;
223  STDMETHOD_(D3DXHANDLE, GetPassByName)(THIS_ D3DXHANDLE technique, const char *name) PURE;
224  STDMETHOD_(D3DXHANDLE, GetFunction)(THIS_ UINT index);
225  STDMETHOD_(D3DXHANDLE, GetFunctionByName)(THIS_ const char *name);
227  STDMETHOD_(D3DXHANDLE, GetAnnotationByName)(THIS_ D3DXHANDLE object, const char *name) PURE;
228  STDMETHOD(SetValue)(THIS_ D3DXHANDLE parameter, const void *data, UINT bytes) PURE;
229  STDMETHOD(GetValue)(THIS_ D3DXHANDLE parameter, void *data, UINT bytes) PURE;
230  STDMETHOD(SetBool)(THIS_ D3DXHANDLE parameter, BOOL b) PURE;
231  STDMETHOD(GetBool)(THIS_ D3DXHANDLE parameter, BOOL* b) PURE;
232  STDMETHOD(SetBoolArray)(THIS_ D3DXHANDLE parameter, const BOOL *b, UINT count) PURE;
233  STDMETHOD(GetBoolArray)(THIS_ D3DXHANDLE parameter, BOOL* b, UINT count) PURE;
234  STDMETHOD(SetInt)(THIS_ D3DXHANDLE parameter, INT n) PURE;
235  STDMETHOD(GetInt)(THIS_ D3DXHANDLE parameter, INT* n) PURE;
236  STDMETHOD(SetIntArray)(THIS_ D3DXHANDLE parameter, const INT *n, UINT count) PURE;
237  STDMETHOD(GetIntArray)(THIS_ D3DXHANDLE parameter, INT* n, UINT count) PURE;
238  STDMETHOD(SetFloat)(THIS_ D3DXHANDLE parameter, FLOAT f) PURE;
239  STDMETHOD(GetFloat)(THIS_ D3DXHANDLE parameter, FLOAT* f) PURE;
240  STDMETHOD(SetFloatArray)(THIS_ D3DXHANDLE parameter, const FLOAT *f, UINT count) PURE;
241  STDMETHOD(GetFloatArray)(THIS_ D3DXHANDLE parameter, FLOAT* f, UINT count) PURE;
242  STDMETHOD(SetVector)(THIS_ D3DXHANDLE parameter, const D3DXVECTOR4 *vector) PURE;
243  STDMETHOD(GetVector)(THIS_ D3DXHANDLE parameter, D3DXVECTOR4* vector) PURE;
244  STDMETHOD(SetVectorArray)(THIS_ D3DXHANDLE parameter, const D3DXVECTOR4 *vector, UINT count) PURE;
245  STDMETHOD(GetVectorArray)(THIS_ D3DXHANDLE parameter, D3DXVECTOR4* vector, UINT count) PURE;
248  STDMETHOD(SetMatrixArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) PURE;
249  STDMETHOD(GetMatrixArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix, UINT count) PURE;
250  STDMETHOD(SetMatrixPointerArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) PURE;
251  STDMETHOD(GetMatrixPointerArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX** matrix, UINT count) PURE;
252  STDMETHOD(SetMatrixTranspose)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix) PURE;
253  STDMETHOD(GetMatrixTranspose)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix) PURE;
254  STDMETHOD(SetMatrixTransposeArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) PURE;
255  STDMETHOD(GetMatrixTransposeArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix, UINT count) PURE;
256  STDMETHOD(SetMatrixTransposePointerArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) PURE;
257  STDMETHOD(GetMatrixTransposePointerArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX** matrix, UINT count) PURE;
258  STDMETHOD(SetString)(THIS_ D3DXHANDLE parameter, const char *string) PURE;
259  STDMETHOD(GetString)(THIS_ D3DXHANDLE parameter, const char **string) PURE;
260  STDMETHOD(SetTexture)(THIS_ D3DXHANDLE parameter, struct IDirect3DBaseTexture9 *texture) PURE;
261  STDMETHOD(GetTexture)(THIS_ D3DXHANDLE parameter, struct IDirect3DBaseTexture9 **texture) PURE;
262  STDMETHOD(GetPixelShader)(THIS_ D3DXHANDLE parameter, struct IDirect3DPixelShader9 **shader) PURE;
263  STDMETHOD(GetVertexShader)(THIS_ D3DXHANDLE parameter, struct IDirect3DVertexShader9 **shader) PURE;
264  STDMETHOD(SetArrayRange)(THIS_ D3DXHANDLE parameter, UINT start, UINT end) PURE;
265  /*** ID3DXEffect methods ***/
266  STDMETHOD(GetPool)(THIS_ ID3DXEffectPool **pool) PURE;
267  STDMETHOD(SetTechnique)(THIS_ D3DXHANDLE technique) PURE;
268  STDMETHOD_(D3DXHANDLE, GetCurrentTechnique)(THIS) PURE;
269  STDMETHOD(ValidateTechnique)(THIS_ D3DXHANDLE technique) PURE;
270  STDMETHOD(FindNextValidTechnique)(THIS_ D3DXHANDLE technique, D3DXHANDLE* next_technique) PURE;
271  STDMETHOD_(BOOL, IsParameterUsed)(THIS_ D3DXHANDLE parameter, D3DXHANDLE technique) PURE;
272  STDMETHOD(Begin)(THIS_ UINT *passes, DWORD flags) PURE;
273  STDMETHOD(BeginPass)(THIS_ UINT pass) PURE;
274  STDMETHOD(CommitChanges)(THIS) PURE;
275  STDMETHOD(EndPass)(THIS) PURE;
276  STDMETHOD(End)(THIS) PURE;
277  STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **device) PURE;
278  STDMETHOD(OnLostDevice)(THIS) PURE;
279  STDMETHOD(OnResetDevice)(THIS) PURE;
280  STDMETHOD(SetStateManager)(THIS_ ID3DXEffectStateManager *manager) PURE;
281  STDMETHOD(GetStateManager)(THIS_ ID3DXEffectStateManager **manager) PURE;
282  STDMETHOD(BeginParameterBlock)(THIS) PURE;
283  STDMETHOD_(D3DXHANDLE, EndParameterBlock)(THIS) PURE;
284  STDMETHOD(ApplyParameterBlock)(THIS_ D3DXHANDLE parameter_block) PURE;
285  STDMETHOD(DeleteParameterBlock)(THIS_ D3DXHANDLE parameter_block) PURE;
286  STDMETHOD(CloneEffect)(THIS_ struct IDirect3DDevice9 *device, struct ID3DXEffect **effect) PURE;
287  STDMETHOD(SetRawValue)(THIS_ D3DXHANDLE parameter, const void *data, UINT byte_offset, UINT bytes) PURE;
288 };
#define REFIID
Definition: guiddef.h:113
#define THIS_
Definition: basetyps.h:65
static TCHAR * GetParameter(TCHAR **pPointer)
Definition: start.c:20
_In_ BOOLEAN Release
Definition: classpnp.h:929
const char * D3DXHANDLE
Definition: d3dx9shader.h:48
#define THIS
Definition: basetyps.h:66
REFIID riid
Definition: precomp.h:44
GLuint GLenum matrix
Definition: glext.h:9407
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLdouble n
Definition: glext.h:7729
GLuint GLuint end
Definition: gl.h:1545
NTSTATUS QueryInterface(IN PDEVICE_OBJECT DeviceObject, IN CONST GUID InterfaceType, IN LONG Size, IN LONG Version, OUT PVOID Interface)
Definition: fdo.c:532
int32_t INT
Definition: typedefs.h:56
#define STDMETHOD(m)
Definition: basetyps.h:62
pass
Definition: typegen.h:24
static unsigned char bytes[4]
Definition: adnsresfilter.c:74
unsigned int BOOL
Definition: ntddk_ex.h:94
Definition: devices.h:37
const struct builtin_class_descr * desc
Definition: regcontrol.c:48
#define b
Definition: ke_i.h:79
GLuint shader
Definition: glext.h:6030
void SetMatrix(HWND hwnd, MATRIX *matrix)
Definition: matrix.c:294
GLenum GLuint texture
Definition: glext.h:6295
static FILE * out
Definition: regtests2xml.c:44
unsigned long DWORD
Definition: ntddk_ex.h:95
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
GLbitfield flags
Definition: glext.h:7161
#define index(s, c)
Definition: various.h:29
char string[160]
Definition: util.h:11
char * GetPass(const char *const prompt)
Definition: util.c:186
GLuint start
Definition: gl.h:1545
#define f
Definition: ke_i.h:83
#define PURE
Definition: basetyps.h:64
unsigned int UINT
Definition: ndis.h:50
static ULONG WINAPI AddRef(IStream *iface)
Definition: clist.c:90
float FLOAT
Definition: typedefs.h:67
unsigned int ULONG
Definition: retypes.h:1
ACPI_BUFFER *RetBuffer ACPI_BUFFER *RetBuffer char ACPI_WALK_RESOURCE_CALLBACK void *Context ACPI_BUFFER *RetBuffer UINT16 ACPI_RESOURCE **ResourcePtr ACPI_GENERIC_ADDRESS *Reg UINT32 *ReturnValue UINT8 UINT8 *Slp_TypB ACPI_PHYSICAL_ADDRESS PhysicalAddress64 UINT32 UINT32 *TimeElapsed UINT32 ACPI_STATUS const char UINT32 ACPI_STATUS const char UINT32 const char const char UINT32 const char BOOLEAN Begin
Definition: acpixf.h:1275
#define STDMETHOD_(t, m)
Definition: basetyps.h:63
MATRIX * GetMatrix(HWND hwnd)
Definition: matrix.c:289
void * object
Definition: jmemsys.h:48
GLuint const GLchar * name
Definition: glext.h:6031

◆ DECLARE_INTERFACE_() [5/5]

DECLARE_INTERFACE_ ( ID3DXEffectCompiler  ,
ID3DXBaseEffect   
)

Definition at line 297 of file d3dx9effect.h.

298 {
299  /*** IUnknown methods ***/
303  /*** ID3DXBaseEffect methods ***/
305  STDMETHOD(GetParameterDesc)(THIS_ D3DXHANDLE parameter, D3DXPARAMETER_DESC* desc) PURE;
306  STDMETHOD(GetTechniqueDesc)(THIS_ D3DXHANDLE technique, D3DXTECHNIQUE_DESC* desc) PURE;
310  STDMETHOD_(D3DXHANDLE, GetParameterByName)(THIS_ D3DXHANDLE parameter, const char *name) PURE;
311  STDMETHOD_(D3DXHANDLE, GetParameterBySemantic)(THIS_ D3DXHANDLE parameter, const char *semantic) PURE;
312  STDMETHOD_(D3DXHANDLE, GetParameterElement)(THIS_ D3DXHANDLE parameter, UINT index) PURE;
313  STDMETHOD_(D3DXHANDLE, GetTechnique)(THIS_ UINT index) PURE;
314  STDMETHOD_(D3DXHANDLE, GetTechniqueByName)(THIS_ const char *name) PURE;
316  STDMETHOD_(D3DXHANDLE, GetPassByName)(THIS_ D3DXHANDLE technique, const char *name) PURE;
317  STDMETHOD_(D3DXHANDLE, GetFunction)(THIS_ UINT index);
318  STDMETHOD_(D3DXHANDLE, GetFunctionByName)(THIS_ const char *name);
320  STDMETHOD_(D3DXHANDLE, GetAnnotationByName)(THIS_ D3DXHANDLE object, const char *name) PURE;
321  STDMETHOD(SetValue)(THIS_ D3DXHANDLE parameter, const void *data, UINT bytes) PURE;
322  STDMETHOD(GetValue)(THIS_ D3DXHANDLE parameter, void *data, UINT bytes) PURE;
323  STDMETHOD(SetBool)(THIS_ D3DXHANDLE parameter, BOOL b) PURE;
324  STDMETHOD(GetBool)(THIS_ D3DXHANDLE parameter, BOOL* b) PURE;
325  STDMETHOD(SetBoolArray)(THIS_ D3DXHANDLE parameter, const BOOL *b, UINT count) PURE;
326  STDMETHOD(GetBoolArray)(THIS_ D3DXHANDLE parameter, BOOL* b, UINT count) PURE;
327  STDMETHOD(SetInt)(THIS_ D3DXHANDLE parameter, INT n) PURE;
328  STDMETHOD(GetInt)(THIS_ D3DXHANDLE parameter, INT* n) PURE;
329  STDMETHOD(SetIntArray)(THIS_ D3DXHANDLE parameter, const INT *n, UINT count) PURE;
330  STDMETHOD(GetIntArray)(THIS_ D3DXHANDLE parameter, INT* n, UINT count) PURE;
331  STDMETHOD(SetFloat)(THIS_ D3DXHANDLE parameter, FLOAT f) PURE;
332  STDMETHOD(GetFloat)(THIS_ D3DXHANDLE parameter, FLOAT* f) PURE;
333  STDMETHOD(SetFloatArray)(THIS_ D3DXHANDLE parameter, const FLOAT *f, UINT count) PURE;
334  STDMETHOD(GetFloatArray)(THIS_ D3DXHANDLE parameter, FLOAT* f, UINT count) PURE;
335  STDMETHOD(SetVector)(THIS_ D3DXHANDLE parameter, const D3DXVECTOR4 *vector) PURE;
336  STDMETHOD(GetVector)(THIS_ D3DXHANDLE parameter, D3DXVECTOR4* vector) PURE;
337  STDMETHOD(SetVectorArray)(THIS_ D3DXHANDLE parameter, const D3DXVECTOR4 *vector, UINT count) PURE;
338  STDMETHOD(GetVectorArray)(THIS_ D3DXHANDLE parameter, D3DXVECTOR4* vector, UINT count) PURE;
341  STDMETHOD(SetMatrixArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) PURE;
342  STDMETHOD(GetMatrixArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix, UINT count) PURE;
343  STDMETHOD(SetMatrixPointerArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) PURE;
344  STDMETHOD(GetMatrixPointerArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX** matrix, UINT count) PURE;
345  STDMETHOD(SetMatrixTranspose)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix) PURE;
346  STDMETHOD(GetMatrixTranspose)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix) PURE;
347  STDMETHOD(SetMatrixTransposeArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) PURE;
348  STDMETHOD(GetMatrixTransposeArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix, UINT count) PURE;
349  STDMETHOD(SetMatrixTransposePointerArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) PURE;
350  STDMETHOD(GetMatrixTransposePointerArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX** matrix, UINT count) PURE;
351  STDMETHOD(SetString)(THIS_ D3DXHANDLE parameter, const char *string) PURE;
352  STDMETHOD(GetString)(THIS_ D3DXHANDLE parameter, const char **string) PURE;
353  STDMETHOD(SetTexture)(THIS_ D3DXHANDLE parameter, struct IDirect3DBaseTexture9 *texture) PURE;
354  STDMETHOD(GetTexture)(THIS_ D3DXHANDLE parameter, struct IDirect3DBaseTexture9 **texture) PURE;
355  STDMETHOD(GetPixelShader)(THIS_ D3DXHANDLE parameter, struct IDirect3DPixelShader9 **shader) PURE;
356  STDMETHOD(GetVertexShader)(THIS_ D3DXHANDLE parameter, struct IDirect3DVertexShader9 **shader) PURE;
357  STDMETHOD(SetArrayRange)(THIS_ D3DXHANDLE parameter, UINT start, UINT end) PURE;
358  /*** ID3DXEffectCompiler methods ***/
359  STDMETHOD(SetLiteral)(THIS_ D3DXHANDLE parameter, BOOL literal) PURE;
360  STDMETHOD(GetLiteral)(THIS_ D3DXHANDLE parameter, BOOL* literal) PURE;
361  STDMETHOD(CompileEffect)(THIS_ DWORD flags, ID3DXBuffer **effect, ID3DXBuffer **error_msgs) PURE;
362  STDMETHOD(CompileShader)(THIS_ D3DXHANDLE function, const char *target, DWORD flags,
363  ID3DXBuffer **shader, ID3DXBuffer **error_msgs, ID3DXConstantTable **constant_table) PURE;
364 };
#define REFIID
Definition: guiddef.h:113
#define THIS_
Definition: basetyps.h:65
static TCHAR * GetParameter(TCHAR **pPointer)
Definition: start.c:20
_In_ BOOLEAN Release
Definition: classpnp.h:929
const char * D3DXHANDLE
Definition: d3dx9shader.h:48
#define THIS
Definition: basetyps.h:66
REFIID riid
Definition: precomp.h:44
GLuint GLenum matrix
Definition: glext.h:9407
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLdouble n
Definition: glext.h:7729
GLuint GLuint end
Definition: gl.h:1545
NTSTATUS QueryInterface(IN PDEVICE_OBJECT DeviceObject, IN CONST GUID InterfaceType, IN LONG Size, IN LONG Version, OUT PVOID Interface)
Definition: fdo.c:532
int32_t INT
Definition: typedefs.h:56
#define STDMETHOD(m)
Definition: basetyps.h:62
pass
Definition: typegen.h:24
static unsigned char bytes[4]
Definition: adnsresfilter.c:74
unsigned int BOOL
Definition: ntddk_ex.h:94
const struct builtin_class_descr * desc
Definition: regcontrol.c:48
struct ID3DXBuffer ID3DXBuffer
Definition: d3dx8core.h:51
#define b
Definition: ke_i.h:79
GLuint shader
Definition: glext.h:6030
void SetMatrix(HWND hwnd, MATRIX *matrix)
Definition: matrix.c:294
GLenum GLuint texture
Definition: glext.h:6295
static FILE * out
Definition: regtests2xml.c:44
unsigned long DWORD
Definition: ntddk_ex.h:95
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
GLbitfield flags
Definition: glext.h:7161
#define index(s, c)
Definition: various.h:29
char string[160]
Definition: util.h:11
char * GetPass(const char *const prompt)
Definition: util.c:186
GLuint start
Definition: gl.h:1545
#define f
Definition: ke_i.h:83
#define PURE
Definition: basetyps.h:64
unsigned int UINT
Definition: ndis.h:50
static ULONG WINAPI AddRef(IStream *iface)
Definition: clist.c:90
float FLOAT
Definition: typedefs.h:67
unsigned int ULONG
Definition: retypes.h:1
GLenum target
Definition: glext.h:7315
#define STDMETHOD_(t, m)
Definition: basetyps.h:63
MATRIX * GetMatrix(HWND hwnd)
Definition: matrix.c:289
void * object
Definition: jmemsys.h:48
GLuint const GLchar * name
Definition: glext.h:6031

◆ DEFINE_GUID() [1/5]

DEFINE_GUID ( IID_ID3DXEffectPool  ,
0x9537ab04  ,
0x3250  ,
0x412e  ,
0x82  ,
0x13  ,
0xfc  ,
0xd2  ,
0xf8  ,
0x67  ,
0x79  ,
0x33   
)

◆ DEFINE_GUID() [2/5]

DEFINE_GUID ( IID_ID3DXBaseEffect  ,
0x17c18ac  ,
0x103f  ,
0x4417  ,
0x8c  ,
0x51  ,
0x6b  ,
0xf6  ,
0xef  ,
0x1e  ,
0x56  ,
0xbe   
)

◆ DEFINE_GUID() [3/5]

DEFINE_GUID ( IID_ID3DXEffectStateManager  ,
0x79aab587  ,
0x6dbc  ,
0x4fa7  ,
0x82  ,
0xde  ,
0x37  ,
0xfa  ,
0x17  ,
0x81  ,
0xc5  ,
0xce   
)

◆ DEFINE_GUID() [4/5]

DEFINE_GUID ( IID_ID3DXEffect  ,
0xf6ceb4b3  ,
0x4e4c  ,
0x40dd  ,
0xb8  ,
0x83  ,
0x8d  ,
0x8d  ,
0xe5  ,
0xea  ,
0xc  ,
0xd5   
)

◆ DEFINE_GUID() [5/5]

DEFINE_GUID ( IID_ID3DXEffectCompiler  ,
0x51b8a949  ,
0x1a31  ,
0x47e6  ,
0xbe  ,
0xa0  ,
0x4b  ,
0x30  ,
0xdb  ,
0x53  ,
0xf1  ,
0xe0   
)