* Made it possible to include both d3d9types.h and ddrawgdi.h at the same time
[reactos.git] / reactos / include / ddk / d3dhal.h
index db1f0b7..325e186 100644 (file)
  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  */
 
-#ifndef __WINE_D3DHAL_H
-#define __WINE_D3DHAL_H
+#ifndef _D3DHAL_H_
+#define _D3DHAL_H_
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
-#include <ddk\ddrawi.h>
 #include <d3d.h>
 
+#define D3DERR_COMMAND_UNPARSED 0x88760BB8;
+
 /*****************************************************************************
  * device info structures
  */
@@ -58,7 +59,12 @@ typedef struct _D3DHAL_GLOBALDRIVERDATA {
   DWORD                        dwNumClipVertices;
   DWORD                        dwNumTextureFormats;
   LPDDSURFACEDESC      lpTextureFormats;
-} D3DHAL_GLOBALDRIVERDATA,*LPD3DHAL_GLOBALDRIVERDATA;
+} D3DHAL_GLOBALDRIVERDATA;
+
+#ifndef D3DHAL_GLOBALDRIVERDATA_DEFINED
+typedef D3DHAL_GLOBALDRIVERDATA *LPD3DHAL_GLOBALDRIVERDATA;
+#define D3DHAL_GLOBALDRIVERDATA_DEFINED
+#endif
 
 typedef struct _D3DHAL_D3DEXTENDEDCAPS {
   DWORD                        dwSize;
@@ -158,7 +164,12 @@ typedef struct _D3DHAL_CALLBACKS {
   DWORD                                dwReserved7;
   DWORD                                dwReserved8;
   DWORD                                dwReserved9;
-} D3DHAL_CALLBACKS,*LPD3DHAL_CALLBACKS;
+} D3DHAL_CALLBACKS;
+
+#ifndef D3DHAL_CALLBACKS_DEFINED
+typedef D3DHAL_CALLBACKS *LPD3DHAL_CALLBACKS;
+#define D3DHAL_CALLBACKS_DEFINED
+#endif
 
 typedef struct _D3DHAL_SETRENDERTARGETDATA             *LPD3DHAL_SETRENDERTARGETDATA;
 typedef struct _D3DHAL_CLEARDATA                       *LPD3DHAL_CLEARDATA;
