d3dhal.h patch

Ove Kaaven ovehk at ping.uio.no
Sun Apr 15 11:04:44 CDT 2001


Log:
Ove Kaaven <ovek at transgaming.com>
New header d3dhal.h, the Direct3D HAL device driver interface.

Index: wine/include/d3dhal.h
diff -u /dev/null wine/include/d3dhal.h:1.7
--- /dev/null	Sun Apr 15 07:39:00 2001
+++ wine/include/d3dhal.h	Sun Mar 25 02:54:02 2001
@@ -0,0 +1,507 @@
+/* Direct3D driver interface */
+/* (DirectX 7 version) */
+
+#ifndef __WINE_D3DHAL_H
+#define __WINE_D3DHAL_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include "d3d.h"
+
+/*****************************************************************************
+ * device info structures
+ */
+typedef struct _D3DDeviceDesc_V1 {
+  DWORD			dwSize;
+  DWORD			dwFlags;
+  D3DCOLORMODEL		dcmColorModel;
+  DWORD			dwDevCaps;
+  D3DTRANSFORMCAPS	dtcTransformCaps;
+  BOOL			bClipping;
+  D3DLIGHTINGCAPS	dlcLightingCaps;
+  D3DPRIMCAPS		dpcLineCaps;
+  D3DPRIMCAPS		dpcTriCaps;
+  DWORD			dwDeviceRenderBitDepth;
+  DWORD			dwDeviceZBufferBitDepth;
+  DWORD			dwMaxBufferSize;
+  DWORD			dwMaxVertexCount;
+} D3DDEVICEDESC_V1,*LPD3DDEVICEDESC_V1;
+
+/* this is to allow keeping the bulk of our OpenGL code out of x11drv */
+#define D3DDD_WINE_OPENGL_DEVICE 0x00008000
+
+typedef struct _D3DHAL_GLOBALDRIVERDATA {
+  DWORD			dwSize;
+  D3DDEVICEDESC_V1	hwCaps;
+  DWORD			dwNumVertices;
+  DWORD			dwNumClipVertices;
+  DWORD			dwNumTextureFormats;
+  LPDDSURFACEDESC	lpTextureFormats;
+} D3DHAL_GLOBALDRIVERDATA,*LPD3DHAL_GLOBALDRIVERDATA;
+
+typedef struct _D3DHAL_D3DEXTENDEDCAPS {
+  DWORD			dwSize;
+  /* DirectX 5 */
+  DWORD			dwMinTextureWidth, dwMaxTextureWidth;
+  DWORD			dwMinTextureHeight, dwMaxTextureHeight;
+  DWORD			dwMinStippleWidth, dwMaxStippleWidth;
+  DWORD			dwMinStippleHeight, dwMaxStippleHeight;
+  /* DirectX 6 */
+  DWORD			dwMaxTextureRepeat;
+  DWORD			dwMaxTextureAspectRatio;
+  DWORD			dwMaxAnisotropy;
+  D3DVALUE		dvGuardBandLeft;
+  D3DVALUE		dvGuardBandTop;
+  D3DVALUE		dvGuardBandRight;
+  D3DVALUE		dvGuardBandBottom;
+  D3DVALUE		dvExtentsAdjust;
+  DWORD			dwStencilCaps;
+  DWORD			dwFVFCaps;
+  DWORD			dwTextureOpCaps;
+  WORD			wMaxTextureBlendStages;
+  WORD			wMaxSimultaneousTextures;
+  /* DirectX 7 */
+  DWORD			dwMaxActiveLights;
+  D3DVALUE		dvMaxVertexW;
+  WORD			wMaxUserClipPlanes;
+  WORD			wMaxVertexBlendMatrices;
+  DWORD			dwVertexProcessingCaps;
+  DWORD			dwReserved1;
+  DWORD			dwReserved2;
+  DWORD			dwReserved3;
+  DWORD			dwReserved4;
+} D3DHAL_D3DEXTENDEDCAPS,*LPD3DHAL_D3DEXTENDEDCAPS;
+
+/*****************************************************************************
+ * d3d->driver callbacks
+ */
+typedef struct _D3DHAL_CONTEXTCREATEDATA	*LPD3DHAL_CONTEXTCREATEDATA;
+typedef struct _D3DHAL_CONTEXTDESTROYDATA	*LPD3DHAL_CONTEXTDESTROYDATA;
+typedef struct _D3DHAL_CONTEXTDESTROYALLDATA	*LPD3DHAL_CONTEXTDESTROYALLDATA;
+typedef struct _D3DHAL_SCENECAPTUREDATA		*LPD3DHAL_SCENECAPTUREDATA;
+typedef struct _D3DHAL_RENDERSTATEDATA		*LPD3DHAL_RENDERSTATEDATA;
+typedef struct _D3DHAL_RENDERPRIMITIVEDATA	*LPD3DHAL_RENDERPRIMITIVEDATA;
+typedef struct _D3DHAL_TEXTURECREATEDATA	*LPD3DHAL_TEXTURECREATEDATA;
+typedef struct _D3DHAL_TEXTUREDESTROYDATA	*LPD3DHAL_TEXTUREDESTROYDATA;
+typedef struct _D3DHAL_TEXTURESWAPDATA		*LPD3DHAL_TEXTURESWAPDATA;
+typedef struct _D3DHAL_TEXTUREGETSURFDATA	*LPD3DHAL_TEXTUREGETSURFDATA;
+typedef struct _D3DHAL_GETSTATEDATA		*LPD3DHAL_GETSTATEDATA;
+
+typedef DWORD PASCAL (*LPD3DHAL_CONTEXTCREATECB)    (LPD3DHAL_CONTEXTCREATEDATA);
+typedef DWORD PASCAL (*LPD3DHAL_CONTEXTDESTROYCB)   (LPD3DHAL_CONTEXTDESTROYDATA);
+typedef DWORD PASCAL (*LPD3DHAL_CONTEXTDESTROYALLCB)(LPD3DHAL_CONTEXTDESTROYALLDATA);
+typedef DWORD PASCAL (*LPD3DHAL_SCENECAPTURECB)	    (LPD3DHAL_SCENECAPTUREDATA);
+typedef DWORD PASCAL (*LPD3DHAL_RENDERSTATECB)	    (LPD3DHAL_RENDERSTATEDATA);
+typedef DWORD PASCAL (*LPD3DHAL_RENDERPRIMITIVECB)  (LPD3DHAL_RENDERPRIMITIVEDATA);
+typedef DWORD PASCAL (*LPD3DHAL_TEXTURECREATECB)    (LPD3DHAL_TEXTURECREATEDATA);
+typedef DWORD PASCAL (*LPD3DHAL_TEXTUREDESTROYCB)   (LPD3DHAL_TEXTUREDESTROYDATA);
+typedef DWORD PASCAL (*LPD3DHAL_TEXTURESWAPCB)	    (LPD3DHAL_TEXTURESWAPDATA);
+typedef DWORD PASCAL (*LPD3DHAL_TEXTUREGETSURFCB)   (LPD3DHAL_TEXTUREGETSURFDATA);
+typedef DWORD PASCAL (*LPD3DHAL_GETSTATECB)	    (LPD3DHAL_GETSTATEDATA);
+
+typedef struct _D3DHAL_CALLBACKS {
+  DWORD				dwSize;
+  LPD3DHAL_CONTEXTCREATECB	ContextCreate;
+  LPD3DHAL_CONTEXTDESTROYCB	ContextDestroy;
+  LPD3DHAL_CONTEXTDESTROYALLCB	ContextDestroyAll;
+  LPD3DHAL_SCENECAPTURECB	SceneCapture;
+  LPVOID			lpReserved10;
+  LPVOID			lpReserved11;
+  LPD3DHAL_RENDERSTATECB	RenderState;
+  LPD3DHAL_RENDERPRIMITIVECB	RenderPrimitive;
+  DWORD				dwReserved;
+  LPD3DHAL_TEXTURECREATECB	TextureCreate;
+  LPD3DHAL_TEXTUREDESTROYCB	TextureDestroy;
+  LPD3DHAL_TEXTURESWAPCB	TextureSwap;
+  LPD3DHAL_TEXTUREGETSURFCB	TextureGetSurf;
+  /* now why did MS create CALLBACKS2 and CALLBACKS3 structures if
+   * all these reserved fields were available? we may never know */
+  LPVOID			lpReserved12;
+  LPVOID			lpReserved13;
+  LPVOID			lpReserved14;
+  LPVOID			lpReserved15;
+  LPVOID			lpReserved16;
+  LPVOID			lpReserved17;
+  LPVOID			lpReserved18;
+  LPVOID			lpReserved19;
+  LPVOID			lpReserved20;
+  LPVOID			lpReserved21;
+  LPD3DHAL_GETSTATECB		GetState;
+  DWORD				dwReserved0;
+  DWORD				dwReserved1;
+  DWORD				dwReserved2;
+  DWORD				dwReserved3;
+  DWORD				dwReserved4;
+  DWORD				dwReserved5;
+  DWORD				dwReserved6;
+  DWORD				dwReserved7;
+  DWORD				dwReserved8;
+  DWORD				dwReserved9;
+} D3DHAL_CALLBACKS,*LPD3DHAL_CALLBACKS;
+
+typedef struct _D3DHAL_SETRENDERTARGETDATA		*LPD3DHAL_SETRENDERTARGETDATA;
+typedef struct _D3DHAL_CLEARDATA			*LPD3DHAL_CLEARDATA;
+typedef struct _D3DHAL_DRAWONEPRIMITIVEDATA		*LPD3DHAL_DRAWONEPRIMITIVEDATA;
+typedef struct _D3DHAL_DRAWONEINDEXEDPRIMITIVEDATA	*LPD3DHAL_DRAWONEINDEXEDPRIMITIVEDATA;
+typedef struct _D3DHAL_DRAWPRIMITIVESDATA		*LPD3DHAL_DRAWPRIMITIVESDATA;
+
+typedef DWORD PASCAL (*LPD3DHAL_SETRENDERTARGETCB)	  (LPD3DHAL_SETRENDERTARGETDATA);
+typedef DWORD PASCAL (*LPD3DHAL_CLEARCB)		  (LPD3DHAL_CLEARDATA);
+typedef DWORD PASCAL (*LPD3DHAL_DRAWONEPRIMITIVECB)	  (LPD3DHAL_DRAWONEPRIMITIVEDATA);
+typedef DWORD PASCAL (*LPD3DHAL_DRAWONEINDEXEDPRIMITIVECB)(LPD3DHAL_DRAWONEINDEXEDPRIMITIVEDATA);
+typedef DWORD PASCAL (*LPD3DHAL_DRAWPRIMITIVESCB)	  (LPD3DHAL_DRAWPRIMITIVESDATA);
+
+typedef struct _D3DHAL_CALLBACKS2 {
+  DWORD					dwSize;
+  DWORD					dwFlags;
+  LPD3DHAL_SETRENDERTARGETCB		SetRenderTarget;
+  LPD3DHAL_CLEARCB			Clear;
+  LPD3DHAL_DRAWONEPRIMITIVECB		DrawOnePrimitive;
+  LPD3DHAL_DRAWONEINDEXEDPRIMITIVECB	DrawOneIndexedPrimitive;
+  LPD3DHAL_DRAWPRIMITIVESCB		DrawPrimitives;
+} D3DHAL_CALLBACKS2,*LPD3DHAL_CALLBACKS2;
+
+typedef struct _D3DHAL_CLEAR2DATA			*LPD3DHAL_CLEAR2DATA;
+typedef struct _D3DHAL_VALIDATETEXTURESTAGESTATEDATA	*LPD3DHAL_VALIDATETEXTURESTAGESTATEDATA;
+typedef struct _D3DHAL_DRAWPRIMITIVES2DATA		*LPD3DHAL_DRAWPRIMITIVES2DATA;
+
+typedef DWORD PASCAL (*LPD3DHAL_CLEAR2CB)		  (LPD3DHAL_CLEAR2DATA);
+typedef DWORD PASCAL (*LPD3DHAL_VALIDATETEXTURESTAGESTATECB)(LPD3DHAL_VALIDATETEXTURESTAGESTATEDATA);
+typedef DWORD PASCAL (*LPD3DHAL_DRAWPRIMITIVES2CB)	  (LPD3DHAL_DRAWPRIMITIVES2DATA);
+
+typedef struct _D3DHAL_CALLBACKS3 {
+  DWORD					dwSize;
+  DWORD					dwFlags;
+  LPD3DHAL_CLEAR2CB			Clear2;
+  LPVOID				lpvReserved;
+  LPD3DHAL_VALIDATETEXTURESTAGESTATECB	ValidateTextureStageState;
+  LPD3DHAL_DRAWPRIMITIVES2CB		DrawPrimitives2;
+} D3DHAL_CALLBACKS3,*LPD3DHAL_CALLBACKS3;
+
+/*****************************************************************************
+ * parameter structures
+ */
+typedef struct _D3DHAL_CONTEXTCREATEDATA {
+  union {
+    LPDDRAWI_DIRECTDRAW_GBL	lpDDGbl; /* pre-DirectX 7 */
+    LPDDRAWI_DIRECTDRAW_LCL	lpDDLcl; /* DirectX 7 */
+  } DUMMYUNIONNAME1;
+  union {
+    LPDIRECTDRAWSURFACE		lpDDS;
+    LPDDRAWI_DDRAWSURFACE_LCL	lpDDSLcl; /* DirectX 7 */
+  } DUMMYUNIONNAME2;
+  union {
+    LPDIRECTDRAWSURFACE		lpDDSZ;
+    LPDDRAWI_DDRAWSURFACE_LCL	lpDDSZLcl; /* DirectX 7 */
+  } DUMMYUNIONNAME3;
+  union {
+    DWORD			dwPID;
+    ULONG_PTR			dwrstates;
+  } DUMMYUNIONNAME4;
+  ULONG_PTR			dwhContext;
+  HRESULT			ddrval;
+} D3DHAL_CONTEXTCREATEDATA;
+
+typedef struct _D3DHAL_CONTEXTDESTROYDATA {
+  ULONG_PTR			dwhContext;
+  HRESULT			ddrval;
+} D3DHAL_CONTEXTDESTROYDATA;
+
+typedef struct _D3DHAL_CONTEXTDESTROYALLDATA {
+  DWORD				dwPID;
+  HRESULT			ddrval;
+} D3DHAL_CONTEXTDESTROYALLDATA;
+
+typedef struct _D3DHAL_SCENECAPTUREDATA {
+  ULONG_PTR			dwhContext;
+  DWORD				dwFlag;
+  HRESULT			ddrval;
+} D3DHAL_SCENECAPTUREDATA;
+
+#define D3DHAL_SCENE_CAPTURE_START	0x00000000
+#define D3DHAL_SCENE_CAPTURE_END	0x00000001
+
+typedef struct _D3DHAL_SETRENDERTARGETDATA {
+  ULONG_PTR			dwhContext;
+  union {
+    LPDIRECTDRAWSURFACE		lpDDS;
+    LPDDRAWI_DDRAWSURFACE_LCL	lpDDSLcl;
+  } DUMMYUNIONNAME1;
+  union {
+    LPDIRECTDRAWSURFACE		lpDDSZ;
+    LPDDRAWI_DDRAWSURFACE_LCL	lpDDSZLcl;
+  } DUMMYUNIONNAME2;
+  HRESULT			ddrval;
+} D3DHAL_SETRENDERTARGETDATA;
+
+typedef struct _D3DHAL_DRAWPRIMITIVES2DATA {
+  ULONG_PTR			dwhContext;
+  DWORD				dwFlags;
+  DWORD				dwVertexType;
+  LPDDRAWI_DDRAWSURFACE_LCL	lpDDCommands;
+  DWORD				dwCommandOffset;
+  DWORD				dwCommandLength;
+  union {
+    LPDDRAWI_DDRAWSURFACE_LCL	lpDDVertex;
+    LPVOID			lpVertices;
+  } DUMMYUNIONNAME1;
+  DWORD				dwVertexOffset;
+  DWORD				dwVertexLength;
+  DWORD				dwReqVertexBufSize;
+  DWORD				dwReqCommandBufSize;
+  LPDWORD			lpdwRStates;
+  union {
+    DWORD			dwVertexSize;
+    HRESULT			ddrval;
+  } DUMMYUNIONNAME2;
+  DWORD				dwErrorOffset;
+} D3DHAL_DRAWPRIMITIVES2DATA;
+
+#define D3DHALDP2_USERMEMVERTICES	0x00000001
+#define D3DHALDP2_EXECUTEBUFFER		0x00000002
+#define D3DHALDP2_SWAPVERTEXBUFFER	0x00000004
+#define D3DHALDP2_SWAPCOMMANDBUFFER	0x00000008
+#define D3DHALDP2_REQVERTEXBUFSIZE	0x00000010
+#define D3DHALDP2_REQCOMMANDBUFSIZE	0x00000020
+#define D3DHALDP2_VIDMEMVERTEXBUF	0x00000040
+#define D3DHALDP2_VIDMEMCOMMANDBUF	0x00000080
+
+/*****************************************************************************
+ * DrawPrimitives2 command structures
+ */
+typedef struct _D3DHAL_DP2COMMAND {
+  BYTE bCommand;
+  BYTE bReserved;
+  union {
+    WORD wPrimitiveCount;
+    WORD wStateCount;
+  } DUMMYUNIONNAME;
+} D3DHAL_DP2COMMAND,*LPD3DHAL_DP2COMMAND;
+
+typedef enum _D3DHAL_DP2OPERATION {
+  D3DDP2OP_POINTS		= 1,
+  D3DDP2OP_INDEXEDLINELIST	= 2,
+  D3DDP2OP_INDEXEDTRIANGLELIST	= 3,
+  D3DDP2OP_RESERVED0		= 4,
+  D3DDP2OP_RENDERSTATE		= 8,
+  D3DDP2OP_LINELIST		= 15,
+  D3DDP2OP_LINESTRIP		= 16,
+  D3DDP2OP_INDEXEDLINESTRIP	= 17,
+  D3DDP2OP_TRIANGLELIST		= 18,
+  D3DDP2OP_TRIANGLESTRIP	= 19,
+  D3DDP2OP_INDEXEDTRIANGLESTRIP	= 20,
+  D3DDP2OP_TRIANGLEFAN		= 21,
+  D3DDP2OP_INDEXEDTRIANGLEFAN	= 22,
+  D3DDP2OP_TRIANGLEFAN_IMM	= 23,
+  D3DDP2OP_LINELIST_IMM		= 24,
+  D3DDP2OP_TEXTURESTAGESTATE	= 25,
+  D3DDP2OP_INDEXEDTRIANGLELIST2	= 26,
+  D3DDP2OP_INDEXEDLINELIST2	= 27,
+  D3DDP2OP_VIEWPORTINFO		= 28,
+  D3DDP2OP_WINFO		= 29,
+  /* pre-DirectX 7 interfaces */
+  D3DDP2OP_SETPALETTE		= 30,
+  D3DDP2OP_UPDATEPALETTE	= 31,
+  /* DirectX 7 interfaces */
+  D3DDP2OP_ZRANGE		= 32,
+  D3DDP2OP_SETMATERIAL		= 33,
+  D3DDP2OP_SETLIGHT		= 34,
+  D3DDP2OP_CREATELIGHT		= 35,
+  D3DDP2OP_SETTRANSFORM		= 36,
+  D3DDP2OP_EXT			= 37,
+  D3DDP2OP_TEXBLT		= 38,
+  D3DDP2OP_STATESET		= 39,
+  D3DDP2OP_SETPRIORITY		= 40,
+  /* all interfaces */
+  D3DDP2OP_SETRENDERTARGET	= 41,
+  D3DDP2OP_CLEAR		= 42,
+  /* DirectX 7 interfaces */
+  D3DDP2OP_SETTEXLOD		= 43,
+  D3DPP2OP_SETCLIPPLANE		= 44
+} D3DHAL_DP2OPERATION;
+
+/* point primitives */
+
+typedef struct _D3DHAL_POINTS {
+  WORD wCount;
+  WORD wVStart;
+} D3DHAL_DP2POINTS,*LPD3DHAL_DP2POINTS;
+
+/* line primitives */
+
+typedef struct _D3DHAL_DP2STARTVERTEX {
+  WORD wVStart;
+} D3DHAL_DP2STARTVERTEX,*LPD3DHAL_DP2STARTVERTEX;
+
+typedef struct _D3DHAL_DP2LINELIST {
+  WORD wVStart;
+} D3DHAL_DP2LINELIST,*LPD3DHAL_DP2LINELIST;
+
+typedef struct _D3DHAL_DP2INDEXEDLINELIST {
+  WORD wV1;
+  WORD wV2;
+} D3DHAL_DP2INDEXEDLINELIST,*LPD3DHAL_DP2INDEXEDLINELIST;
+
+typedef struct _D3DHAL_DP2LINESTRIP {
+  WORD wVStart;
+} D3DHAL_DP2LINESTRIP,*LPD3DHAL_DP2LINESTRIP;
+
+typedef struct _D3DHAL_DP2INDEXEDLINESTRIP {
+  WORD wV[2];
+} D3DHAL_DP2INDEXEDLINESTRIP,*LPD3DHAL_DP2INDEXEDLINESTRIP;
+
+/* triangle primitives */
+
+typedef struct _D3DHAL_DP2TRIANGLELIST {
+  WORD wVStart;
+} D3DHAL_DP2TRIANGLELIST,*LPD3DHAL_DP2TRIANGLELIST;
+
+typedef struct _D3DHAL_DP2INDEXEDTRIANGLELIST {
+  WORD wV1;
+  WORD wV2;
+  WORD wV3;
+  WORD wFlags;
+} D3DHAL_DP2INDEXEDTRIANGLELIST,*LPD3DHAL_DP2INDEXEDTRIANGLELIST;
+
+typedef struct _D3DHAL_DP2INDEXEDTRIANGLELIST2 {
+  WORD wV1;
+  WORD wV2;
+  WORD wV3;
+} D3DHAL_DP2INDEXEDTRIANGLELIST2,*LPD3DHAL_DP2INDEXEDTRIANGLELIST2;
+
+typedef struct _D3DHAL_DP2TRIANGLESTRIP {
+  WORD wVStart;
+} D3DHAL_DP2TRIANGLESTRIP,*LPD3DHAL_DP2TRIANGLESTRIP;
+
+typedef struct _D3DHAL_DP2INDEXEDTRIANGLESTRIP {
+  WORD wV[3];
+} D3DHAL_DP2INDEXEDTRIANGLESTRIP,*LPD3DHAL_DP2INDEXEDTRIANGLESTRIP;
+
+typedef struct _D3DHAL_DP2TRIANGLEFAN {
+  WORD wVStart;
+} D3DHAL_DP2TRIANGLEFAN,*LPD3DHAL_DP2TRIANGLEFAN;
+
+typedef struct _D3DHAL_DP2INDEXEDTRIANGLEFAN {
+  WORD wV[3];
+} D3DHAL_DP2INDEXEDTRIANGLEFAN,*LPD3DHAL_DP2INDEXEDTRIANGLEFAN;
+
+typedef struct _D3DHAL_DP2TRIANGLEFAN_IMM {
+  DWORD dwEdgeFlags;
+} D3DHAL_DP2TRIANGLEFAN_IMM,*LPD3DHAL_DP2TRIANGLEFAN_IMM;
+
+/* render states */
+typedef struct _D3DHAL_DP2RENDERSTATE {
+  D3DRENDERSTATETYPE	RenderState;
+  union {
+    D3DVALUE dvState;
+    DWORD dwState;
+  } DUMMYUNIONNAME;
+} D3DHAL_DP2RENDERSTATE,*LPD3DHAL_DP2RENDERSTATE;
+
+typedef struct _D3DHAL_DP2TEXTURESTAGESTATE {
+  WORD	wStage;
+  WORD	TSState;
+  DWORD dwValue;
+} D3DHAL_DP2TEXTURESTAGESTATE,*LPD3DHAL_DP2TEXTURESTAGESTATE;
+
+#define D3DTSS_TEXTUREMAP 0
+
+typedef struct _D3DHAL_DP2VIEWPORTINFO {
+  DWORD dwX;
+  DWORD dwY;
+  DWORD dwWidth;
+  DWORD dwHeight;
+} D3DHAL_DP2VIEWPORTINFO,*LPD3DHAL_DP2VIEWPORTINFO;
+
+typedef struct _D3DHAL_DP2WINFO {
+  D3DVALUE dwWNear;
+  D3DVALUE dwWFar;
+} D3DHAL_DP2WINFO,*LPD3DHAL_DP2WINFO;
+
+typedef struct _D3DHAL_DP2SETPALETTE {
+  DWORD dwPaletteHandle;
+  DWORD dwPaletteFlags;
+  DWORD dwSurfaceHandle;
+} D3DHAL_DP2SETPALETTE,*LPD3DHAL_DP2SETPALETTE;
+
+typedef struct _D3DHAL_DP2UPDATEPALETTE {
+  DWORD dwPaletteHandle;
+  WORD	wStartIndex;
+  WORD	wNumEntries;
+} D3DHAL_DP2UPDATEPALETTE,*LPD3DHAL_DP2UPDATEPALETTE;
+
+typedef struct _D3DHAL_DP2ZRANGE {
+  D3DVALUE dvMinZ;
+  D3DVALUE dvMaxZ;
+} D3DHAL_DP2ZRANGE,*LPD3DHAL_DP2ZRANGE;
+
+typedef D3DMATERIAL7 D3DHAL_DP2SETMATERIAL,*LPD3DHAL_DP2SETMATERIAL;
+
+typedef struct _D3DHAL_DP2SETLIGHT {
+  DWORD dwIndex;
+  DWORD dwDataType;
+} D3DHAL_DP2SETLIGHT,*LPD3DHAL_DP2SETLIGHT;
+
+#define D3DHAL_SETLIGHT_ENABLE	0
+#define D3DHAL_SETLIGHT_DISABLE	1
+#define D3DHAL_SETLIGHT_DATA	2
+
+typedef struct _D3DHAL_DP2CREATELIGHT {
+  DWORD dwIndex;
+} D3DHAL_DP2CREATELIGHT,*LPD3DHAL_DP2CREATELIGHT;
+
+typedef struct _D3DHAL_DP2SETTRANSFORM {
+  D3DTRANSFORMSTATETYPE	xfrmType;
+  D3DMATRIX		matrix;
+} D3DHAL_DP2SETTRANSFORM,*LPD3DHAL_DP2SETTRANSFORM;
+
+typedef struct _D3DHAL_DP2TEXBLT {
+  DWORD dwDDDestSurface;
+  DWORD dwDDSrcSurface;
+  POINT pDest;
+  RECTL rSrc;
+  DWORD dwFlags;
+} D3DHAL_DP2TEXBLT,*LPD3DHAL_DP2TEXBLT;
+
+typedef struct _D3DHAL_DP2STATESET {
+  DWORD               dwOperation;
+  DWORD               dwParam;
+  D3DSTATEBLOCKTYPE   sbType;
+} D3DHAL_DP2STATESET,*LPD3DHAL_DP2STATESET;
+
+#define D3DHAL_STATESETBEGIN	0
+#define D3DHAL_STATESETEND	1
+#define D3DHAL_STATESETDELETE	2
+#define D3DHAL_STATESETEXECUTE	3
+#define D3DHAL_STATESETCAPTURE	4
+
+typedef struct _D3DHAL_DP2SETPRIORITY {
+  DWORD dwDDSurface;
+  DWORD dwPriority;
+} D3DHAL_DP2SETPRIORITY,*LPD3DHAL_DP2SETPRIORITY;
+
+typedef struct _D3DHAL_DP2SETRENDERTARGET {
+  DWORD hRenderTarget;
+  DWORD hZBuffer;
+} D3DHAL_DP2SETRENDERTARGET,*LPD3DHAL_DP2SETRENDERTARGET;
+
+typedef struct _D3DHAL_DP2CLEAR {
+  DWORD		dwFlags;
+  DWORD		dwFillColor;
+  D3DVALUE	dvFillDepth;
+  DWORD		dwFillStencil;
+  RECT		Rects[1];
+} D3DHAL_DP2CLEAR,*LPD3DHAL_DP2CLEAR;
+
+typedef struct _D3DHAL_DP2SETTEXLOD {
+  DWORD dwDDSurface;
+  DWORD dwLOD;
+} D3DHAL_DP2SETTEXLOD,*LPD3DHAL_DP2SETTEXLOD;
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* __WINE_DDRAWI_H */





More information about the wine-patches mailing list