blob: b7132d88b262fb1d8acc34bd61d8237e062fcdb0 [file] [log] [blame]
Raphael Junqueirae31ae922002-12-17 01:15:15 +00001/*
2 * Direct3D X 8 private include file
3 *
4 * Copyright 2002 Raphael Junqueira
5 *
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.
10 *
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.
15 *
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
19 */
20
21#ifndef __WINE_D3DX8CORE_PRIVATE_H
22#define __WINE_D3DX8CORE_PRIVATE_H
23
24#include "d3dx8core.h"
25
26/* Interfaces */
27typedef struct ID3DXBufferImpl ID3DXBufferImpl;
28typedef struct ID3DXFontImpl ID3DXFontImpl;
29
30/* ----------- */
31/* ID3DXBuffer */
32/* ----------- */
33
34/*****************************************************************************
35 * Predeclare the interface implementation structures
36 */
37extern ICOM_VTABLE(ID3DXBuffer) D3DXBuffer_Vtbl;
38
39/*****************************************************************************
40 * ID3DXBufferImpl implementation structure
41 */
42struct ID3DXBufferImpl
43{
44 /* IUnknown fields */
45 ICOM_VFIELD(ID3DXBuffer);
46 DWORD ref;
47
48 /* ID3DXBuffer fields */
49 DWORD *buffer;
50 DWORD bufferSize;
51};
52
53/* IUnknown: */
54extern HRESULT WINAPI ID3DXBufferImpl_QueryInterface(LPD3DXBUFFER iface, REFIID refiid, LPVOID *obj);
55extern ULONG WINAPI ID3DXBufferImpl_AddRef(LPD3DXBUFFER iface);
56extern ULONG WINAPI ID3DXBufferImpl_Release(LPD3DXBUFFER iface);
57
58/* ID3DXBuffer: */
59extern LPVOID WINAPI ID3DXBufferImpl_GetBufferPointer(LPD3DXBUFFER iface);
60extern DWORD WINAPI ID3DXBufferImpl_GetBufferSize(LPD3DXBUFFER iface);
61
62/* --------- */
63/* ID3DXFont */
64/* --------- */
65
66/*****************************************************************************
67 * Predeclare the interface implementation structures
68 */
69extern ICOM_VTABLE(ID3DXFont) D3DXFont_Vtbl;
70
71/*****************************************************************************
72 * ID3DXFontImpl implementation structure
73 */
74struct ID3DXFontImpl
75{
76 /* IUnknown fields */
77 ICOM_VFIELD(ID3DXFont);
78 DWORD ref;
79
80 /* ID3DXFont fields */
81};
82
83/* IUnknown: */
84extern HRESULT WINAPI ID3DXFontImpl_QueryInterface(LPD3DXFONT iface, REFIID refiid, LPVOID *obj);
85extern ULONG WINAPI ID3DXFontImpl_AddRef(LPD3DXFONT iface);
86extern ULONG WINAPI ID3DXFontImpl_Release(LPD3DXFONT iface);
87
88/* ID3DXFont: */
89extern INT WINAPI ID3DXFontImpl_DrawTextA(LPCSTR pString, INT Count, LPRECT pRect, DWORD Format, D3DCOLOR Color);
90
91#endif /*__WINE_D3DX8CORE_PRIVATE_H */