@@ -303,7 +314,6 @@ 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,
@@ -329,7 +339,6 @@ typedef enum _D3DHAL_DP2OPERATION {
   D3DDP2OP_SETLIGHT            = 34,
   D3DDP2OP_CREATELIGHT         = 35,
   D3DDP2OP_SETTRANSFORM                = 36,
-  D3DDP2OP_EXT                 = 37,
   D3DDP2OP_TEXBLT              = 38,
   D3DDP2OP_STATESET            = 39,
   D3DDP2OP_SETPRIORITY         = 40,
@@ -338,7 +347,58 @@ typedef enum _D3DHAL_DP2OPERATION {
   D3DDP2OP_CLEAR               = 42,
   /* DirectX 7 interfaces */
   D3DDP2OP_SETTEXLOD           = 43,
-  D3DPP2OP_SETCLIPPLANE                = 44
+  D3DPP2OP_SETCLIPPLANE                = 44,
+#if(DIRECT3D_VERSION >= 0x0800)
+  D3DDP2OP_CREATEVERTEXSHADER   = 45,
+  D3DDP2OP_DELETEVERTEXSHADER   = 46,
+  D3DDP2OP_SETVERTEXSHADER      = 47,
+  D3DDP2OP_SETVERTEXSHADERCONST = 48,
+  D3DDP2OP_SETSTREAMSOURCE      = 49,
+  D3DDP2OP_SETSTREAMSOURCEUM    = 50,
+  D3DDP2OP_SETINDICES           = 51,
+  D3DDP2OP_DRAWPRIMITIVE        = 52,
+  D3DDP2OP_DRAWINDEXEDPRIMITIVE = 53,
+  D3DDP2OP_CREATEPIXELSHADER    = 54,
+  D3DDP2OP_DELETEPIXELSHADER    = 55,
+  D3DDP2OP_SETPIXELSHADER       = 56,
+  D3DDP2OP_SETPIXELSHADERCONST  = 57,
+  D3DDP2OP_CLIPPEDTRIANGLEFAN   = 58,
+  D3DDP2OP_DRAWPRIMITIVE2       = 59,
+  D3DDP2OP_DRAWINDEXEDPRIMITIVE2= 60,
+  D3DDP2OP_DRAWRECTPATCH        = 61,
+  D3DDP2OP_DRAWTRIPATCH         = 62,
+  D3DDP2OP_VOLUMEBLT            = 63,
+  D3DDP2OP_BUFFERBLT            = 64,
+  D3DDP2OP_MULTIPLYTRANSFORM    = 65,
+  D3DDP2OP_ADDDIRTYRECT         = 66,
+  D3DDP2OP_ADDDIRTYBOX          = 67,
+#endif
+#if(DIRECT3D_VERSION >= 0x0900)
+  D3DDP2OP_CREATEVERTEXSHADERDECL   = 71,
+  D3DDP2OP_DELETEVERTEXSHADERDECL   = 72,
+  D3DDP2OP_SETVERTEXSHADERDECL      = 73,
+  D3DDP2OP_CREATEVERTEXSHADERFUNC   = 74,
+  D3DDP2OP_DELETEVERTEXSHADERFUNC   = 75,
+  D3DDP2OP_SETVERTEXSHADERFUNC      = 76,
+  D3DDP2OP_SETVERTEXSHADERCONSTI    = 77,
+  D3DDP2OP_SETSCISSORRECT           = 79,
+  D3DDP2OP_SETSTREAMSOURCE2         = 80,
+  D3DDP2OP_BLT                      = 81,
+  D3DDP2OP_COLORFILL                = 82,
+  D3DDP2OP_SETVERTEXSHADERCONSTB    = 83,
+  D3DDP2OP_CREATEQUERY              = 84,
+  D3DDP2OP_SETRENDERTARGET2         = 85,
+  D3DDP2OP_SETDEPTHSTENCIL          = 86,
+  D3DDP2OP_RESPONSECONTINUE         = 87,
+  D3DDP2OP_RESPONSEQUERY            = 88,
+  D3DDP2OP_GENERATEMIPSUBLEVELS     = 89,
+  D3DDP2OP_DELETEQUERY              = 90,
+  D3DDP2OP_ISSUEQUERY               = 91,
+  D3DDP2OP_SETPIXELSHADERCONSTI     = 93,
+  D3DDP2OP_SETPIXELSHADERCONSTB     = 94,
+  D3DDP2OP_SETSTREAMSOURCEFREQ      = 95,
+  D3DDP2OP_SURFACEBLT               = 96
+#endif
 } D3DHAL_DP2OPERATION;
 
 /* point primitives */
@@ -519,97 +579,8 @@ typedef struct _D3DHAL_DP2SETTEXLOD {
   DWORD dwLOD;
 } D3DHAL_DP2SETTEXLOD,*LPD3DHAL_DP2SETTEXLOD;
 
-typedef struct _D3DHAL_VALIDATETEXTURESTAGESTATEDATA
-{
-    ULONG_PTR           dwhContext;
-    DWORD           dwFlags;
-    DWORD           dwReserved;
-    DWORD           dwNumPasses;
-    HRESULT         ddrval;
-} D3DHAL_VALIDATETEXTURESTAGESTATEDATA;
-
-/* FIXME: get definition for this */
-typedef DWORD D3DNTHAL_CONTEXTCREATEI;
-
-typedef D3DHAL_CONTEXTDESTROYDATA D3DNTHAL_CONTEXTDESTROYDATA;
-typedef D3DNTHAL_CONTEXTDESTROYDATA *LPD3DNTHAL_CONTEXTDESTROYDATA;
-typedef D3DHAL_VALIDATETEXTURESTAGESTATEDATA D3DNTHAL_VALIDATETEXTURESTAGESTATEDATA;
-typedef D3DNTHAL_VALIDATETEXTURESTAGESTATEDATA *LPD3DNTHAL_VALIDATETEXTURESTAGESTATEDATA;
-typedef D3DHAL_DRAWPRIMITIVES2DATA D3DNTHAL_DRAWPRIMITIVES2DATA;
-typedef D3DNTHAL_DRAWPRIMITIVES2DATA *LPD3DNTHAL_DRAWPRIMITIVES2DATA;
-typedef DDHAL_GETDRIVERSTATEDATA DD_GETDRIVERSTATEDATA;
-typedef DD_GETDRIVERSTATEDATA *PDD_GETDRIVERSTATEDATA;
-typedef DDHAL_ADDATTACHEDSURFACEDATA DD_ADDATTACHEDSURFACEDATA;
-typedef DD_ADDATTACHEDSURFACEDATA *PDD_ADDATTACHEDSURFACEDATA;
-typedef DDHAL_BLTDATA DD_BLTDATA;
-typedef DD_BLTDATA *PDD_BLTDATA;
-typedef DDHAL_BEGINMOCOMPFRAMEDATA DD_BEGINMOCOMPFRAMEDATA;
-typedef DD_BEGINMOCOMPFRAMEDATA *PDD_BEGINMOCOMPFRAMEDATA;
-typedef DDHAL_CANCREATESURFACEDATA DD_CANCREATESURFACEDATA;
-typedef DD_CANCREATESURFACEDATA *PDD_CANCREATESURFACEDATA;
-typedef DDHAL_COLORCONTROLDATA DD_COLORCONTROLDATA;
-typedef DD_COLORCONTROLDATA *PDD_COLORCONTROLDATA;
-typedef DDRAWI_DDRAWSURFACE_GBL DD_SURFACE_GLOBAL;
-typedef DD_SURFACE_GLOBAL *PDD_SURFACE_GLOBAL;
-typedef DDHAL_CREATEMOCOMPDATA DD_CREATEMOCOMPDATA;
-typedef DD_CREATEMOCOMPDATA *PDD_CREATEMOCOMPDATA;
-typedef DDRAWI_DDRAWSURFACE_LCL DD_SURFACE_LOCAL;
-typedef DD_SURFACE_LOCAL *PDD_SURFACE_LOCAL;
-typedef DDRAWI_DDRAWSURFACE_MORE DD_SURFACE_MORE;
-typedef DD_SURFACE_MORE *PDD_SURFACE_MORE;
-typedef DDHAL_DESTROYMOCOMPDATA DD_DESTROYMOCOMPDATA;
-typedef DD_DESTROYMOCOMPDATA *PDD_DESTROYMOCOMPDATA;
-typedef DDHAL_ENDMOCOMPFRAMEDATA DD_ENDMOCOMPFRAMEDATA;
-typedef DD_ENDMOCOMPFRAMEDATA *PDD_ENDMOCOMPFRAMEDATA;
-typedef DDHAL_FLIPDATA DD_FLIPDATA;
-typedef DD_FLIPDATA *PDD_FLIPDATA;
-typedef DDHAL_FLIPTOGDISURFACEDATA DD_FLIPTOGDISURFACEDATA;
-typedef DD_FLIPTOGDISURFACEDATA *PDD_FLIPTOGDISURFACEDATA;
-typedef DDHAL_GETAVAILDRIVERMEMORYDATA DD_GETAVAILDRIVERMEMORYDATA;
-typedef DD_GETAVAILDRIVERMEMORYDATA *PDD_GETAVAILDRIVERMEMORYDATA;
-typedef DDHAL_GETBLTSTATUSDATA DD_GETBLTSTATUSDATA;
-typedef DD_GETBLTSTATUSDATA *PDD_GETBLTSTATUSDATA;
-typedef DDHAL_GETDRIVERINFODATA DD_GETDRIVERINFODATA;
-typedef DD_GETDRIVERINFODATA *PDD_GETDRIVERINFODATA;
-typedef DDHAL_GETFLIPSTATUSDATA DD_GETFLIPSTATUSDATA;
-typedef DD_GETFLIPSTATUSDATA *PDD_GETFLIPSTATUSDATA;
-typedef DDHAL_GETINTERNALMOCOMPDATA DD_GETINTERNALMOCOMPDATA;
-typedef DD_GETINTERNALMOCOMPDATA *PDD_GETINTERNALMOCOMPDATA;
-typedef DDHAL_GETMOCOMPCOMPBUFFDATA DD_GETMOCOMPCOMPBUFFDATA;
-typedef DD_GETMOCOMPCOMPBUFFDATA *PDD_GETMOCOMPCOMPBUFFDATA;
-typedef DDHAL_GETMOCOMPGUIDSDATA DD_GETMOCOMPGUIDSDATA;
-typedef DD_GETMOCOMPGUIDSDATA *PDD_GETMOCOMPGUIDSDATA;
-typedef DDHAL_GETMOCOMPFORMATSDATA DD_GETMOCOMPFORMATSDATA;
-typedef DD_GETMOCOMPFORMATSDATA *PDD_GETMOCOMPFORMATSDATA;
-typedef DDHAL_GETSCANLINEDATA DD_GETSCANLINEDATA;
-typedef DD_GETSCANLINEDATA *PDD_GETSCANLINEDATA;
-typedef DDHAL_LOCKDATA DD_LOCKDATA;
-typedef DD_LOCKDATA *PDD_LOCKDATA;
-typedef DDHALINFO DD_HALINFO;
-typedef DDHAL_QUERYMOCOMPSTATUSDATA DD_QUERYMOCOMPSTATUSDATA;
-typedef DD_QUERYMOCOMPSTATUSDATA *PDD_QUERYMOCOMPSTATUSDATA;
-typedef DDHAL_RENDERMOCOMPDATA DD_RENDERMOCOMPDATA;
-typedef DD_RENDERMOCOMPDATA *PDD_RENDERMOCOMPDATA;
-typedef DDHAL_SETCOLORKEYDATA DD_SETCOLORKEYDATA;
-typedef DD_SETCOLORKEYDATA *PDD_SETCOLORKEYDATA;
-typedef DDHAL_SETEXCLUSIVEMODEDATA DD_SETEXCLUSIVEMODEDATA;
-typedef DD_SETEXCLUSIVEMODEDATA *PDD_SETEXCLUSIVEMODEDATA;
-typedef DDHAL_SETOVERLAYPOSITIONDATA DD_SETOVERLAYPOSITIONDATA;
-typedef DD_SETOVERLAYPOSITIONDATA *PDD_SETOVERLAYPOSITIONDATA;
-typedef DDHAL_UNLOCKDATA DD_UNLOCKDATA;
-typedef DD_UNLOCKDATA *PDD_UNLOCKDATA;
-typedef DDHAL_CREATESURFACEDATA DD_CREATESURFACEDATA;
-typedef DD_CREATESURFACEDATA *LPDD_CREATESURFACEDATA;
-typedef DDHAL_UPDATEOVERLAYDATA DD_UPDATEOVERLAYDATA;
-typedef DD_UPDATEOVERLAYDATA *PDD_UPDATEOVERLAYDATA;
-typedef DDHAL_WAITFORVERTICALBLANKDATA DD_WAITFORVERTICALBLANKDATA;
-typedef DD_WAITFORVERTICALBLANKDATA *PDD_WAITFORVERTICALBLANKDATA;
-typedef D3DHAL_CALLBACKS D3DNTHAL_CALLBACKS;
-typedef D3DNTHAL_CALLBACKS *LPD3DNTHAL_CALLBACKS;
-typedef D3DHAL_GLOBALDRIVERDATA D3DNTHAL_GLOBALDRIVERDATA;
-typedef D3DNTHAL_GLOBALDRIVERDATA *LPD3DNTHAL_GLOBALDRIVERDATA;
 #ifdef __cplusplus
 } /* extern "C" */
 #endif
 
-#endif /* __WINE_DDRAWI_H */
+#endif /* _D3DHAL_H_ */