ntdll: More compatible exception information for protection faults.
[wine/multimedia.git] / dlls / d3dx8 / d3dx8_main.c
blob2dc6da74c66af10e6345f6d7e55832245374a5d4
1 /*
2 * Direct3D X 8 main file
4 * Copyright (C) 2002 Raphael Junqueira
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22 #include "config.h"
23 #include "wine/port.h"
25 #include <stdarg.h>
27 #include "windef.h"
28 #include "winbase.h"
29 #include "wingdi.h"
30 #include "winuser.h"
31 #include "wine/debug.h"
33 #include "d3dx8core.h"
34 #include "d3dx8core_private.h"
37 WINE_DEFAULT_DEBUG_CHANNEL(d3d);
39 HRESULT WINAPI D3DXCreateBuffer(DWORD NumBytes, LPD3DXBUFFER* ppBuffer) {
40 ID3DXBufferImpl *object;
42 object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(ID3DXBufferImpl));
43 if (NULL == object) {
44 *ppBuffer = (LPD3DXBUFFER)NULL;
45 return E_OUTOFMEMORY;
47 object->lpVtbl = &D3DXBuffer_Vtbl;
48 object->ref = 1;
49 object->bufferSize = NumBytes;
50 object->buffer = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, NumBytes);
51 if (NULL == object->buffer) {
52 HeapFree(GetProcessHeap(), 0, object);
53 *ppBuffer = (LPD3DXBUFFER)NULL;
54 return E_OUTOFMEMORY;
56 *ppBuffer = (LPD3DXBUFFER)object;
57 return D3D_OK;
60 HRESULT WINAPI D3DXCreateFont(LPDIRECT3DDEVICE8 pDevice, HFONT hFont, LPD3DXFONT* ppFont) {
61 FIXME("(void): stub\n");
62 return D3D_OK;
65 UINT WINAPI D3DXGetFVFVertexSize(DWORD FVF) {
66 FIXME("(void): stub\n");
67 return 0;
70 HRESULT WINAPI D3DXAssembleShader(LPCVOID pSrcData, UINT SrcDataLen, DWORD Flags,
71 LPD3DXBUFFER* ppConstants,
72 LPD3DXBUFFER* ppCompiledShader,
73 LPD3DXBUFFER* ppCompilationErrors) {
74 FIXME("(void): stub\n");
75 return D3D_OK;
78 HRESULT WINAPI D3DXAssembleShaderFromFileA(LPSTR pSrcFile, DWORD Flags,
79 LPD3DXBUFFER* ppConstants,
80 LPD3DXBUFFER* ppCompiledShader,
81 LPD3DXBUFFER* ppCompilationErrors) {
82 FIXME("(void): stub\n");
83 return D3D_OK;
86 HRESULT WINAPI D3DXAssembleShaderFromFileW(LPSTR pSrcFile, DWORD Flags,
87 LPD3DXBUFFER* ppConstants,
88 LPD3DXBUFFER* ppCompiledShader,
89 LPD3DXBUFFER* ppCompilationErrors) {
90 FIXME("(void): stub\n");
91 return D3D_OK;