- Move several headers to PSDK where they belong.
- Add _ANONYMOUS_UNION.
- De-duplicate __GNU_EXTENSION definition from several headers.
- Remove semicolons after the closing bracket of extern "C"
- Add a missing one in ioaccess.h
- Apply a consistent formatting.
[PSDK]
- De-duplicate __GNU_EXTENSION definition from several headers.
- Add missing extern "C" opening bracket in ddkernel.h and remove the semicolon from the closing one.
- Add __GNU_EXTENSION definition to ddraw.h and remove the semicolon after the closing bracket of extern "C"
- Add missing extern "C" closing bracket in ddrawi.h
- Remove semicolons after the closing brackets of extern "C" in dinput.h, dmemmgr.h and sti.h
- Apply a consistent formatting.
[DXSDK]
- Move ddraw.h to PSDK.

svn path=/trunk/; revision=48497
This commit is contained in:
Amine Khaldi 2010-08-09 20:58:47 +00:00
parent 07a6bcfb57
commit e787f57ee7
32 changed files with 4219 additions and 4618 deletions

View file

@ -35,7 +35,7 @@ extern "C" {
typedef struct _ACPI_EVAL_INPUT_BUFFER { typedef struct _ACPI_EVAL_INPUT_BUFFER {
ULONG Signature; ULONG Signature;
union { _ANONYMOUS_UNION union {
UCHAR MethodName[4]; UCHAR MethodName[4];
ULONG MethodNameAsUlong; ULONG MethodNameAsUlong;
} DUMMYUNIONNAME; } DUMMYUNIONNAME;
@ -43,7 +43,7 @@ typedef struct _ACPI_EVAL_INPUT_BUFFER {
typedef struct _ACPI_EVAL_INPUT_BUFFER_SIMPLE_INTEGER { typedef struct _ACPI_EVAL_INPUT_BUFFER_SIMPLE_INTEGER {
ULONG Signature; ULONG Signature;
union { _ANONYMOUS_UNION union {
UCHAR MethodName[4]; UCHAR MethodName[4];
ULONG MethodNameAsUlong; ULONG MethodNameAsUlong;
} DUMMYUNIONNAME; } DUMMYUNIONNAME;
@ -52,7 +52,7 @@ typedef struct _ACPI_EVAL_INPUT_BUFFER_SIMPLE_INTEGER {
typedef struct _ACPI_EVAL_INPUT_BUFFER_SIMPLE_STRING { typedef struct _ACPI_EVAL_INPUT_BUFFER_SIMPLE_STRING {
ULONG Signature; ULONG Signature;
union { _ANONYMOUS_UNION union {
UCHAR MethodName[4]; UCHAR MethodName[4];
ULONG MethodNameAsUlong; ULONG MethodNameAsUlong;
} DUMMYUNIONNAME; } DUMMYUNIONNAME;
@ -63,7 +63,7 @@ typedef struct _ACPI_EVAL_INPUT_BUFFER_SIMPLE_STRING {
typedef struct _ACPI_METHOD_ARGUMENT { typedef struct _ACPI_METHOD_ARGUMENT {
USHORT Type; USHORT Type;
USHORT DataLength; USHORT DataLength;
union { _ANONYMOUS_UNION union {
ULONG Argument; ULONG Argument;
UCHAR Data[ANYSIZE_ARRAY]; UCHAR Data[ANYSIZE_ARRAY];
} DUMMYUNIONNAME; } DUMMYUNIONNAME;
@ -72,7 +72,7 @@ typedef ACPI_METHOD_ARGUMENT UNALIGNED *PACPI_METHOD_ARGUMENT;
typedef struct _ACPI_EVAL_INPUT_BUFFER_COMPLEX { typedef struct _ACPI_EVAL_INPUT_BUFFER_COMPLEX {
ULONG Signature; ULONG Signature;
union { _ANONYMOUS_UNION union {
UCHAR MethodName[4]; UCHAR MethodName[4];
ULONG MethodNameAsUlong; ULONG MethodNameAsUlong;
} DUMMYUNIONNAME; } DUMMYUNIONNAME;
@ -142,47 +142,47 @@ typedef struct _ACPI_ENUM_CHILDREN_OUTPUT_BUFFER {
typedef ACPI_ENUM_CHILDREN_OUTPUT_BUFFER UNALIGNED *PACPI_ENUM_CHILDREN_OUTPUT_BUFFER; typedef ACPI_ENUM_CHILDREN_OUTPUT_BUFFER UNALIGNED *PACPI_ENUM_CHILDREN_OUTPUT_BUFFER;
#define ACPI_METHOD_ARGUMENT_LENGTH( DataLength ) \ #define ACPI_METHOD_ARGUMENT_LENGTH( DataLength ) \
(FIELD_OFFSET(ACPI_METHOD_ARGUMENT, Data) + max(sizeof(ULONG), DataLength)) (FIELD_OFFSET(ACPI_METHOD_ARGUMENT, Data) + max(sizeof(ULONG), DataLength))
#define ACPI_METHOD_ARGUMENT_LENGTH_FROM_ARGUMENT( Argument ) \ #define ACPI_METHOD_ARGUMENT_LENGTH_FROM_ARGUMENT( Argument ) \
(ACPI_METHOD_ARGUMENT_LENGTH(((PACPI_METHOD_ARGUMENT)Argument)->DataLength)) (ACPI_METHOD_ARGUMENT_LENGTH(((PACPI_METHOD_ARGUMENT)Argument)->DataLength))
#define ACPI_METHOD_NEXT_ARGUMENT( Argument ) \ #define ACPI_METHOD_NEXT_ARGUMENT( Argument ) \
(PACPI_METHOD_ARGUMENT) ( (PUCHAR) Argument + \ (PACPI_METHOD_ARGUMENT) ( (PUCHAR) Argument + \
ACPI_METHOD_ARGUMENT_LENGTH_FROM_ARGUMENT( Argument ) ) ACPI_METHOD_ARGUMENT_LENGTH_FROM_ARGUMENT( Argument ) )
#define ACPI_METHOD_SET_ARGUMENT_INTEGER( MethodArgument, IntData ) \ #define ACPI_METHOD_SET_ARGUMENT_INTEGER( MethodArgument, IntData ) \
{ MethodArgument->Type = ACPI_METHOD_ARGUMENT_INTEGER; \ { MethodArgument->Type = ACPI_METHOD_ARGUMENT_INTEGER; \
MethodArgument->DataLength = sizeof(ULONG); \ MethodArgument->DataLength = sizeof(ULONG); \
MethodArgument->Argument = IntData; } MethodArgument->Argument = IntData; }
#define ACPI_METHOD_SET_ARGUMENT_STRING( Argument, StrData ) \ #define ACPI_METHOD_SET_ARGUMENT_STRING( Argument, StrData ) \
{ Argument->Type = ACPI_METHOD_ARGUMENT_STRING; \ { Argument->Type = ACPI_METHOD_ARGUMENT_STRING; \
Argument->DataLength = strlen((PCHAR)StrData) + sizeof(UCHAR); \ Argument->DataLength = strlen((PCHAR)StrData) + sizeof(UCHAR); \
RtlCopyMemory(&Argument->Data[0],(PUCHAR)StrData,Argument->DataLength); } RtlCopyMemory(&Argument->Data[0],(PUCHAR)StrData,Argument->DataLength); }
#define ACPI_METHOD_SET_ARGUMENT_BUFFER( Argument, BuffData, BuffLength ) \ #define ACPI_METHOD_SET_ARGUMENT_BUFFER( Argument, BuffData, BuffLength ) \
{ Argument->Type = ACPI_METHOD_ARGUMENT_BUFFER; \ { Argument->Type = ACPI_METHOD_ARGUMENT_BUFFER; \
Argument->DataLength = BuffLength; \ Argument->DataLength = BuffLength; \
RtlCopyMemory(&Argument->Data[0],(PUCHAR)BuffData,Argument->DataLength); } RtlCopyMemory(&Argument->Data[0],(PUCHAR)BuffData,Argument->DataLength); }
#define ACPI_ENUM_CHILD_LENGTH_FROM_CHILD( Child ) \ #define ACPI_ENUM_CHILD_LENGTH_FROM_CHILD( Child ) \
( (2* sizeof (ULONG)) + Child->NameLength ) ( (2* sizeof (ULONG)) + Child->NameLength )
#define ACPI_ENUM_CHILD_NEXT( Child ) \ #define ACPI_ENUM_CHILD_NEXT( Child ) \
(PACPI_ENUM_CHILD) ( (PUCHAR) Child + \ (PACPI_ENUM_CHILD) ( (PUCHAR) Child + \
ACPI_ENUM_CHILD_LENGTH_FROM_CHILD( Child ) ) ACPI_ENUM_CHILD_LENGTH_FROM_CHILD( Child ) )
#define IOCTL_ACPI_ASYNC_EVAL_METHOD CTL_CODE(FILE_DEVICE_ACPI, 0, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) #define IOCTL_ACPI_ASYNC_EVAL_METHOD CTL_CODE(FILE_DEVICE_ACPI, 0, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_ACPI_EVAL_METHOD CTL_CODE(FILE_DEVICE_ACPI, 1, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) #define IOCTL_ACPI_EVAL_METHOD CTL_CODE(FILE_DEVICE_ACPI, 1, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_ACPI_ACQUIRE_GLOBAL_LOCK CTL_CODE(FILE_DEVICE_ACPI, 4, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) #define IOCTL_ACPI_ACQUIRE_GLOBAL_LOCK CTL_CODE(FILE_DEVICE_ACPI, 4, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_ACPI_RELEASE_GLOBAL_LOCK CTL_CODE(FILE_DEVICE_ACPI, 5, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) #define IOCTL_ACPI_RELEASE_GLOBAL_LOCK CTL_CODE(FILE_DEVICE_ACPI, 5, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#if (NTDDI_VERSION >= NTDDI_VISTA) #if (NTDDI_VERSION >= NTDDI_VISTA)
#define IOCTL_ACPI_EVAL_METHOD_EX CTL_CODE(FILE_DEVICE_ACPI, 6, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) #define IOCTL_ACPI_EVAL_METHOD_EX CTL_CODE(FILE_DEVICE_ACPI, 6, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_ACPI_ASYNC_EVAL_METHOD_EX CTL_CODE(FILE_DEVICE_ACPI, 7, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) #define IOCTL_ACPI_ASYNC_EVAL_METHOD_EX CTL_CODE(FILE_DEVICE_ACPI, 7, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_ACPI_ENUM_CHILDREN CTL_CODE(FILE_DEVICE_ACPI, 8, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) #define IOCTL_ACPI_ENUM_CHILDREN CTL_CODE(FILE_DEVICE_ACPI, 8, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#endif #endif
#ifdef __cplusplus #ifdef __cplusplus

View file

@ -6,15 +6,6 @@
extern "C" { extern "C" {
#endif #endif
/* Helper macro to enable gcc's extension. */
#ifndef __GNU_EXTENSION
#ifdef __GNUC__
#define __GNU_EXTENSION __extension__
#else
#define __GNU_EXTENSION
#endif
#endif
#define STDMETHODCALLTYPE __stdcall #define STDMETHODCALLTYPE __stdcall
#ifndef _WDMDDK_ #ifndef _WDMDDK_

View file

@ -22,15 +22,6 @@
#ifndef _D3DHAL_H_ #ifndef _D3DHAL_H_
#define _D3DHAL_H_ #define _D3DHAL_H_
/* Helper macro to enable gcc's extension. */
#ifndef __GNU_EXTENSION
#ifdef __GNUC__
#define __GNU_EXTENSION __extension__
#else
#define __GNU_EXTENSION
#endif
#endif
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
@ -61,31 +52,31 @@ typedef struct _DDRAWI_DDRAWSURFACE_LCL FAR *LPDDRAWI_DDRAWSURFACE_LCL;
* device info structures * device info structures
*/ */
typedef struct _D3DDeviceDesc_V1 { typedef struct _D3DDeviceDesc_V1 {
DWORD dwSize; DWORD dwSize;
DWORD dwFlags; DWORD dwFlags;
D3DCOLORMODEL dcmColorModel; D3DCOLORMODEL dcmColorModel;
DWORD dwDevCaps; DWORD dwDevCaps;
D3DTRANSFORMCAPS dtcTransformCaps; D3DTRANSFORMCAPS dtcTransformCaps;
BOOL bClipping; BOOL bClipping;
D3DLIGHTINGCAPS dlcLightingCaps; D3DLIGHTINGCAPS dlcLightingCaps;
D3DPRIMCAPS dpcLineCaps; D3DPRIMCAPS dpcLineCaps;
D3DPRIMCAPS dpcTriCaps; D3DPRIMCAPS dpcTriCaps;
DWORD dwDeviceRenderBitDepth; DWORD dwDeviceRenderBitDepth;
DWORD dwDeviceZBufferBitDepth; DWORD dwDeviceZBufferBitDepth;
DWORD dwMaxBufferSize; DWORD dwMaxBufferSize;
DWORD dwMaxVertexCount; DWORD dwMaxVertexCount;
} D3DDEVICEDESC_V1,*LPD3DDEVICEDESC_V1; } D3DDEVICEDESC_V1,*LPD3DDEVICEDESC_V1;
/* this is to allow keeping the bulk of our OpenGL code out of x11drv */ /* this is to allow keeping the bulk of our OpenGL code out of x11drv */
#define D3DDD_WINE_OPENGL_DEVICE 0x00008000 #define D3DDD_WINE_OPENGL_DEVICE 0x00008000
typedef struct _D3DHAL_GLOBALDRIVERDATA { typedef struct _D3DHAL_GLOBALDRIVERDATA {
DWORD dwSize; DWORD dwSize;
D3DDEVICEDESC_V1 hwCaps; D3DDEVICEDESC_V1 hwCaps;
DWORD dwNumVertices; DWORD dwNumVertices;
DWORD dwNumClipVertices; DWORD dwNumClipVertices;
DWORD dwNumTextureFormats; DWORD dwNumTextureFormats;
LPDDSURFACEDESC lpTextureFormats; LPDDSURFACEDESC lpTextureFormats;
} D3DHAL_GLOBALDRIVERDATA; } D3DHAL_GLOBALDRIVERDATA;
#ifndef D3DHAL_GLOBALDRIVERDATA_DEFINED #ifndef D3DHAL_GLOBALDRIVERDATA_DEFINED
@ -94,103 +85,103 @@ typedef D3DHAL_GLOBALDRIVERDATA *LPD3DHAL_GLOBALDRIVERDATA;
#endif #endif
typedef struct _D3DHAL_D3DEXTENDEDCAPS { typedef struct _D3DHAL_D3DEXTENDEDCAPS {
DWORD dwSize; DWORD dwSize;
/* DirectX 5 */ /* DirectX 5 */
DWORD dwMinTextureWidth, dwMaxTextureWidth; DWORD dwMinTextureWidth, dwMaxTextureWidth;
DWORD dwMinTextureHeight, dwMaxTextureHeight; DWORD dwMinTextureHeight, dwMaxTextureHeight;
DWORD dwMinStippleWidth, dwMaxStippleWidth; DWORD dwMinStippleWidth, dwMaxStippleWidth;
DWORD dwMinStippleHeight, dwMaxStippleHeight; DWORD dwMinStippleHeight, dwMaxStippleHeight;
/* DirectX 6 */ /* DirectX 6 */
DWORD dwMaxTextureRepeat; DWORD dwMaxTextureRepeat;
DWORD dwMaxTextureAspectRatio; DWORD dwMaxTextureAspectRatio;
DWORD dwMaxAnisotropy; DWORD dwMaxAnisotropy;
D3DVALUE dvGuardBandLeft; D3DVALUE dvGuardBandLeft;
D3DVALUE dvGuardBandTop; D3DVALUE dvGuardBandTop;
D3DVALUE dvGuardBandRight; D3DVALUE dvGuardBandRight;
D3DVALUE dvGuardBandBottom; D3DVALUE dvGuardBandBottom;
D3DVALUE dvExtentsAdjust; D3DVALUE dvExtentsAdjust;
DWORD dwStencilCaps; DWORD dwStencilCaps;
DWORD dwFVFCaps; DWORD dwFVFCaps;
DWORD dwTextureOpCaps; DWORD dwTextureOpCaps;
WORD wMaxTextureBlendStages; WORD wMaxTextureBlendStages;
WORD wMaxSimultaneousTextures; WORD wMaxSimultaneousTextures;
/* DirectX 7 */ /* DirectX 7 */
DWORD dwMaxActiveLights; DWORD dwMaxActiveLights;
D3DVALUE dvMaxVertexW; D3DVALUE dvMaxVertexW;
WORD wMaxUserClipPlanes; WORD wMaxUserClipPlanes;
WORD wMaxVertexBlendMatrices; WORD wMaxVertexBlendMatrices;
DWORD dwVertexProcessingCaps; DWORD dwVertexProcessingCaps;
DWORD dwReserved1; DWORD dwReserved1;
DWORD dwReserved2; DWORD dwReserved2;
DWORD dwReserved3; DWORD dwReserved3;
DWORD dwReserved4; DWORD dwReserved4;
} D3DHAL_D3DEXTENDEDCAPS,*LPD3DHAL_D3DEXTENDEDCAPS; } D3DHAL_D3DEXTENDEDCAPS,*LPD3DHAL_D3DEXTENDEDCAPS;
/***************************************************************************** /*****************************************************************************
* d3d->driver callbacks * d3d->driver callbacks
*/ */
typedef struct _D3DHAL_CONTEXTCREATEDATA *LPD3DHAL_CONTEXTCREATEDATA; typedef struct _D3DHAL_CONTEXTCREATEDATA *LPD3DHAL_CONTEXTCREATEDATA;
typedef struct _D3DHAL_CONTEXTDESTROYDATA *LPD3DHAL_CONTEXTDESTROYDATA; typedef struct _D3DHAL_CONTEXTDESTROYDATA *LPD3DHAL_CONTEXTDESTROYDATA;
typedef struct _D3DHAL_CONTEXTDESTROYALLDATA *LPD3DHAL_CONTEXTDESTROYALLDATA; typedef struct _D3DHAL_CONTEXTDESTROYALLDATA *LPD3DHAL_CONTEXTDESTROYALLDATA;
typedef struct _D3DHAL_SCENECAPTUREDATA *LPD3DHAL_SCENECAPTUREDATA; typedef struct _D3DHAL_SCENECAPTUREDATA *LPD3DHAL_SCENECAPTUREDATA;
typedef struct _D3DHAL_RENDERSTATEDATA *LPD3DHAL_RENDERSTATEDATA; typedef struct _D3DHAL_RENDERSTATEDATA *LPD3DHAL_RENDERSTATEDATA;
typedef struct _D3DHAL_RENDERPRIMITIVEDATA *LPD3DHAL_RENDERPRIMITIVEDATA; typedef struct _D3DHAL_RENDERPRIMITIVEDATA *LPD3DHAL_RENDERPRIMITIVEDATA;
typedef struct _D3DHAL_TEXTURECREATEDATA *LPD3DHAL_TEXTURECREATEDATA; typedef struct _D3DHAL_TEXTURECREATEDATA *LPD3DHAL_TEXTURECREATEDATA;
typedef struct _D3DHAL_TEXTUREDESTROYDATA *LPD3DHAL_TEXTUREDESTROYDATA; typedef struct _D3DHAL_TEXTUREDESTROYDATA *LPD3DHAL_TEXTUREDESTROYDATA;
typedef struct _D3DHAL_TEXTURESWAPDATA *LPD3DHAL_TEXTURESWAPDATA; typedef struct _D3DHAL_TEXTURESWAPDATA *LPD3DHAL_TEXTURESWAPDATA;
typedef struct _D3DHAL_TEXTUREGETSURFDATA *LPD3DHAL_TEXTUREGETSURFDATA; typedef struct _D3DHAL_TEXTUREGETSURFDATA *LPD3DHAL_TEXTUREGETSURFDATA;
typedef struct _D3DHAL_GETSTATEDATA *LPD3DHAL_GETSTATEDATA; typedef struct _D3DHAL_GETSTATEDATA *LPD3DHAL_GETSTATEDATA;
typedef DWORD (PASCAL *LPD3DHAL_CONTEXTCREATECB) (LPD3DHAL_CONTEXTCREATEDATA); typedef DWORD (PASCAL *LPD3DHAL_CONTEXTCREATECB) (LPD3DHAL_CONTEXTCREATEDATA);
typedef DWORD (PASCAL *LPD3DHAL_CONTEXTDESTROYCB) (LPD3DHAL_CONTEXTDESTROYDATA); typedef DWORD (PASCAL *LPD3DHAL_CONTEXTDESTROYCB) (LPD3DHAL_CONTEXTDESTROYDATA);
typedef DWORD (PASCAL *LPD3DHAL_CONTEXTDESTROYALLCB)(LPD3DHAL_CONTEXTDESTROYALLDATA); typedef DWORD (PASCAL *LPD3DHAL_CONTEXTDESTROYALLCB)(LPD3DHAL_CONTEXTDESTROYALLDATA);
typedef DWORD (PASCAL *LPD3DHAL_SCENECAPTURECB) (LPD3DHAL_SCENECAPTUREDATA); typedef DWORD (PASCAL *LPD3DHAL_SCENECAPTURECB) (LPD3DHAL_SCENECAPTUREDATA);
typedef DWORD (PASCAL *LPD3DHAL_RENDERSTATECB) (LPD3DHAL_RENDERSTATEDATA); typedef DWORD (PASCAL *LPD3DHAL_RENDERSTATECB) (LPD3DHAL_RENDERSTATEDATA);
typedef DWORD (PASCAL *LPD3DHAL_RENDERPRIMITIVECB) (LPD3DHAL_RENDERPRIMITIVEDATA); typedef DWORD (PASCAL *LPD3DHAL_RENDERPRIMITIVECB) (LPD3DHAL_RENDERPRIMITIVEDATA);
typedef DWORD (PASCAL *LPD3DHAL_TEXTURECREATECB) (LPD3DHAL_TEXTURECREATEDATA); typedef DWORD (PASCAL *LPD3DHAL_TEXTURECREATECB) (LPD3DHAL_TEXTURECREATEDATA);
typedef DWORD (PASCAL *LPD3DHAL_TEXTUREDESTROYCB) (LPD3DHAL_TEXTUREDESTROYDATA); typedef DWORD (PASCAL *LPD3DHAL_TEXTUREDESTROYCB) (LPD3DHAL_TEXTUREDESTROYDATA);
typedef DWORD (PASCAL *LPD3DHAL_TEXTURESWAPCB) (LPD3DHAL_TEXTURESWAPDATA); typedef DWORD (PASCAL *LPD3DHAL_TEXTURESWAPCB) (LPD3DHAL_TEXTURESWAPDATA);
typedef DWORD (PASCAL *LPD3DHAL_TEXTUREGETSURFCB) (LPD3DHAL_TEXTUREGETSURFDATA); typedef DWORD (PASCAL *LPD3DHAL_TEXTUREGETSURFCB) (LPD3DHAL_TEXTUREGETSURFDATA);
typedef DWORD (PASCAL *LPD3DHAL_GETSTATECB) (LPD3DHAL_GETSTATEDATA); typedef DWORD (PASCAL *LPD3DHAL_GETSTATECB) (LPD3DHAL_GETSTATEDATA);
typedef struct _D3DHAL_CALLBACKS { typedef struct _D3DHAL_CALLBACKS {
DWORD dwSize; DWORD dwSize;
LPD3DHAL_CONTEXTCREATECB ContextCreate; LPD3DHAL_CONTEXTCREATECB ContextCreate;
LPD3DHAL_CONTEXTDESTROYCB ContextDestroy; LPD3DHAL_CONTEXTDESTROYCB ContextDestroy;
LPD3DHAL_CONTEXTDESTROYALLCB ContextDestroyAll; LPD3DHAL_CONTEXTDESTROYALLCB ContextDestroyAll;
LPD3DHAL_SCENECAPTURECB SceneCapture; LPD3DHAL_SCENECAPTURECB SceneCapture;
LPVOID lpReserved10; LPVOID lpReserved10;
LPVOID lpReserved11; LPVOID lpReserved11;
LPD3DHAL_RENDERSTATECB RenderState; LPD3DHAL_RENDERSTATECB RenderState;
LPD3DHAL_RENDERPRIMITIVECB RenderPrimitive; LPD3DHAL_RENDERPRIMITIVECB RenderPrimitive;
DWORD dwReserved; DWORD dwReserved;
LPD3DHAL_TEXTURECREATECB TextureCreate; LPD3DHAL_TEXTURECREATECB TextureCreate;
LPD3DHAL_TEXTUREDESTROYCB TextureDestroy; LPD3DHAL_TEXTUREDESTROYCB TextureDestroy;
LPD3DHAL_TEXTURESWAPCB TextureSwap; LPD3DHAL_TEXTURESWAPCB TextureSwap;
LPD3DHAL_TEXTUREGETSURFCB TextureGetSurf; LPD3DHAL_TEXTUREGETSURFCB TextureGetSurf;
/* now why did MS create CALLBACKS2 and CALLBACKS3 structures if /* now why did MS create CALLBACKS2 and CALLBACKS3 structures if
* all these reserved fields were available? we may never know */ * all these reserved fields were available? we may never know */
LPVOID lpReserved12; LPVOID lpReserved12;
LPVOID lpReserved13; LPVOID lpReserved13;
LPVOID lpReserved14; LPVOID lpReserved14;
LPVOID lpReserved15; LPVOID lpReserved15;
LPVOID lpReserved16; LPVOID lpReserved16;
LPVOID lpReserved17; LPVOID lpReserved17;
LPVOID lpReserved18; LPVOID lpReserved18;
LPVOID lpReserved19; LPVOID lpReserved19;
LPVOID lpReserved20; LPVOID lpReserved20;
LPVOID lpReserved21; LPVOID lpReserved21;
LPD3DHAL_GETSTATECB GetState; LPD3DHAL_GETSTATECB GetState;
DWORD dwReserved0; DWORD dwReserved0;
DWORD dwReserved1; DWORD dwReserved1;
DWORD dwReserved2; DWORD dwReserved2;
DWORD dwReserved3; DWORD dwReserved3;
DWORD dwReserved4; DWORD dwReserved4;
DWORD dwReserved5; DWORD dwReserved5;
DWORD dwReserved6; DWORD dwReserved6;
DWORD dwReserved7; DWORD dwReserved7;
DWORD dwReserved8; DWORD dwReserved8;
DWORD dwReserved9; DWORD dwReserved9;
} D3DHAL_CALLBACKS; } D3DHAL_CALLBACKS;
#ifndef D3DHAL_CALLBACKS_DEFINED #ifndef D3DHAL_CALLBACKS_DEFINED
@ -198,132 +189,132 @@ typedef D3DHAL_CALLBACKS *LPD3DHAL_CALLBACKS;
#define D3DHAL_CALLBACKS_DEFINED #define D3DHAL_CALLBACKS_DEFINED
#endif #endif
typedef struct _D3DHAL_SETRENDERTARGETDATA *LPD3DHAL_SETRENDERTARGETDATA; typedef struct _D3DHAL_SETRENDERTARGETDATA *LPD3DHAL_SETRENDERTARGETDATA;
typedef struct _D3DHAL_CLEARDATA *LPD3DHAL_CLEARDATA; typedef struct _D3DHAL_CLEARDATA *LPD3DHAL_CLEARDATA;
typedef struct _D3DHAL_DRAWONEPRIMITIVEDATA *LPD3DHAL_DRAWONEPRIMITIVEDATA; typedef struct _D3DHAL_DRAWONEPRIMITIVEDATA *LPD3DHAL_DRAWONEPRIMITIVEDATA;
typedef struct _D3DHAL_DRAWONEINDEXEDPRIMITIVEDATA *LPD3DHAL_DRAWONEINDEXEDPRIMITIVEDATA; typedef struct _D3DHAL_DRAWONEINDEXEDPRIMITIVEDATA *LPD3DHAL_DRAWONEINDEXEDPRIMITIVEDATA;
typedef struct _D3DHAL_DRAWPRIMITIVESDATA *LPD3DHAL_DRAWPRIMITIVESDATA; typedef struct _D3DHAL_DRAWPRIMITIVESDATA *LPD3DHAL_DRAWPRIMITIVESDATA;
typedef DWORD (PASCAL *LPD3DHAL_SETRENDERTARGETCB) (LPD3DHAL_SETRENDERTARGETDATA); typedef DWORD (PASCAL *LPD3DHAL_SETRENDERTARGETCB) (LPD3DHAL_SETRENDERTARGETDATA);
typedef DWORD (PASCAL *LPD3DHAL_CLEARCB) (LPD3DHAL_CLEARDATA); typedef DWORD (PASCAL *LPD3DHAL_CLEARCB) (LPD3DHAL_CLEARDATA);
typedef DWORD (PASCAL *LPD3DHAL_DRAWONEPRIMITIVECB) (LPD3DHAL_DRAWONEPRIMITIVEDATA); typedef DWORD (PASCAL *LPD3DHAL_DRAWONEPRIMITIVECB) (LPD3DHAL_DRAWONEPRIMITIVEDATA);
typedef DWORD (PASCAL *LPD3DHAL_DRAWONEINDEXEDPRIMITIVECB)(LPD3DHAL_DRAWONEINDEXEDPRIMITIVEDATA); typedef DWORD (PASCAL *LPD3DHAL_DRAWONEINDEXEDPRIMITIVECB)(LPD3DHAL_DRAWONEINDEXEDPRIMITIVEDATA);
typedef DWORD (PASCAL *LPD3DHAL_DRAWPRIMITIVESCB) (LPD3DHAL_DRAWPRIMITIVESDATA); typedef DWORD (PASCAL *LPD3DHAL_DRAWPRIMITIVESCB) (LPD3DHAL_DRAWPRIMITIVESDATA);
typedef struct _D3DHAL_CALLBACKS2 { typedef struct _D3DHAL_CALLBACKS2 {
DWORD dwSize; DWORD dwSize;
DWORD dwFlags; DWORD dwFlags;
LPD3DHAL_SETRENDERTARGETCB SetRenderTarget; LPD3DHAL_SETRENDERTARGETCB SetRenderTarget;
LPD3DHAL_CLEARCB Clear; LPD3DHAL_CLEARCB Clear;
LPD3DHAL_DRAWONEPRIMITIVECB DrawOnePrimitive; LPD3DHAL_DRAWONEPRIMITIVECB DrawOnePrimitive;
LPD3DHAL_DRAWONEINDEXEDPRIMITIVECB DrawOneIndexedPrimitive; LPD3DHAL_DRAWONEINDEXEDPRIMITIVECB DrawOneIndexedPrimitive;
LPD3DHAL_DRAWPRIMITIVESCB DrawPrimitives; LPD3DHAL_DRAWPRIMITIVESCB DrawPrimitives;
} D3DHAL_CALLBACKS2,*LPD3DHAL_CALLBACKS2; } D3DHAL_CALLBACKS2,*LPD3DHAL_CALLBACKS2;
typedef struct _D3DHAL_CLEAR2DATA *LPD3DHAL_CLEAR2DATA; typedef struct _D3DHAL_CLEAR2DATA *LPD3DHAL_CLEAR2DATA;
typedef struct _D3DHAL_VALIDATETEXTURESTAGESTATEDATA *LPD3DHAL_VALIDATETEXTURESTAGESTATEDATA; typedef struct _D3DHAL_VALIDATETEXTURESTAGESTATEDATA *LPD3DHAL_VALIDATETEXTURESTAGESTATEDATA;
typedef struct _D3DHAL_DRAWPRIMITIVES2DATA *LPD3DHAL_DRAWPRIMITIVES2DATA; typedef struct _D3DHAL_DRAWPRIMITIVES2DATA *LPD3DHAL_DRAWPRIMITIVES2DATA;
typedef DWORD (PASCAL *LPD3DHAL_CLEAR2CB) (LPD3DHAL_CLEAR2DATA); typedef DWORD (PASCAL *LPD3DHAL_CLEAR2CB) (LPD3DHAL_CLEAR2DATA);
typedef DWORD (PASCAL *LPD3DHAL_VALIDATETEXTURESTAGESTATECB)(LPD3DHAL_VALIDATETEXTURESTAGESTATEDATA); typedef DWORD (PASCAL *LPD3DHAL_VALIDATETEXTURESTAGESTATECB) (LPD3DHAL_VALIDATETEXTURESTAGESTATEDATA);
typedef DWORD (PASCAL *LPD3DHAL_DRAWPRIMITIVES2CB) (LPD3DHAL_DRAWPRIMITIVES2DATA); typedef DWORD (PASCAL *LPD3DHAL_DRAWPRIMITIVES2CB) (LPD3DHAL_DRAWPRIMITIVES2DATA);
typedef struct _D3DHAL_CALLBACKS3 { typedef struct _D3DHAL_CALLBACKS3 {
DWORD dwSize; DWORD dwSize;
DWORD dwFlags; DWORD dwFlags;
LPD3DHAL_CLEAR2CB Clear2; LPD3DHAL_CLEAR2CB Clear2;
LPVOID lpvReserved; LPVOID lpvReserved;
LPD3DHAL_VALIDATETEXTURESTAGESTATECB ValidateTextureStageState; LPD3DHAL_VALIDATETEXTURESTAGESTATECB ValidateTextureStageState;
LPD3DHAL_DRAWPRIMITIVES2CB DrawPrimitives2; LPD3DHAL_DRAWPRIMITIVES2CB DrawPrimitives2;
} D3DHAL_CALLBACKS3,*LPD3DHAL_CALLBACKS3; } D3DHAL_CALLBACKS3,*LPD3DHAL_CALLBACKS3;
/***************************************************************************** /*****************************************************************************
* parameter structures * parameter structures
*/ */
typedef struct _D3DHAL_CONTEXTCREATEDATA { typedef struct _D3DHAL_CONTEXTCREATEDATA {
union { _ANONYMOUS_UNION union {
LPDDRAWI_DIRECTDRAW_GBL lpDDGbl; /* pre-DirectX 7 */ LPDDRAWI_DIRECTDRAW_GBL lpDDGbl; /* pre-DirectX 7 */
LPDDRAWI_DIRECTDRAW_LCL lpDDLcl; /* DirectX 7 */ LPDDRAWI_DIRECTDRAW_LCL lpDDLcl; /* DirectX 7 */
} DUMMYUNIONNAME1; } DUMMYUNIONNAME1;
union { _ANONYMOUS_UNION union {
LPDIRECTDRAWSURFACE lpDDS; LPDIRECTDRAWSURFACE lpDDS;
LPDDRAWI_DDRAWSURFACE_LCL lpDDSLcl; /* DirectX 7 */ LPDDRAWI_DDRAWSURFACE_LCL lpDDSLcl; /* DirectX 7 */
} DUMMYUNIONNAME2; } DUMMYUNIONNAME2;
union { _ANONYMOUS_UNION union {
LPDIRECTDRAWSURFACE lpDDSZ; LPDIRECTDRAWSURFACE lpDDSZ;
LPDDRAWI_DDRAWSURFACE_LCL lpDDSZLcl; /* DirectX 7 */ LPDDRAWI_DDRAWSURFACE_LCL lpDDSZLcl; /* DirectX 7 */
} DUMMYUNIONNAME3; } DUMMYUNIONNAME3;
union { _ANONYMOUS_UNION union {
DWORD dwPID; DWORD dwPID;
ULONG_PTR dwrstates; ULONG_PTR dwrstates;
} DUMMYUNIONNAME4; } DUMMYUNIONNAME4;
ULONG_PTR dwhContext; ULONG_PTR dwhContext;
HRESULT ddrval; HRESULT ddrval;
} D3DHAL_CONTEXTCREATEDATA; } D3DHAL_CONTEXTCREATEDATA;
typedef struct _D3DHAL_CONTEXTDESTROYDATA { typedef struct _D3DHAL_CONTEXTDESTROYDATA {
ULONG_PTR dwhContext; ULONG_PTR dwhContext;
HRESULT ddrval; HRESULT ddrval;
} D3DHAL_CONTEXTDESTROYDATA; } D3DHAL_CONTEXTDESTROYDATA;
typedef struct _D3DHAL_CONTEXTDESTROYALLDATA { typedef struct _D3DHAL_CONTEXTDESTROYALLDATA {
DWORD dwPID; DWORD dwPID;
HRESULT ddrval; HRESULT ddrval;
} D3DHAL_CONTEXTDESTROYALLDATA; } D3DHAL_CONTEXTDESTROYALLDATA;
typedef struct _D3DHAL_SCENECAPTUREDATA { typedef struct _D3DHAL_SCENECAPTUREDATA {
ULONG_PTR dwhContext; ULONG_PTR dwhContext;
DWORD dwFlag; DWORD dwFlag;
HRESULT ddrval; HRESULT ddrval;
} D3DHAL_SCENECAPTUREDATA; } D3DHAL_SCENECAPTUREDATA;
#define D3DHAL_SCENE_CAPTURE_START 0x00000000 #define D3DHAL_SCENE_CAPTURE_START 0x00000000
#define D3DHAL_SCENE_CAPTURE_END 0x00000001 #define D3DHAL_SCENE_CAPTURE_END 0x00000001
typedef struct _D3DHAL_SETRENDERTARGETDATA { typedef struct _D3DHAL_SETRENDERTARGETDATA {
ULONG_PTR dwhContext; ULONG_PTR dwhContext;
union { _ANONYMOUS_UNION union {
LPDIRECTDRAWSURFACE lpDDS; LPDIRECTDRAWSURFACE lpDDS;
LPDDRAWI_DDRAWSURFACE_LCL lpDDSLcl; LPDDRAWI_DDRAWSURFACE_LCL lpDDSLcl;
} DUMMYUNIONNAME1; } DUMMYUNIONNAME1;
union { _ANONYMOUS_UNION union {
LPDIRECTDRAWSURFACE lpDDSZ; LPDIRECTDRAWSURFACE lpDDSZ;
LPDDRAWI_DDRAWSURFACE_LCL lpDDSZLcl; LPDDRAWI_DDRAWSURFACE_LCL lpDDSZLcl;
} DUMMYUNIONNAME2; } DUMMYUNIONNAME2;
HRESULT ddrval; HRESULT ddrval;
} D3DHAL_SETRENDERTARGETDATA; } D3DHAL_SETRENDERTARGETDATA;
typedef struct _D3DHAL_DRAWPRIMITIVES2DATA { typedef struct _D3DHAL_DRAWPRIMITIVES2DATA {
ULONG_PTR dwhContext; ULONG_PTR dwhContext;
DWORD dwFlags; DWORD dwFlags;
DWORD dwVertexType; DWORD dwVertexType;
LPDDRAWI_DDRAWSURFACE_LCL lpDDCommands; LPDDRAWI_DDRAWSURFACE_LCL lpDDCommands;
DWORD dwCommandOffset; DWORD dwCommandOffset;
DWORD dwCommandLength; DWORD dwCommandLength;
union { _ANONYMOUS_UNION union {
LPDDRAWI_DDRAWSURFACE_LCL lpDDVertex; LPDDRAWI_DDRAWSURFACE_LCL lpDDVertex;
LPVOID lpVertices; LPVOID lpVertices;
} DUMMYUNIONNAME1; } DUMMYUNIONNAME1;
DWORD dwVertexOffset; DWORD dwVertexOffset;
DWORD dwVertexLength; DWORD dwVertexLength;
DWORD dwReqVertexBufSize; DWORD dwReqVertexBufSize;
DWORD dwReqCommandBufSize; DWORD dwReqCommandBufSize;
LPDWORD lpdwRStates; LPDWORD lpdwRStates;
union { _ANONYMOUS_UNION union {
DWORD dwVertexSize; DWORD dwVertexSize;
HRESULT ddrval; HRESULT ddrval;
} DUMMYUNIONNAME2; } DUMMYUNIONNAME2;
DWORD dwErrorOffset; DWORD dwErrorOffset;
} D3DHAL_DRAWPRIMITIVES2DATA; } D3DHAL_DRAWPRIMITIVES2DATA;
#define D3DHALDP2_USERMEMVERTICES 0x00000001 #define D3DHALDP2_USERMEMVERTICES 0x00000001
#define D3DHALDP2_EXECUTEBUFFER 0x00000002 #define D3DHALDP2_EXECUTEBUFFER 0x00000002
#define D3DHALDP2_SWAPVERTEXBUFFER 0x00000004 #define D3DHALDP2_SWAPVERTEXBUFFER 0x00000004
#define D3DHALDP2_SWAPCOMMANDBUFFER 0x00000008 #define D3DHALDP2_SWAPCOMMANDBUFFER 0x00000008
#define D3DHALDP2_REQVERTEXBUFSIZE 0x00000010 #define D3DHALDP2_REQVERTEXBUFSIZE 0x00000010
#define D3DHALDP2_REQCOMMANDBUFSIZE 0x00000020 #define D3DHALDP2_REQCOMMANDBUFSIZE 0x00000020
#define D3DHALDP2_VIDMEMVERTEXBUF 0x00000040 #define D3DHALDP2_VIDMEMVERTEXBUF 0x00000040
#define D3DHALDP2_VIDMEMCOMMANDBUF 0x00000080 #define D3DHALDP2_VIDMEMCOMMANDBUF 0x00000080
/***************************************************************************** /*****************************************************************************
* DrawPrimitives2 command structures * DrawPrimitives2 command structures
@ -331,50 +322,50 @@ typedef struct _D3DHAL_DRAWPRIMITIVES2DATA {
typedef struct _D3DHAL_DP2COMMAND { typedef struct _D3DHAL_DP2COMMAND {
BYTE bCommand; BYTE bCommand;
BYTE bReserved; BYTE bReserved;
union { _ANONYMOUS_UNION union {
WORD wPrimitiveCount; WORD wPrimitiveCount;
WORD wStateCount; WORD wStateCount;
} DUMMYUNIONNAME; } DUMMYUNIONNAME;
} D3DHAL_DP2COMMAND,*LPD3DHAL_DP2COMMAND; } D3DHAL_DP2COMMAND,*LPD3DHAL_DP2COMMAND;
typedef enum _D3DHAL_DP2OPERATION { typedef enum _D3DHAL_DP2OPERATION {
D3DDP2OP_POINTS = 1, D3DDP2OP_POINTS = 1,
D3DDP2OP_INDEXEDLINELIST = 2, D3DDP2OP_INDEXEDLINELIST = 2,
D3DDP2OP_INDEXEDTRIANGLELIST = 3, D3DDP2OP_INDEXEDTRIANGLELIST = 3,
D3DDP2OP_RENDERSTATE = 8, D3DDP2OP_RENDERSTATE = 8,
D3DDP2OP_LINELIST = 15, D3DDP2OP_LINELIST = 15,
D3DDP2OP_LINESTRIP = 16, D3DDP2OP_LINESTRIP = 16,
D3DDP2OP_INDEXEDLINESTRIP = 17, D3DDP2OP_INDEXEDLINESTRIP = 17,
D3DDP2OP_TRIANGLELIST = 18, D3DDP2OP_TRIANGLELIST = 18,
D3DDP2OP_TRIANGLESTRIP = 19, D3DDP2OP_TRIANGLESTRIP = 19,
D3DDP2OP_INDEXEDTRIANGLESTRIP = 20, D3DDP2OP_INDEXEDTRIANGLESTRIP = 20,
D3DDP2OP_TRIANGLEFAN = 21, D3DDP2OP_TRIANGLEFAN = 21,
D3DDP2OP_INDEXEDTRIANGLEFAN = 22, D3DDP2OP_INDEXEDTRIANGLEFAN = 22,
D3DDP2OP_TRIANGLEFAN_IMM = 23, D3DDP2OP_TRIANGLEFAN_IMM = 23,
D3DDP2OP_LINELIST_IMM = 24, D3DDP2OP_LINELIST_IMM = 24,
D3DDP2OP_TEXTURESTAGESTATE = 25, D3DDP2OP_TEXTURESTAGESTATE = 25,
D3DDP2OP_INDEXEDTRIANGLELIST2 = 26, D3DDP2OP_INDEXEDTRIANGLELIST2 = 26,
D3DDP2OP_INDEXEDLINELIST2 = 27, D3DDP2OP_INDEXEDLINELIST2 = 27,
D3DDP2OP_VIEWPORTINFO = 28, D3DDP2OP_VIEWPORTINFO = 28,
D3DDP2OP_WINFO = 29, D3DDP2OP_WINFO = 29,
/* pre-DirectX 7 interfaces */ /* pre-DirectX 7 interfaces */
D3DDP2OP_SETPALETTE = 30, D3DDP2OP_SETPALETTE = 30,
D3DDP2OP_UPDATEPALETTE = 31, D3DDP2OP_UPDATEPALETTE = 31,
/* DirectX 7 interfaces */ /* DirectX 7 interfaces */
D3DDP2OP_ZRANGE = 32, D3DDP2OP_ZRANGE = 32,
D3DDP2OP_SETMATERIAL = 33, D3DDP2OP_SETMATERIAL = 33,
D3DDP2OP_SETLIGHT = 34, D3DDP2OP_SETLIGHT = 34,
D3DDP2OP_CREATELIGHT = 35, D3DDP2OP_CREATELIGHT = 35,
D3DDP2OP_SETTRANSFORM = 36, D3DDP2OP_SETTRANSFORM = 36,
D3DDP2OP_TEXBLT = 38, D3DDP2OP_TEXBLT = 38,
D3DDP2OP_STATESET = 39, D3DDP2OP_STATESET = 39,
D3DDP2OP_SETPRIORITY = 40, D3DDP2OP_SETPRIORITY = 40,
/* all interfaces */ /* all interfaces */
D3DDP2OP_SETRENDERTARGET = 41, D3DDP2OP_SETRENDERTARGET = 41,
D3DDP2OP_CLEAR = 42, D3DDP2OP_CLEAR = 42,
/* DirectX 7 interfaces */ /* DirectX 7 interfaces */
D3DDP2OP_SETTEXLOD = 43, D3DDP2OP_SETTEXLOD = 43,
D3DPP2OP_SETCLIPPLANE = 44, D3DPP2OP_SETCLIPPLANE = 44,
#if(DIRECT3D_VERSION >= 0x0800) #if(DIRECT3D_VERSION >= 0x0800)
D3DDP2OP_CREATEVERTEXSHADER = 45, D3DDP2OP_CREATEVERTEXSHADER = 45,
D3DDP2OP_DELETEVERTEXSHADER = 46, D3DDP2OP_DELETEVERTEXSHADER = 46,
@ -499,16 +490,16 @@ typedef struct _D3DHAL_DP2TRIANGLEFAN_IMM {
/* render states */ /* render states */
typedef struct _D3DHAL_DP2RENDERSTATE { typedef struct _D3DHAL_DP2RENDERSTATE {
D3DRENDERSTATETYPE RenderState; D3DRENDERSTATETYPE RenderState;
union { _ANONYMOUS_UNION union {
D3DVALUE dvState; D3DVALUE dvState;
DWORD dwState; DWORD dwState;
} DUMMYUNIONNAME; } DUMMYUNIONNAME;
} D3DHAL_DP2RENDERSTATE,*LPD3DHAL_DP2RENDERSTATE; } D3DHAL_DP2RENDERSTATE,*LPD3DHAL_DP2RENDERSTATE;
typedef struct _D3DHAL_DP2TEXTURESTAGESTATE { typedef struct _D3DHAL_DP2TEXTURESTAGESTATE {
WORD wStage; WORD wStage;
WORD TSState; WORD TSState;
DWORD dwValue; DWORD dwValue;
} D3DHAL_DP2TEXTURESTAGESTATE,*LPD3DHAL_DP2TEXTURESTAGESTATE; } D3DHAL_DP2TEXTURESTAGESTATE,*LPD3DHAL_DP2TEXTURESTAGESTATE;
@ -534,8 +525,8 @@ typedef struct _D3DHAL_DP2SETPALETTE {
typedef struct _D3DHAL_DP2UPDATEPALETTE { typedef struct _D3DHAL_DP2UPDATEPALETTE {
DWORD dwPaletteHandle; DWORD dwPaletteHandle;
WORD wStartIndex; WORD wStartIndex;
WORD wNumEntries; WORD wNumEntries;
} D3DHAL_DP2UPDATEPALETTE,*LPD3DHAL_DP2UPDATEPALETTE; } D3DHAL_DP2UPDATEPALETTE,*LPD3DHAL_DP2UPDATEPALETTE;
typedef struct _D3DHAL_DP2ZRANGE { typedef struct _D3DHAL_DP2ZRANGE {
@ -550,17 +541,17 @@ typedef struct _D3DHAL_DP2SETLIGHT {
DWORD dwDataType; DWORD dwDataType;
} D3DHAL_DP2SETLIGHT,*LPD3DHAL_DP2SETLIGHT; } D3DHAL_DP2SETLIGHT,*LPD3DHAL_DP2SETLIGHT;
#define D3DHAL_SETLIGHT_ENABLE 0 #define D3DHAL_SETLIGHT_ENABLE 0
#define D3DHAL_SETLIGHT_DISABLE 1 #define D3DHAL_SETLIGHT_DISABLE 1
#define D3DHAL_SETLIGHT_DATA 2 #define D3DHAL_SETLIGHT_DATA 2
typedef struct _D3DHAL_DP2CREATELIGHT { typedef struct _D3DHAL_DP2CREATELIGHT {
DWORD dwIndex; DWORD dwIndex;
} D3DHAL_DP2CREATELIGHT,*LPD3DHAL_DP2CREATELIGHT; } D3DHAL_DP2CREATELIGHT,*LPD3DHAL_DP2CREATELIGHT;
typedef struct _D3DHAL_DP2SETTRANSFORM { typedef struct _D3DHAL_DP2SETTRANSFORM {
D3DTRANSFORMSTATETYPE xfrmType; D3DTRANSFORMSTATETYPE xfrmType;
D3DMATRIX matrix; D3DMATRIX matrix;
} D3DHAL_DP2SETTRANSFORM,*LPD3DHAL_DP2SETTRANSFORM; } D3DHAL_DP2SETTRANSFORM,*LPD3DHAL_DP2SETTRANSFORM;
typedef struct _D3DHAL_DP2TEXBLT { typedef struct _D3DHAL_DP2TEXBLT {
@ -572,16 +563,16 @@ typedef struct _D3DHAL_DP2TEXBLT {
} D3DHAL_DP2TEXBLT,*LPD3DHAL_DP2TEXBLT; } D3DHAL_DP2TEXBLT,*LPD3DHAL_DP2TEXBLT;
typedef struct _D3DHAL_DP2STATESET { typedef struct _D3DHAL_DP2STATESET {
DWORD dwOperation; DWORD dwOperation;
DWORD dwParam; DWORD dwParam;
D3DSTATEBLOCKTYPE sbType; D3DSTATEBLOCKTYPE sbType;
} D3DHAL_DP2STATESET,*LPD3DHAL_DP2STATESET; } D3DHAL_DP2STATESET,*LPD3DHAL_DP2STATESET;
#define D3DHAL_STATESETBEGIN 0 #define D3DHAL_STATESETBEGIN 0
#define D3DHAL_STATESETEND 1 #define D3DHAL_STATESETEND 1
#define D3DHAL_STATESETDELETE 2 #define D3DHAL_STATESETDELETE 2
#define D3DHAL_STATESETEXECUTE 3 #define D3DHAL_STATESETEXECUTE 3
#define D3DHAL_STATESETCAPTURE 4 #define D3DHAL_STATESETCAPTURE 4
typedef struct _D3DHAL_DP2SETPRIORITY { typedef struct _D3DHAL_DP2SETPRIORITY {
DWORD dwDDSurface; DWORD dwDDSurface;
@ -594,11 +585,11 @@ typedef struct _D3DHAL_DP2SETRENDERTARGET {
} D3DHAL_DP2SETRENDERTARGET,*LPD3DHAL_DP2SETRENDERTARGET; } D3DHAL_DP2SETRENDERTARGET,*LPD3DHAL_DP2SETRENDERTARGET;
typedef struct _D3DHAL_DP2CLEAR { typedef struct _D3DHAL_DP2CLEAR {
DWORD dwFlags; DWORD dwFlags;
DWORD dwFillColor; DWORD dwFillColor;
D3DVALUE dvFillDepth; D3DVALUE dvFillDepth;
DWORD dwFillStencil; DWORD dwFillStencil;
RECT Rects[1]; RECT Rects[1];
} D3DHAL_DP2CLEAR,*LPD3DHAL_DP2CLEAR; } D3DHAL_DP2CLEAR,*LPD3DHAL_DP2CLEAR;
typedef struct _D3DHAL_DP2SETTEXLOD { typedef struct _D3DHAL_DP2SETTEXLOD {
@ -606,35 +597,35 @@ typedef struct _D3DHAL_DP2SETTEXLOD {
DWORD dwLOD; DWORD dwLOD;
} D3DHAL_DP2SETTEXLOD,*LPD3DHAL_DP2SETTEXLOD; } D3DHAL_DP2SETTEXLOD,*LPD3DHAL_DP2SETTEXLOD;
#if (DIRECT3D_VERSION >= 0x0900) #if (DIRECT3D_VERSION >= 0x0900)
#define DX9_DDI_VERSION 4 #define DX9_DDI_VERSION 4
#ifndef D3DVTXPCAPS_NO_VSDT_UBYTE4 #ifndef D3DVTXPCAPS_NO_VSDT_UBYTE4
#define D3DVTXPCAPS_NO_VSDT_UBYTE4 0x00000080 #define D3DVTXPCAPS_NO_VSDT_UBYTE4 0x00000080
#endif #endif
#define D3DPMISCCAPS_LINEPATTERNREP 0x00000004 #ifndef D3DPMISCCAPS_LINEPATTERNREP
#define D3DPMISCCAPS_LINEPATTERNREP 0x00000004
#endif
#define D3DDEVCAPS_HWVERTEXBUFFER 0x02000000 #define D3DDEVCAPS_HWVERTEXBUFFER 0x02000000
#define D3DDEVCAPS_HWINDEXBUFFER 0x04000000 #define D3DDEVCAPS_HWINDEXBUFFER 0x04000000
#define D3DDEVCAPS_SUBVOLUMELOCK 0x08000000 #define D3DDEVCAPS_SUBVOLUMELOCK 0x08000000
#ifndef D3DPMISCCAPS_FOGINFVF #ifndef D3DPMISCCAPS_FOGINFVF
#define D3DPMISCCAPS_FOGINFVF 0x00002000 #define D3DPMISCCAPS_FOGINFVF 0x00002000
#endif #endif
#ifndef D3DFVF_FOG #ifndef D3DFVF_FOG
#define D3DFVF_FOG 0x00002000 #define D3DFVF_FOG 0x00002000
#endif #endif
typedef struct _DD_GETDRIVERINFO2DATA typedef struct _DD_GETDRIVERINFO2DATA {
{ DWORD dwReserved;
DWORD dwReserved; DWORD dwMagic;
DWORD dwMagic; DWORD dwType;
DWORD dwType; DWORD dwExpectedSize;
DWORD dwExpectedSize;
} DD_GETDRIVERINFO2DATA; } DD_GETDRIVERINFO2DATA;
/** /**
@ -642,19 +633,19 @@ typedef struct _DD_GETDRIVERINFO2DATA
* D3DGDI2_MAGIC to see if the passed GUID is GUID_GetDriverInfo2 * D3DGDI2_MAGIC to see if the passed GUID is GUID_GetDriverInfo2
* or a GUID_DDStereoMode. * or a GUID_DDStereoMode.
*/ */
#define GUID_GetDriverInfo2 GUID_DDStereoMode #define GUID_GetDriverInfo2 GUID_DDStereoMode
/** /**
* Magic number used in DD_GETDRIVERINFO2DATA.dwHeight when * Magic number used in DD_GETDRIVERINFO2DATA.dwHeight when
* GUID_GetDriverInfo2/GUID_DDStereoMode is specified in a * GUID_GetDriverInfo2/GUID_DDStereoMode is specified in a
* GetDriverInfo call. * GetDriverInfo call.
*/ */
#define D3DGDI2_MAGIC 0xFFFFFFFF #define D3DGDI2_MAGIC 0xFFFFFFFF
#define D3DGDI2_TYPE_GETD3DCAPS8 0x00000001 #define D3DGDI2_TYPE_GETD3DCAPS8 0x00000001
#define D3DGDI2_TYPE_GETFORMATCOUNT 0x00000002 #define D3DGDI2_TYPE_GETFORMATCOUNT 0x00000002
#define D3DGDI2_TYPE_GETFORMAT 0x00000003 #define D3DGDI2_TYPE_GETFORMAT 0x00000003
#define D3DGDI2_TYPE_DXVERSION 0x00000004 /* Make driver aware of currently used DirectX version */ #define D3DGDI2_TYPE_DXVERSION 0x00000004 /* Make driver aware of currently used DirectX version */
#define D3DGDI2_TYPE_GETD3DCAPS9 0x00000010 #define D3DGDI2_TYPE_GETD3DCAPS9 0x00000010
#define D3DGDI2_TYPE_GETEXTENDEDMODECOUNT 0x00000011 #define D3DGDI2_TYPE_GETEXTENDEDMODECOUNT 0x00000011
#define D3DGDI2_TYPE_GETEXTENDEDMODE 0x00000012 #define D3DGDI2_TYPE_GETEXTENDEDMODE 0x00000012
@ -665,10 +656,9 @@ typedef struct _DD_GETDRIVERINFO2DATA
#define D3DGDI2_TYPE_DEFER_AGP_FREES 0x00000020 #define D3DGDI2_TYPE_DEFER_AGP_FREES 0x00000020
#define D3DGDI2_TYPE_GETD3DQUERYCOUNT 0x00000021 #define D3DGDI2_TYPE_GETD3DQUERYCOUNT 0x00000021
#define D3DGDI2_TYPE_GETD3DQUERY 0x00000022 #define D3DGDI2_TYPE_GETD3DQUERY 0x00000022
#define D3DGDI2_TYPE_GETDDIVERSION 0x00000023 /* Returns DX9_DDI_VERSION, used to check which DDK version the driver is compiled against */ #define D3DGDI2_TYPE_GETDDIVERSION 0x00000023 /* Returns DX9_DDI_VERSION, used to check which DDK version the driver is compiled against */
typedef struct _D3DCAPS8 typedef struct _D3DCAPS8 {
{
D3DDEVTYPE DeviceType; D3DDEVTYPE DeviceType;
UINT AdapterOrdinal; UINT AdapterOrdinal;
DWORD Caps; DWORD Caps;
@ -724,90 +714,77 @@ typedef struct _D3DCAPS8
float MaxPixelShaderValue; float MaxPixelShaderValue;
} D3DCAPS8; } D3DCAPS8;
typedef struct _DD_GETFORMATCOUNTDATA typedef struct _DD_GETFORMATCOUNTDATA {
{ DD_GETDRIVERINFO2DATA gdi2;
DD_GETDRIVERINFO2DATA gdi2; DWORD dwFormatCount;
DWORD dwFormatCount; DWORD dwReserved;
DWORD dwReserved;
} DD_GETFORMATCOUNTDATA; } DD_GETFORMATCOUNTDATA;
typedef struct _DD_GETFORMATDATA typedef struct _DD_GETFORMATDATA {
{ DD_GETDRIVERINFO2DATA gdi2;
DD_GETDRIVERINFO2DATA gdi2; DWORD dwFormatIndex;
DWORD dwFormatIndex; DDPIXELFORMAT format;
DDPIXELFORMAT format;
} DD_GETFORMATDATA; } DD_GETFORMATDATA;
typedef struct _DD_DXVERSION typedef struct _DD_DXVERSION {
{ DD_GETDRIVERINFO2DATA gdi2;
DD_GETDRIVERINFO2DATA gdi2; DWORD dwDXVersion;
DWORD dwDXVersion; DWORD dwReserved;
DWORD dwReserved;
} DD_DXVERSION; } DD_DXVERSION;
typedef struct _DD_DEFERRED_AGP_AWARE_DATA typedef struct _DD_DEFERRED_AGP_AWARE_DATA {
{ DD_GETDRIVERINFO2DATA gdi2;
DD_GETDRIVERINFO2DATA gdi2;
} DD_DEFERRED_AGP_AWARE_DATA; } DD_DEFERRED_AGP_AWARE_DATA;
typedef struct _DD_FREE_DEFERRED_AGP_DATA typedef struct _DD_FREE_DEFERRED_AGP_DATA {
{ DD_GETDRIVERINFO2DATA gdi2;
DD_GETDRIVERINFO2DATA gdi2; DWORD dwProcessId;
DWORD dwProcessId;
} DD_FREE_DEFERRED_AGP_DATA; } DD_FREE_DEFERRED_AGP_DATA;
typedef struct _DD_GETEXTENDEDMODECOUNTDATA typedef struct _DD_GETEXTENDEDMODECOUNTDATA {
{ DD_GETDRIVERINFO2DATA gdi2;
DD_GETDRIVERINFO2DATA gdi2; DWORD dwModeCount;
DWORD dwModeCount; DWORD dwReserved;
DWORD dwReserved;
} DD_GETEXTENDEDMODECOUNTDATA; } DD_GETEXTENDEDMODECOUNTDATA;
typedef struct _DD_GETEXTENDEDMODEDATA typedef struct _DD_GETEXTENDEDMODEDATA {
{ DD_GETDRIVERINFO2DATA gdi2;
DD_GETDRIVERINFO2DATA gdi2; DWORD dwModeIndex;
DWORD dwModeIndex; D3DDISPLAYMODE mode;
D3DDISPLAYMODE mode;
} DD_GETEXTENDEDMODEDATA; } DD_GETEXTENDEDMODEDATA;
typedef struct _DD_GETADAPTERGROUPDATA typedef struct _DD_GETADAPTERGROUPDATA {
{ DD_GETDRIVERINFO2DATA gdi2;
DD_GETDRIVERINFO2DATA gdi2; ULONG_PTR ulUniqueAdapterGroupId;
ULONG_PTR ulUniqueAdapterGroupId; DWORD dwReserved1;
DWORD dwReserved1; DWORD dwReserved2;
DWORD dwReserved2;
} DD_GETADAPTERGROUPDATA; } DD_GETADAPTERGROUPDATA;
typedef struct _DD_MULTISAMPLEQUALITYLEVELSDATA typedef struct _DD_MULTISAMPLEQUALITYLEVELSDATA {
{ DD_GETDRIVERINFO2DATA gdi2;
DD_GETDRIVERINFO2DATA gdi2; D3DFORMAT Format;
D3DFORMAT Format; WINBOOL bFlip : 1;
BOOL bFlip : 1; D3DMULTISAMPLE_TYPE MSType : 31;
D3DMULTISAMPLE_TYPE MSType : 31; DWORD QualityLevels;
DWORD QualityLevels;
} DD_MULTISAMPLEQUALITYLEVELSDATA; } DD_MULTISAMPLEQUALITYLEVELSDATA;
typedef struct _DD_GETD3DQUERYCOUNTDATA typedef struct _DD_GETD3DQUERYCOUNTDATA {
{ DD_GETDRIVERINFO2DATA gdi2;
DD_GETDRIVERINFO2DATA gdi2; DWORD dwNumQueries;
DWORD dwNumQueries;
} DD_GETD3DQUERYCOUNTDATA; } DD_GETD3DQUERYCOUNTDATA;
typedef struct _DD_GETD3DQUERYDATA typedef struct _DD_GETD3DQUERYDATA {
{ DD_GETDRIVERINFO2DATA gdi2;
DD_GETDRIVERINFO2DATA gdi2; __GNU_EXTENSION union {
__GNU_EXTENSION union DWORD dwQueryIndex;
{ D3DQUERYTYPE QueryType;
DWORD dwQueryIndex; };
D3DQUERYTYPE QueryType;
};
} DD_GETD3DQUERYDATA; } DD_GETD3DQUERYDATA;
typedef struct _DD_GETDDIVERSIONDATA typedef struct _DD_GETDDIVERSIONDATA {
{ DD_GETDRIVERINFO2DATA gdi2;
DD_GETDRIVERINFO2DATA gdi2; DWORD dwDXVersion;
DWORD dwDXVersion; DWORD dwDDIVersion;
DWORD dwDDIVersion;
} DD_GETDDIVERSIONDATA; } DD_GETDDIVERSIONDATA;
#endif /* (DIRECT3D_VERSION >= 0x0900) */ #endif /* (DIRECT3D_VERSION >= 0x0900) */

View file

@ -1,10 +1,10 @@
#ifndef _D3DHALEX_H #ifndef _D3DHALEX_H
#define _D3DHALEX_H #define _D3DHALEX_H
#define D3DGDI_IS_GDI2(pData) ((((DD_GETDRIVERINFO2DATA*)(pData->lpvData))->dwMagic) == D3DGDI2_MAGIC) #define D3DGDI_IS_GDI2(pData) ((((DD_GETDRIVERINFO2DATA*)(pData->lpvData))->dwMagic) == D3DGDI2_MAGIC)
#define D3DGDI_IS_STEREOMODE(pData) ((((DD_STEREOMODE*) (pData->lpvData))->dwHeight) != D3DGDI2_MAGIC) #define D3DGDI_IS_STEREOMODE(pData) ((((DD_STEREOMODE*) (pData->lpvData))->dwHeight) != D3DGDI2_MAGIC)
#define D3DGDI_GET_GDI2_DATA(pData) (D3DGDI_IS_GDI2(pData) ? (((DD_GETDRIVERINFO2DATA*)(pData->lpvData))) : NULL) #define D3DGDI_GET_GDI2_DATA(pData) (D3DGDI_IS_GDI2(pData) ? (((DD_GETDRIVERINFO2DATA*)(pData->lpvData))) : NULL)
#define D3DGDI_GET_STEREOMODE_DATA(pData) (D3DGDI_IS_STEREOMODE(pData) ? (((DD_STEREOMODE*)(pData->lpvData))) : NULL) #define D3DGDI_GET_STEREOMODE_DATA(pData) (D3DGDI_IS_STEREOMODE(pData) ? (((DD_STEREOMODE*)(pData->lpvData))) : NULL)
#endif #endif /* _D3DHALEX_H */

View file

@ -1,272 +0,0 @@
/*
* Direct3D NT driver interface
*/
#ifndef __DDK_D3DNTHAL_H
#define __DDK_D3DNTHAL_H
#include <ddrawint.h>
#include <d3dtypes.h>
#include <d3dcaps.h>
/* Helper macro to enable gcc's extension. */
#ifndef __GNU_EXTENSION
#ifdef __GNUC__
#define __GNU_EXTENSION __extension__
#else
#define __GNU_EXTENSION
#endif
#endif
#ifdef __cplusplus
extern "C" {
#endif
DEFINE_GUID(GUID_D3DCallbacks, 0x7BF06990, 0x8794, 0x11D0, 0x91, 0x39, 0x08, 0x00, 0x36, 0xD2, 0xEF, 0x02);
DEFINE_GUID(GUID_D3DCallbacks3, 0xDDF41230, 0xEC0A, 0x11D0, 0xA9, 0xB6, 0x00, 0xAA, 0x00, 0xC0, 0x99, 0x3E);
DEFINE_GUID(GUID_D3DExtendedCaps, 0x7DE41F80, 0x9D93, 0x11D0, 0x89, 0xAB, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x29);
DEFINE_GUID(GUID_D3DParseUnknownCommandCallback, 0x2E04FFA0, 0x98E4, 0x11D1, 0x8C, 0xE1, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0xA8);
DEFINE_GUID(GUID_ZPixelFormats, 0x93869880, 0x36CF, 0x11D1, 0x9B, 0x1B, 0x00, 0xAA, 0x00, 0xBB, 0xB8, 0xAE);
DEFINE_GUID(GUID_DDStereoMode, 0xF828169C, 0xA8E8, 0x11D2, 0xA1, 0xF2, 0x00, 0xA0, 0xC9, 0x83, 0xEA, 0xF6);
typedef struct _D3DNTHAL_CONTEXTCREATEDATA
{
__GNU_EXTENSION union
{
PDD_DIRECTDRAW_GLOBAL lpDDGbl;
PDD_DIRECTDRAW_LOCAL lpDDLcl;
};
__GNU_EXTENSION union
{
PDD_SURFACE_LOCAL lpDDS;
PDD_SURFACE_LOCAL lpDDSLcl;
};
__GNU_EXTENSION union
{
PDD_SURFACE_LOCAL lpDDSZ;
PDD_SURFACE_LOCAL lpDDSZLcl;
};
DWORD dwPID;
ULONG_PTR dwhContext;
HRESULT ddrval;
} D3DNTHAL_CONTEXTCREATEDATA, *LPD3DNTHAL_CONTEXTCREATEDATA;
typedef struct _D3DNTHAL_CONTEXTDESTROYDATA
{
ULONG_PTR dwhContext;
HRESULT ddrval;
} D3DNTHAL_CONTEXTDESTROYDATA, *LPD3DNTHAL_CONTEXTDESTROYDATA;
typedef struct _D3DNTHAL_CONTEXTDESTROYALLDATA
{
DWORD dwPID;
HRESULT ddrval;
} D3DNTHAL_CONTEXTDESTROYALLDATA, *LPD3DNTHAL_CONTEXTDESTROYALLDATA;
typedef struct _D3DNTHAL_SCENECAPTUREDATA
{
ULONG_PTR dwhContext;
DWORD dwFlag;
HRESULT ddrval;
} D3DNTHAL_SCENECAPTUREDATA, *LPD3DNTHAL_SCENECAPTUREDATA;
typedef struct _D3DNTHAL_TEXTURECREATEDATA
{
ULONG_PTR dwhContext;
HANDLE hDDS;
ULONG_PTR dwHandle;
HRESULT ddrval;
} D3DNTHAL_TEXTURECREATEDATA, *LPD3DNTHAL_TEXTURECREATEDATA;
typedef struct _D3DNTHAL_TEXTUREDESTROYDATA
{
ULONG_PTR dwhContext;
ULONG_PTR dwHandle;
HRESULT ddrval;
} D3DNTHAL_TEXTUREDESTROYDATA, *LPD3DNTHAL_TEXTUREDESTROYDATA;
typedef struct _D3DNTHAL_TEXTURESWAPDATA
{
ULONG_PTR dwhContext;
ULONG_PTR dwHandle1;
ULONG_PTR dwHandle2;
HRESULT ddrval;
} D3DNTHAL_TEXTURESWAPDATA, *LPD3DNTHAL_TEXTURESWAPDATA;
typedef struct _D3DNTHAL_TEXTUREGETSURFDATA
{
ULONG_PTR dwhContext;
HANDLE hDDS;
ULONG_PTR dwHandle;
HRESULT ddrval;
} D3DNTHAL_TEXTUREGETSURFDATA, *LPD3DNTHAL_TEXTUREGETSURFDATA;
typedef DWORD (APIENTRY *LPD3DNTHAL_CONTEXTCREATECB)(LPD3DNTHAL_CONTEXTCREATEDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_CONTEXTDESTROYCB)(LPD3DNTHAL_CONTEXTDESTROYDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_CONTEXTDESTROYALLCB)(LPD3DNTHAL_CONTEXTDESTROYALLDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_SCENECAPTURECB)(LPD3DNTHAL_SCENECAPTUREDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_TEXTURECREATECB)(LPD3DNTHAL_TEXTURECREATEDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_TEXTUREDESTROYCB)(LPD3DNTHAL_TEXTUREDESTROYDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_TEXTURESWAPCB)(LPD3DNTHAL_TEXTURESWAPDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_TEXTUREGETSURFCB)(LPD3DNTHAL_TEXTUREGETSURFDATA);
typedef struct _D3DNTHALDeviceDesc_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;
} D3DNTHALDEVICEDESC_V1, *LPD3DNTHALDEVICEDESC_V1;
typedef struct _D3DNTHAL_GLOBALDRIVERDATA
{
DWORD dwSize;
D3DNTHALDEVICEDESC_V1 hwCaps;
DWORD dwNumVertices;
DWORD dwNumClipVertices;
DWORD dwNumTextureFormats;
LPDDSURFACEDESC lpTextureFormats;
} D3DNTHAL_GLOBALDRIVERDATA, *LPD3DNTHAL_GLOBALDRIVERDATA;
typedef struct _D3DNTHAL_CALLBACKS
{
DWORD dwSize;
LPD3DNTHAL_CONTEXTCREATECB ContextCreate;
LPD3DNTHAL_CONTEXTDESTROYCB ContextDestroy;
LPD3DNTHAL_CONTEXTDESTROYALLCB ContextDestroyAll;
LPD3DNTHAL_SCENECAPTURECB SceneCapture;
LPVOID dwReserved10;
LPVOID dwReserved11;
LPVOID dwReserved22;
LPVOID dwReserved23;
ULONG_PTR dwReserved;
LPD3DNTHAL_TEXTURECREATECB TextureCreate;
LPD3DNTHAL_TEXTUREDESTROYCB TextureDestroy;
LPD3DNTHAL_TEXTURESWAPCB TextureSwap;
LPD3DNTHAL_TEXTUREGETSURFCB TextureGetSurf;
LPVOID dwReserved12;
LPVOID dwReserved13;
LPVOID dwReserved14;
LPVOID dwReserved15;
LPVOID dwReserved16;
LPVOID dwReserved17;
LPVOID dwReserved18;
LPVOID dwReserved19;
LPVOID dwReserved20;
LPVOID dwReserved21;
LPVOID dwReserved24;
ULONG_PTR dwReserved0;
ULONG_PTR dwReserved1;
ULONG_PTR dwReserved2;
ULONG_PTR dwReserved3;
ULONG_PTR dwReserved4;
ULONG_PTR dwReserved5;
ULONG_PTR dwReserved6;
ULONG_PTR dwReserved7;
ULONG_PTR dwReserved8;
ULONG_PTR dwReserved9;
} D3DNTHAL_CALLBACKS, *LPD3DNTHAL_CALLBACKS;
typedef struct _D3DNTHAL_SETRENDERTARGETDATA
{
ULONG_PTR dwhContext;
PDD_SURFACE_LOCAL lpDDS;
PDD_SURFACE_LOCAL lpDDSZ;
HRESULT ddrval;
} D3DNTHAL_SETRENDERTARGETDATA;
typedef D3DNTHAL_SETRENDERTARGETDATA *LPD3DNTHAL_SETRENDERTARGETDATA;
typedef DWORD (APIENTRY *LPD3DNTHAL_SETRENDERTARGETCB)(LPD3DNTHAL_SETRENDERTARGETDATA);
typedef struct _D3DNTHAL_CALLBACKS2
{
DWORD dwSize;
DWORD dwFlags;
LPD3DNTHAL_SETRENDERTARGETCB SetRenderTarget;
LPVOID dwReserved1;
LPVOID dwReserved2;
LPVOID dwReserved3;
LPVOID dwReserved4;
} D3DNTHAL_CALLBACKS2, *LPD3DNTHAL_CALLBACKS2;
typedef struct _D3DNTHAL_CLEAR2DATA
{
ULONG_PTR dwhContext;
DWORD dwFlags;
DWORD dwFillColor;
D3DVALUE dvFillDepth;
DWORD dwFillStencil;
LPD3DRECT lpRects;
DWORD dwNumRects;
HRESULT ddrval;
} D3DNTHAL_CLEAR2DATA;
typedef D3DNTHAL_CLEAR2DATA FAR *LPD3DNTHAL_CLEAR2DATA;
typedef struct _D3DNTHAL_VALIDATETEXTURESTAGESTATEDATA
{
ULONG_PTR dwhContext;
DWORD dwFlags;
ULONG_PTR dwReserved;
DWORD dwNumPasses;
HRESULT ddrval;
} D3DNTHAL_VALIDATETEXTURESTAGESTATEDATA, FAR *LPD3DNTHAL_VALIDATETEXTURESTAGESTATEDATA;
typedef struct _D3DNTHAL_DRAWPRIMITIVES2DATA
{
ULONG_PTR dwhContext;
DWORD dwFlags;
DWORD dwVertexType;
PDD_SURFACE_LOCAL lpDDCommands;
DWORD dwCommandOffset;
DWORD dwCommandLength;
__GNU_EXTENSION union
{
PDD_SURFACE_LOCAL lpDDVertex;
LPVOID lpVertices;
};
DWORD dwVertexOffset;
DWORD dwVertexLength;
DWORD dwReqVertexBufSize;
DWORD dwReqCommandBufSize;
LPDWORD lpdwRStates;
__GNU_EXTENSION union
{
DWORD dwVertexSize;
HRESULT ddrval;
};
DWORD dwErrorOffset;
} D3DNTHAL_DRAWPRIMITIVES2DATA, FAR *LPD3DNTHAL_DRAWPRIMITIVES2DATA;
typedef DWORD (APIENTRY *LPD3DNTHAL_CLEAR2CB)(LPD3DNTHAL_CLEAR2DATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_VALIDATETEXTURESTAGESTATECB)(LPD3DNTHAL_VALIDATETEXTURESTAGESTATEDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_DRAWPRIMITIVES2CB)(LPD3DNTHAL_DRAWPRIMITIVES2DATA);
typedef struct _D3DNTHAL_CALLBACKS3
{
DWORD dwSize;
DWORD dwFlags;
LPD3DNTHAL_CLEAR2CB Clear2;
LPVOID lpvReserved;
LPD3DNTHAL_VALIDATETEXTURESTAGESTATECB ValidateTextureStageState;
LPD3DNTHAL_DRAWPRIMITIVES2CB DrawPrimitives2;
} D3DNTHAL_CALLBACKS3, *LPD3DNTHAL_CALLBACKS3;
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /* __DDK_D3DNTHAL_H */

View file

@ -1,97 +0,0 @@
/* $Id$
*
* COPYRIGHT: This file is in the public domain.
* PROJECT: ReactOS kernel
* FILE:
* PURPOSE: Directx headers
* PROGRAMMER: Magnus Olsen (greatlrd)
*
*/
#ifndef __DDKM_INCLUDED__
#define __DDKM_INCLUDED__
#if defined (_WIN32) && !defined (_NO_COM)
DEFINE_GUID (IID_IDirectDrawKernel, 0x8D56C120,0x6A08,0x11D0,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
DEFINE_GUID (IID_IDirectDrawSurfaceKernel, 0x60755DA0,0x6A40,0x11D0,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
#endif
typedef struct _DDKERNELCAPS
{
DWORD dwSize;
DWORD dwCaps;
DWORD dwIRQCaps;
} DDKERNELCAPS, *LPDDKERNELCAPS;
#define DDKERNELCAPS_SKIPFIELDS 0x00000001
#define DDKERNELCAPS_AUTOFLIP 0x00000002
#define DDKERNELCAPS_SETSTATE 0x00000004
#define DDKERNELCAPS_LOCK 0x00000008
#define DDKERNELCAPS_FLIPVIDEOPORT 0x00000010
#define DDKERNELCAPS_FLIPOVERLAY 0x00000020
#define DDKERNELCAPS_CAPTURE_SYSMEM 0x00000040
#define DDKERNELCAPS_CAPTURE_NONLOCALVIDMEM 0x00000080
#define DDKERNELCAPS_FIELDPOLARITY 0x00000100
#define DDKERNELCAPS_CAPTURE_INVERTED 0x00000200
#define DDIRQ_DISPLAY_VSYNC 0x00000001
#define DDIRQ_RESERVED1 0x00000002
#define DDIRQ_VPORT0_VSYNC 0x00000004
#define DDIRQ_VPORT0_LINE 0x00000008
#define DDIRQ_VPORT1_VSYNC 0x00000010
#define DDIRQ_VPORT1_LINE 0x00000020
#define DDIRQ_VPORT2_VSYNC 0x00000040
#define DDIRQ_VPORT2_LINE 0x00000080
#define DDIRQ_VPORT3_VSYNC 0x00000100
#define DDIRQ_VPORT3_LINE 0x00000200
#define DDIRQ_VPORT4_VSYNC 0x00000400
#define DDIRQ_VPORT4_LINE 0x00000800
#define DDIRQ_VPORT5_VSYNC 0x00001000
#define DDIRQ_VPORT5_LINE 0x00002000
#define DDIRQ_VPORT6_VSYNC 0x00004000
#define DDIRQ_VPORT6_LINE 0x00008000
#define DDIRQ_VPORT7_VSYNC 0x00010000
#define DDIRQ_VPORT7_LINE 0x00020000
#define DDIRQ_VPORT8_VSYNC 0x00040000
#define DDIRQ_VPORT8_LINE 0x00080000
#define DDIRQ_VPORT9_VSYNC 0x00010000
#define DDIRQ_VPORT9_LINE 0x00020000
typedef struct IDirectDrawKernel* LPDIRECTDRAWKERNEL;
typedef struct IDirectDrawSurfaceKernel* LPDIRECTDRAWSURFACEKERNEL;
#if defined(_WIN32) && !defined(_NO_COM)
#undef INTERFACE
#define INTERFACE IDirectDrawKernel
DECLARE_INTERFACE_ (IDirectDrawKernel, IUnknown)
{
STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID* ppvObj) PURE;
STDMETHOD_(ULONG,AddRef) (THIS) PURE;
STDMETHOD_(ULONG,Release) (THIS) PURE;
STDMETHOD(GetKernelHandle) (THIS_ ULONG*) PURE;
STDMETHOD(ReleaseKernelHandle) (THIS) PURE;
};
#undef INTERFACE
#define INTERFACE IDirectDrawSurfaceKernel
DECLARE_INTERFACE_ (IDirectDrawSurfaceKernel, IUnknown)
{
STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID* ppvObj) PURE;
STDMETHOD_(ULONG,AddRef) (THIS) PURE;
STDMETHOD_(ULONG,Release) (THIS) PURE;
STDMETHOD(GetKernelHandle) (THIS_ ULONG*) PURE;
STDMETHOD(ReleaseKernelHandle) (THIS) PURE;
};
#undef INTERFACE
#endif // defined(_WIN32) && !defined(_NO_COM)
#ifdef __cplusplus
};
#endif
#endif

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -367,7 +367,7 @@ typedef HRESULT (*LPDDENUMVIDEOCALLBACK)(LPDDVIDEOPORTCAPS, LPVOID);
#endif #endif
#ifdef __cplusplus #ifdef __cplusplus
}; }
#endif #endif
#endif #endif
#endif #endif

View file

@ -65,4 +65,9 @@ extern "C" {
#endif #endif
#endif /* NO_PORT_MACROS */ #endif /* NO_PORT_MACROS */
#ifdef __cplusplus
}
#endif
#endif /* __IOACCESS_H */ #endif /* __IOACCESS_H */

View file

@ -0,0 +1,234 @@
/*
* Direct3D NT driver interface
*/
#ifndef __DDK_D3DNTHAL_H
#define __DDK_D3DNTHAL_H
#include <ddrawint.h>
#include <d3dtypes.h>
#include <d3dcaps.h>
#ifdef __cplusplus
extern "C" {
#endif
DEFINE_GUID(GUID_D3DCallbacks, 0x7BF06990, 0x8794, 0x11D0, 0x91, 0x39, 0x08, 0x00, 0x36, 0xD2, 0xEF, 0x02);
DEFINE_GUID(GUID_D3DCallbacks3, 0xDDF41230, 0xEC0A, 0x11D0, 0xA9, 0xB6, 0x00, 0xAA, 0x00, 0xC0, 0x99, 0x3E);
DEFINE_GUID(GUID_D3DExtendedCaps, 0x7DE41F80, 0x9D93, 0x11D0, 0x89, 0xAB, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x29);
DEFINE_GUID(GUID_D3DParseUnknownCommandCallback, 0x2E04FFA0, 0x98E4, 0x11D1, 0x8C, 0xE1, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0xA8);
DEFINE_GUID(GUID_ZPixelFormats, 0x93869880, 0x36CF, 0x11D1, 0x9B, 0x1B, 0x00, 0xAA, 0x00, 0xBB, 0xB8, 0xAE);
DEFINE_GUID(GUID_DDStereoMode, 0xF828169C, 0xA8E8, 0x11D2, 0xA1, 0xF2, 0x00, 0xA0, 0xC9, 0x83, 0xEA, 0xF6);
typedef struct _D3DNTHAL_CONTEXTCREATEDATA {
__GNU_EXTENSION union {
PDD_DIRECTDRAW_GLOBAL lpDDGbl;
PDD_DIRECTDRAW_LOCAL lpDDLcl;
};
__GNU_EXTENSION union {
PDD_SURFACE_LOCAL lpDDS;
PDD_SURFACE_LOCAL lpDDSLcl;
};
__GNU_EXTENSION union {
PDD_SURFACE_LOCAL lpDDSZ;
PDD_SURFACE_LOCAL lpDDSZLcl;
};
DWORD dwPID;
ULONG_PTR dwhContext;
HRESULT ddrval;
} D3DNTHAL_CONTEXTCREATEDATA, *LPD3DNTHAL_CONTEXTCREATEDATA;
typedef struct _D3DNTHAL_CONTEXTDESTROYDATA {
ULONG_PTR dwhContext;
HRESULT ddrval;
} D3DNTHAL_CONTEXTDESTROYDATA, *LPD3DNTHAL_CONTEXTDESTROYDATA;
typedef struct _D3DNTHAL_CONTEXTDESTROYALLDATA {
DWORD dwPID;
HRESULT ddrval;
} D3DNTHAL_CONTEXTDESTROYALLDATA, *LPD3DNTHAL_CONTEXTDESTROYALLDATA;
typedef struct _D3DNTHAL_SCENECAPTUREDATA {
ULONG_PTR dwhContext;
DWORD dwFlag;
HRESULT ddrval;
} D3DNTHAL_SCENECAPTUREDATA, *LPD3DNTHAL_SCENECAPTUREDATA;
typedef struct _D3DNTHAL_TEXTURECREATEDATA {
ULONG_PTR dwhContext;
HANDLE hDDS;
ULONG_PTR dwHandle;
HRESULT ddrval;
} D3DNTHAL_TEXTURECREATEDATA, *LPD3DNTHAL_TEXTURECREATEDATA;
typedef struct _D3DNTHAL_TEXTUREDESTROYDATA {
ULONG_PTR dwhContext;
ULONG_PTR dwHandle;
HRESULT ddrval;
} D3DNTHAL_TEXTUREDESTROYDATA, *LPD3DNTHAL_TEXTUREDESTROYDATA;
typedef struct _D3DNTHAL_TEXTURESWAPDATA {
ULONG_PTR dwhContext;
ULONG_PTR dwHandle1;
ULONG_PTR dwHandle2;
HRESULT ddrval;
} D3DNTHAL_TEXTURESWAPDATA, *LPD3DNTHAL_TEXTURESWAPDATA;
typedef struct _D3DNTHAL_TEXTUREGETSURFDATA {
ULONG_PTR dwhContext;
HANDLE hDDS;
ULONG_PTR dwHandle;
HRESULT ddrval;
} D3DNTHAL_TEXTUREGETSURFDATA, *LPD3DNTHAL_TEXTUREGETSURFDATA;
typedef DWORD (APIENTRY *LPD3DNTHAL_CONTEXTCREATECB)(LPD3DNTHAL_CONTEXTCREATEDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_CONTEXTDESTROYCB)(LPD3DNTHAL_CONTEXTDESTROYDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_CONTEXTDESTROYALLCB)(LPD3DNTHAL_CONTEXTDESTROYALLDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_SCENECAPTURECB)(LPD3DNTHAL_SCENECAPTUREDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_TEXTURECREATECB)(LPD3DNTHAL_TEXTURECREATEDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_TEXTUREDESTROYCB)(LPD3DNTHAL_TEXTUREDESTROYDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_TEXTURESWAPCB)(LPD3DNTHAL_TEXTURESWAPDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_TEXTUREGETSURFCB)(LPD3DNTHAL_TEXTUREGETSURFDATA);
typedef struct _D3DNTHALDeviceDesc_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;
} D3DNTHALDEVICEDESC_V1, *LPD3DNTHALDEVICEDESC_V1;
typedef struct _D3DNTHAL_GLOBALDRIVERDATA {
DWORD dwSize;
D3DNTHALDEVICEDESC_V1 hwCaps;
DWORD dwNumVertices;
DWORD dwNumClipVertices;
DWORD dwNumTextureFormats;
LPDDSURFACEDESC lpTextureFormats;
} D3DNTHAL_GLOBALDRIVERDATA, *LPD3DNTHAL_GLOBALDRIVERDATA;
typedef struct _D3DNTHAL_CALLBACKS {
DWORD dwSize;
LPD3DNTHAL_CONTEXTCREATECB ContextCreate;
LPD3DNTHAL_CONTEXTDESTROYCB ContextDestroy;
LPD3DNTHAL_CONTEXTDESTROYALLCB ContextDestroyAll;
LPD3DNTHAL_SCENECAPTURECB SceneCapture;
LPVOID dwReserved10;
LPVOID dwReserved11;
LPVOID dwReserved22;
LPVOID dwReserved23;
ULONG_PTR dwReserved;
LPD3DNTHAL_TEXTURECREATECB TextureCreate;
LPD3DNTHAL_TEXTUREDESTROYCB TextureDestroy;
LPD3DNTHAL_TEXTURESWAPCB TextureSwap;
LPD3DNTHAL_TEXTUREGETSURFCB TextureGetSurf;
LPVOID dwReserved12;
LPVOID dwReserved13;
LPVOID dwReserved14;
LPVOID dwReserved15;
LPVOID dwReserved16;
LPVOID dwReserved17;
LPVOID dwReserved18;
LPVOID dwReserved19;
LPVOID dwReserved20;
LPVOID dwReserved21;
LPVOID dwReserved24;
ULONG_PTR dwReserved0;
ULONG_PTR dwReserved1;
ULONG_PTR dwReserved2;
ULONG_PTR dwReserved3;
ULONG_PTR dwReserved4;
ULONG_PTR dwReserved5;
ULONG_PTR dwReserved6;
ULONG_PTR dwReserved7;
ULONG_PTR dwReserved8;
ULONG_PTR dwReserved9;
} D3DNTHAL_CALLBACKS, *LPD3DNTHAL_CALLBACKS;
typedef struct _D3DNTHAL_SETRENDERTARGETDATA {
ULONG_PTR dwhContext;
PDD_SURFACE_LOCAL lpDDS;
PDD_SURFACE_LOCAL lpDDSZ;
HRESULT ddrval;
} D3DNTHAL_SETRENDERTARGETDATA, *LPD3DNTHAL_SETRENDERTARGETDATA;
typedef DWORD (APIENTRY *LPD3DNTHAL_SETRENDERTARGETCB)(LPD3DNTHAL_SETRENDERTARGETDATA);
typedef struct _D3DNTHAL_CALLBACKS2 {
DWORD dwSize;
DWORD dwFlags;
LPD3DNTHAL_SETRENDERTARGETCB SetRenderTarget;
LPVOID dwReserved1;
LPVOID dwReserved2;
LPVOID dwReserved3;
LPVOID dwReserved4;
} D3DNTHAL_CALLBACKS2, *LPD3DNTHAL_CALLBACKS2;
typedef struct _D3DNTHAL_CLEAR2DATA {
ULONG_PTR dwhContext;
DWORD dwFlags;
DWORD dwFillColor;
D3DVALUE dvFillDepth;
DWORD dwFillStencil;
LPD3DRECT lpRects;
DWORD dwNumRects;
HRESULT ddrval;
} D3DNTHAL_CLEAR2DATA, FAR *LPD3DNTHAL_CLEAR2DATA;
typedef struct _D3DNTHAL_VALIDATETEXTURESTAGESTATEDATA {
ULONG_PTR dwhContext;
DWORD dwFlags;
ULONG_PTR dwReserved;
DWORD dwNumPasses;
HRESULT ddrval;
} D3DNTHAL_VALIDATETEXTURESTAGESTATEDATA, FAR *LPD3DNTHAL_VALIDATETEXTURESTAGESTATEDATA;
typedef struct _D3DNTHAL_DRAWPRIMITIVES2DATA {
ULONG_PTR dwhContext;
DWORD dwFlags;
DWORD dwVertexType;
PDD_SURFACE_LOCAL lpDDCommands;
DWORD dwCommandOffset;
DWORD dwCommandLength;
__GNU_EXTENSION union {
PDD_SURFACE_LOCAL lpDDVertex;
LPVOID lpVertices;
};
DWORD dwVertexOffset;
DWORD dwVertexLength;
DWORD dwReqVertexBufSize;
DWORD dwReqCommandBufSize;
LPDWORD lpdwRStates;
__GNU_EXTENSION union {
DWORD dwVertexSize;
HRESULT ddrval;
};
DWORD dwErrorOffset;
} D3DNTHAL_DRAWPRIMITIVES2DATA, FAR *LPD3DNTHAL_DRAWPRIMITIVES2DATA;
typedef DWORD (APIENTRY *LPD3DNTHAL_CLEAR2CB)(LPD3DNTHAL_CLEAR2DATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_VALIDATETEXTURESTAGESTATECB)(LPD3DNTHAL_VALIDATETEXTURESTAGESTATEDATA);
typedef DWORD (APIENTRY *LPD3DNTHAL_DRAWPRIMITIVES2CB)(LPD3DNTHAL_DRAWPRIMITIVES2DATA);
typedef struct _D3DNTHAL_CALLBACKS3 {
DWORD dwSize;
DWORD dwFlags;
LPD3DNTHAL_CLEAR2CB Clear2;
LPVOID lpvReserved;
LPD3DNTHAL_VALIDATETEXTURESTAGESTATECB ValidateTextureStageState;
LPD3DNTHAL_DRAWPRIMITIVES2CB DrawPrimitives2;
} D3DNTHAL_CALLBACKS3, *LPD3DNTHAL_CALLBACKS3;
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /* __DDK_D3DNTHAL_H */

View file

@ -0,0 +1,95 @@
/* $Id$
*
* COPYRIGHT: This file is in the public domain.
* PROJECT: ReactOS kernel
* FILE:
* PURPOSE: Directx headers
* PROGRAMMER: Magnus Olsen (greatlrd)
*
*/
#ifndef __DDKM_INCLUDED__
#define __DDKM_INCLUDED__
#ifdef __cplusplus
extern "C" {
#endif
#if defined (_WIN32) && !defined (_NO_COM)
DEFINE_GUID (IID_IDirectDrawKernel, 0x8D56C120,0x6A08,0x11D0,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
DEFINE_GUID (IID_IDirectDrawSurfaceKernel, 0x60755DA0,0x6A40,0x11D0,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
#endif
typedef struct _DDKERNELCAPS {
DWORD dwSize;
DWORD dwCaps;
DWORD dwIRQCaps;
} DDKERNELCAPS, *LPDDKERNELCAPS;
#define DDKERNELCAPS_SKIPFIELDS 0x00000001
#define DDKERNELCAPS_AUTOFLIP 0x00000002
#define DDKERNELCAPS_SETSTATE 0x00000004
#define DDKERNELCAPS_LOCK 0x00000008
#define DDKERNELCAPS_FLIPVIDEOPORT 0x00000010
#define DDKERNELCAPS_FLIPOVERLAY 0x00000020
#define DDKERNELCAPS_CAPTURE_SYSMEM 0x00000040
#define DDKERNELCAPS_CAPTURE_NONLOCALVIDMEM 0x00000080
#define DDKERNELCAPS_FIELDPOLARITY 0x00000100
#define DDKERNELCAPS_CAPTURE_INVERTED 0x00000200
#define DDIRQ_DISPLAY_VSYNC 0x00000001
#define DDIRQ_RESERVED1 0x00000002
#define DDIRQ_VPORT0_VSYNC 0x00000004
#define DDIRQ_VPORT0_LINE 0x00000008
#define DDIRQ_VPORT1_VSYNC 0x00000010
#define DDIRQ_VPORT1_LINE 0x00000020
#define DDIRQ_VPORT2_VSYNC 0x00000040
#define DDIRQ_VPORT2_LINE 0x00000080
#define DDIRQ_VPORT3_VSYNC 0x00000100
#define DDIRQ_VPORT3_LINE 0x00000200
#define DDIRQ_VPORT4_VSYNC 0x00000400
#define DDIRQ_VPORT4_LINE 0x00000800
#define DDIRQ_VPORT5_VSYNC 0x00001000
#define DDIRQ_VPORT5_LINE 0x00002000
#define DDIRQ_VPORT6_VSYNC 0x00004000
#define DDIRQ_VPORT6_LINE 0x00008000
#define DDIRQ_VPORT7_VSYNC 0x00010000
#define DDIRQ_VPORT7_LINE 0x00020000
#define DDIRQ_VPORT8_VSYNC 0x00040000
#define DDIRQ_VPORT8_LINE 0x00080000
#define DDIRQ_VPORT9_VSYNC 0x00010000
#define DDIRQ_VPORT9_LINE 0x00020000
typedef struct IDirectDrawKernel* LPDIRECTDRAWKERNEL;
typedef struct IDirectDrawSurfaceKernel* LPDIRECTDRAWSURFACEKERNEL;
#if defined(_WIN32) && !defined(_NO_COM)
#undef INTERFACE
#define INTERFACE IDirectDrawKernel
DECLARE_INTERFACE_ (IDirectDrawKernel, IUnknown) {
STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID* ppvObj) PURE;
STDMETHOD_(ULONG,AddRef) (THIS) PURE;
STDMETHOD_(ULONG,Release) (THIS) PURE;
STDMETHOD(GetKernelHandle) (THIS_ ULONG*) PURE;
STDMETHOD(ReleaseKernelHandle) (THIS) PURE;
};
#undef INTERFACE
#define INTERFACE IDirectDrawSurfaceKernel
DECLARE_INTERFACE_ (IDirectDrawSurfaceKernel, IUnknown) {
STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID* ppvObj) PURE;
STDMETHOD_(ULONG,AddRef) (THIS) PURE;
STDMETHOD_(ULONG,Release) (THIS) PURE;
STDMETHOD(GetKernelHandle) (THIS_ ULONG*) PURE;
STDMETHOD(ReleaseKernelHandle) (THIS) PURE;
};
#undef INTERFACE
#endif /* defined(_WIN32) && !defined(_NO_COM) */
#ifdef __cplusplus
}
#endif
#endif

View file

@ -21,23 +21,12 @@
#ifndef __DDKMAPI_INCLUDED__ #ifndef __DDKMAPI_INCLUDED__
#define __DDKMAPI_INCLUDED__ #define __DDKMAPI_INCLUDED__
/* Helper macro to enable gcc's extension. */
#ifndef __GNU_EXTENSION
#ifdef __GNUC__
#define __GNU_EXTENSION __extension__
#else
#define __GNU_EXTENSION
#endif
#endif
#if defined(_DXAPI_) #if defined(_DXAPI_)
#define DXAPI #define DXAPI
#else #else
#define DXAPI DECLSPEC_IMPORT #define DXAPI DECLSPEC_IMPORT
#endif #endif
#define DXAPI_MAJORVERSION 1 #define DXAPI_MAJORVERSION 1
#define DXAPI_MINORVERSION 0 #define DXAPI_MINORVERSION 0
@ -106,234 +95,202 @@
typedef DWORD (PASCAL *LPDXAPI)(DWORD dwFunctionNum, LPVOID lpvInBuffer, DWORD cbInBuffer, LPVOID lpvOutBuffer, DWORD cbOutBuffer); typedef DWORD (PASCAL *LPDXAPI)(DWORD dwFunctionNum, LPVOID lpvInBuffer, DWORD cbInBuffer, LPVOID lpvOutBuffer, DWORD cbOutBuffer);
typedef ULONG (PASCAL *LPDD_NOTIFYCALLBACK) (DWORD dwFlags, PVOID pContext, DWORD dwParam1, DWORD dwParam2); typedef ULONG (PASCAL *LPDD_NOTIFYCALLBACK) (DWORD dwFlags, PVOID pContext, DWORD dwParam1, DWORD dwParam2);
typedef struct _DDCAPBUFFINFO typedef struct _DDCAPBUFFINFO {
{ DWORD dwFieldNumber;
DWORD dwFieldNumber; DWORD bPolarity;
DWORD bPolarity; LARGE_INTEGER liTimeStamp;
LARGE_INTEGER liTimeStamp; DWORD ddRVal;
DWORD ddRVal; } DDCAPBUFFINFO, *LPDDCAPBUFFINFO;
} DDCAPBUFFINFO, * LPDDCAPBUFFINFO;
typedef struct _DDADDVPCAPTUREBUFF typedef struct _DDADDVPCAPTUREBUFF {
{ HANDLE hCapture;
HANDLE hCapture; DWORD dwFlags;
DWORD dwFlags; PMDL pMDL;
PMDL pMDL; PKEVENT pKEvent;
PKEVENT pKEvent; LPDDCAPBUFFINFO lpBuffInfo;
LPDDCAPBUFFINFO lpBuffInfo; } DDADDVPCAPTUREBUFF, *LPDDADDVPCAPTUREBUFF;
} DDADDVPCAPTUREBUFF, * LPDDADDVPCAPTUREBUFF;
typedef struct _DDCLOSEHANDLE typedef struct _DDCLOSEHANDLE {
{ HANDLE hHandle;
HANDLE hHandle;
} DDCLOSEHANDLE, *LPDDCLOSEHANDLE; } DDCLOSEHANDLE, *LPDDCLOSEHANDLE;
typedef struct _DDFLIPOVERLAY typedef struct _DDFLIPOVERLAY {
{ HANDLE hDirectDraw;
HANDLE hDirectDraw; HANDLE hCurrentSurface;
HANDLE hCurrentSurface; HANDLE hTargetSurface;
HANDLE hTargetSurface; DWORD dwFlags;
DWORD dwFlags;
} DDFLIPOVERLAY, *LPDDFLIPOVERLAY; } DDFLIPOVERLAY, *LPDDFLIPOVERLAY;
typedef struct _DDFLIPVIDEOPORT typedef struct _DDFLIPVIDEOPORT {
{ HANDLE hDirectDraw;
HANDLE hDirectDraw; HANDLE hVideoPort;
HANDLE hVideoPort; HANDLE hCurrentSurface;
HANDLE hCurrentSurface; HANDLE hTargetSurface;
HANDLE hTargetSurface; DWORD dwFlags;
DWORD dwFlags;
} DDFLIPVIDEOPORT, *LPDDFLIPVIDEOPORT; } DDFLIPVIDEOPORT, *LPDDFLIPVIDEOPORT;
typedef struct _DDGETAUTOFLIPIN typedef struct _DDGETAUTOFLIPIN {
{ HANDLE hDirectDraw;
HANDLE hDirectDraw; HANDLE hVideoPort;
HANDLE hVideoPort;
} DDGETAUTOFLIPIN, *LPDDGETAUTOFLIPIN; } DDGETAUTOFLIPIN, *LPDDGETAUTOFLIPIN;
typedef struct _DDGETAUTOFLIPOUT typedef struct _DDGETAUTOFLIPOUT {
{ DWORD ddRVal;
DWORD ddRVal; HANDLE hVideoSurface;
HANDLE hVideoSurface; HANDLE hVBISurface;
HANDLE hVBISurface; BOOL bPolarity;
BOOL bPolarity;
} DDGETAUTOFLIPOUT, *LPDDGETAUTOFLIPOUT; } DDGETAUTOFLIPOUT, *LPDDGETAUTOFLIPOUT;
typedef struct _DDGETPOLARITYIN typedef struct _DDGETPOLARITYIN {
{ HANDLE hDirectDraw;
HANDLE hDirectDraw; HANDLE hVideoPort;
HANDLE hVideoPort;
} DDGETPOLARITYIN, *LPDDGETPOLARITYIN; } DDGETPOLARITYIN, *LPDDGETPOLARITYIN;
typedef struct _DDGETPOLARITYOUT typedef struct _DDGETPOLARITYOUT {
{ DWORD ddRVal;
DWORD ddRVal; BOOL bPolarity;
BOOL bPolarity;
} DDGETPOLARITYOUT, *LPDDGETPOLARITYOUT; } DDGETPOLARITYOUT, *LPDDGETPOLARITYOUT;
typedef struct _DDGETSURFACESTATEIN typedef struct _DDGETSURFACESTATEIN {
{ HANDLE hDirectDraw;
HANDLE hDirectDraw; HANDLE hSurface;
HANDLE hSurface;
} DDGETSURFACESTATEIN, *LPDDGETSURFACESTATEIN; } DDGETSURFACESTATEIN, *LPDDGETSURFACESTATEIN;
typedef struct _DDGETSURFACESTATEOUT typedef struct _DDGETSURFACESTATEOUT {
{ DWORD ddRVal;
DWORD ddRVal; DWORD dwStateCaps;
DWORD dwStateCaps; DWORD dwStateStatus;
DWORD dwStateStatus;
} DDGETSURFACESTATEOUT, *LPDDGETSURFACESTATEOUT; } DDGETSURFACESTATEOUT, *LPDDGETSURFACESTATEOUT;
typedef struct _DDGETFIELDNUMIN typedef struct _DDGETFIELDNUMIN {
{ HANDLE hDirectDraw;
HANDLE hDirectDraw; HANDLE hVideoPort;
HANDLE hVideoPort;
} DDGETFIELDNUMIN, *LPDDGETFIELDNUMIN; } DDGETFIELDNUMIN, *LPDDGETFIELDNUMIN;
typedef struct _DDGETFIELDNUMOUT typedef struct _DDGETFIELDNUMOUT {
{ DWORD ddRVal;
DWORD ddRVal; DWORD dwFieldNum;
DWORD dwFieldNum;
} DDGETFIELDNUMOUT, *LPDDGETFIELDNUMOUT; } DDGETFIELDNUMOUT, *LPDDGETFIELDNUMOUT;
typedef struct _DDGETKERNELCAPSOUT typedef struct _DDGETKERNELCAPSOUT {
{ DWORD ddRVal;
DWORD ddRVal; DWORD dwCaps;
DWORD dwCaps; DWORD dwIRQCaps;
DWORD dwIRQCaps;
} DDGETKERNELCAPSOUT, *LPDDGETKERNELCAPSOUT; } DDGETKERNELCAPSOUT, *LPDDGETKERNELCAPSOUT;
typedef struct _DDGETVERSIONNUMBER typedef struct _DDGETVERSIONNUMBER {
{ DWORD ddRVal;
DWORD ddRVal; DWORD dwMajorVersion;
DWORD dwMajorVersion; DWORD dwMinorVersion;
DWORD dwMinorVersion;
} DDGETVERSIONNUMBER, *LPDDGETVERSIONNUMBER; } DDGETVERSIONNUMBER, *LPDDGETVERSIONNUMBER;
typedef struct _DDLOCKIN typedef struct _DDLOCKIN {
{ HANDLE hDirectDraw;
HANDLE hDirectDraw; HANDLE hSurface;
HANDLE hSurface;
} DDLOCKIN, *LPDDLOCKIN; } DDLOCKIN, *LPDDLOCKIN;
typedef struct _DDLOCKOUT typedef struct _DDLOCKOUT {
{ DWORD ddRVal;
DWORD ddRVal; DWORD dwSurfHeight;
DWORD dwSurfHeight; DWORD dwSurfWidth;
DWORD dwSurfWidth; LONG lSurfPitch;
LONG lSurfPitch; PVOID lpSurface;
PVOID lpSurface; DWORD SurfaceCaps;
DWORD SurfaceCaps; DWORD dwFormatFlags;
DWORD dwFormatFlags; DWORD dwFormatFourCC;
DWORD dwFormatFourCC; DWORD dwFormatBitCount;
DWORD dwFormatBitCount; __GNU_EXTENSION union {
__GNU_EXTENSION union DWORD dwRBitMask;
{ DWORD dwYBitMask;
DWORD dwRBitMask;
DWORD dwYBitMask;
}; };
__GNU_EXTENSION union __GNU_EXTENSION union {
{ DWORD dwGBitMask;
DWORD dwGBitMask; DWORD dwUBitMask;
DWORD dwUBitMask;
}; };
__GNU_EXTENSION union __GNU_EXTENSION union {
{ DWORD dwBBitMask;
DWORD dwBBitMask; DWORD dwVBitMask;
DWORD dwVBitMask;
}; };
} DDLOCKOUT, *LPDDLOCKOUT; } DDLOCKOUT, *LPDDLOCKOUT;
typedef struct _DDOPENDIRECTDRAWIN typedef struct _DDOPENDIRECTDRAWIN {
{
ULONG_PTR dwDirectDrawHandle; ULONG_PTR dwDirectDrawHandle;
LPDD_NOTIFYCALLBACK pfnDirectDrawClose; LPDD_NOTIFYCALLBACK pfnDirectDrawClose;
PVOID pContext; PVOID pContext;
} DDOPENDIRECTDRAWIN, *LPDDOPENDIRECTDRAWIN; } DDOPENDIRECTDRAWIN, *LPDDOPENDIRECTDRAWIN;
typedef struct _DDOPENDIRECTDRAWOUT typedef struct _DDOPENDIRECTDRAWOUT {
{ DWORD ddRVal;
DWORD ddRVal; HANDLE hDirectDraw;
HANDLE hDirectDraw;
} DDOPENDIRECTDRAWOUT, *LPDDOPENDIRECTDRAWOUT; } DDOPENDIRECTDRAWOUT, *LPDDOPENDIRECTDRAWOUT;
typedef struct _DDOPENSURFACEIN typedef struct _DDOPENSURFACEIN {
{ HANDLE hDirectDraw;
HANDLE hDirectDraw; ULONG_PTR dwSurfaceHandle;
ULONG_PTR dwSurfaceHandle; LPDD_NOTIFYCALLBACK pfnSurfaceClose;
LPDD_NOTIFYCALLBACK pfnSurfaceClose; PVOID pContext;
PVOID pContext;
} DDOPENSURFACEIN, *LPDDOPENSURFACEIN; } DDOPENSURFACEIN, *LPDDOPENSURFACEIN;
typedef struct _DDOPENSURFACEOUT typedef struct _DDOPENSURFACEOUT {
{ DWORD ddRVal;
DWORD ddRVal; HANDLE hSurface;
HANDLE hSurface;
} DDOPENSURFACEOUT, *LPDDOPENSURFACEOUT; } DDOPENSURFACEOUT, *LPDDOPENSURFACEOUT;
typedef struct _DDOPENVIDEOPORTIN typedef struct _DDOPENVIDEOPORTIN {
{ HANDLE hDirectDraw;
HANDLE hDirectDraw; ULONG dwVideoPortHandle;
ULONG dwVideoPortHandle; LPDD_NOTIFYCALLBACK pfnVideoPortClose;
LPDD_NOTIFYCALLBACK pfnVideoPortClose; PVOID pContext;
PVOID pContext;
} DDOPENVIDEOPORTIN, *LPDDOPENVIDEOPORTIN; } DDOPENVIDEOPORTIN, *LPDDOPENVIDEOPORTIN;
typedef struct _DDOPENVIDEOPORTOUT typedef struct _DDOPENVIDEOPORTOUT {
{ DWORD ddRVal;
DWORD ddRVal; HANDLE hVideoPort;
HANDLE hVideoPort;
} DDOPENVIDEOPORTOUT, *LPDDOPENVIDEOPORTOUT; } DDOPENVIDEOPORTOUT, *LPDDOPENVIDEOPORTOUT;
typedef struct _DDOPENVPCAPTUREDEVICEIN typedef struct _DDOPENVPCAPTUREDEVICEIN {
{ HANDLE hDirectDraw;
HANDLE hDirectDraw; HANDLE hVideoPort;
HANDLE hVideoPort; DWORD dwStartLine;
DWORD dwStartLine; DWORD dwEndLine;
DWORD dwEndLine; DWORD dwCaptureEveryNFields;
DWORD dwCaptureEveryNFields; LPDD_NOTIFYCALLBACK pfnCaptureClose;
LPDD_NOTIFYCALLBACK pfnCaptureClose; PVOID pContext;
PVOID pContext; DWORD dwFlags;
DWORD dwFlags; } DDOPENVPCAPTUREDEVICEIN, *LPDDOPENVPCAPTUREDEVICEIN;
} DDOPENVPCAPTUREDEVICEIN, * LPDDOPENVPCAPTUREDEVICEIN;
typedef struct _DDOPENVPCAPTUREDEVICEOUT typedef struct _DDOPENVPCAPTUREDEVICEOUT {
{ DWORD ddRVal;
DWORD ddRVal; HANDLE hCapture;
HANDLE hCapture; } DDOPENVPCAPTUREDEVICEOUT, *LPDDOPENVPCAPTUREDEVICEOUT;
} DDOPENVPCAPTUREDEVICEOUT, * LPDDOPENVPCAPTUREDEVICEOUT;
typedef struct _DDREGISTERCALLBACK typedef struct _DDREGISTERCALLBACK {
{ HANDLE hDirectDraw;
HANDLE hDirectDraw; ULONG dwEvents;
ULONG dwEvents; LPDD_NOTIFYCALLBACK pfnCallback;
LPDD_NOTIFYCALLBACK pfnCallback; ULONG_PTR dwParam1;
ULONG_PTR dwParam1; ULONG_PTR dwParam2;
ULONG_PTR dwParam2; PVOID pContext;
PVOID pContext;
} DDREGISTERCALLBACK, *LPDDREGISTERCALLBACK; } DDREGISTERCALLBACK, *LPDDREGISTERCALLBACK;
typedef struct _DDSETSURFACETATE typedef struct _DDSETSURFACETATE {
{ HANDLE hDirectDraw;
HANDLE hDirectDraw; HANDLE hSurface;
HANDLE hSurface; DWORD dwState;
DWORD dwState; DWORD dwStartField;
DWORD dwStartField;
} DDSETSURFACESTATE, *LPDDSETSURFACESTATE; } DDSETSURFACESTATE, *LPDDSETSURFACESTATE;
typedef struct _DDSETFIELDNUM typedef struct _DDSETFIELDNUM {
{ HANDLE hDirectDraw;
HANDLE hDirectDraw; HANDLE hVideoPort;
HANDLE hVideoPort; DWORD dwFieldNum;
DWORD dwFieldNum;
} DDSETFIELDNUM, *LPDDSETFIELDNUM; } DDSETFIELDNUM, *LPDDSETFIELDNUM;
typedef struct _DDSETSKIPFIELD typedef struct _DDSETSKIPFIELD {
{ HANDLE hDirectDraw;
HANDLE hDirectDraw; HANDLE hVideoPort;
HANDLE hVideoPort; DWORD dwStartField;
DWORD dwStartField;
} DDSETSKIPFIELD, *LPDDSETSKIPFIELD; } DDSETSKIPFIELD, *LPDDSETSKIPFIELD;
@ -346,5 +303,5 @@ DxApi(IN DWORD dwFunctionNum,
OUT DWORD cbOutBuffer); OUT DWORD cbOutBuffer);
#endif /* __DDKMAPI_INCLUDED__ */ #endif /* __DDKMAPI_INCLUDED__ */

View file

@ -1,5 +1,4 @@
#ifndef __DDRAW_INCLUDED__ #ifndef __DDRAW_INCLUDED__
#define __DDRAW_INCLUDED__ #define __DDRAW_INCLUDED__
@ -44,6 +43,15 @@
#endif #endif
#endif #endif
/* Helper macro to enable gcc's extension. */
#ifndef __GNU_EXTENSION
#ifdef __GNUC__
#define __GNU_EXTENSION __extension__
#else
#define __GNU_EXTENSION
#endif
#endif
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
@ -2561,7 +2569,7 @@ DECLARE_INTERFACE_( IDirectDrawSurface3, IUnknown )
#undef INTERFACE #undef INTERFACE
#ifdef __cplusplus #ifdef __cplusplus
}; }
#endif #endif
#ifdef ENABLE_NAMELESS_UNION_PRAGMA #ifdef ENABLE_NAMELESS_UNION_PRAGMA
@ -2569,6 +2577,3 @@ DECLARE_INTERFACE_( IDirectDrawSurface3, IUnknown )
#endif #endif
#endif #endif

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1975,7 +1975,7 @@ extern const DIDATAFORMAT c_dfDIKeyboard;
extern const DIDATAFORMAT c_dfDIJoystick; extern const DIDATAFORMAT c_dfDIJoystick;
extern const DIDATAFORMAT c_dfDIJoystick2; extern const DIDATAFORMAT c_dfDIJoystick2;
#ifdef __cplusplus #ifdef __cplusplus
}; }
#endif #endif
/***************************************************************************** /*****************************************************************************
@ -2285,7 +2285,7 @@ HRESULT WINAPI DirectInputCreateW(HINSTANCE,DWORD,LPDIRECTINPUTW *,LPUNKNOWN);
HRESULT WINAPI DirectInputCreateEx(HINSTANCE,DWORD,REFIID,LPVOID *,LPUNKNOWN); HRESULT WINAPI DirectInputCreateEx(HINSTANCE,DWORD,REFIID,LPVOID *,LPUNKNOWN);
#ifdef __cplusplus #ifdef __cplusplus
}; }
#endif #endif
#endif /* __WINE_DINPUT_H */ #endif /* __WINE_DINPUT_H */

View file

@ -166,7 +166,7 @@ extern FLATPTR WINAPI
#ifdef __cplusplus #ifdef __cplusplus
}; }
#endif #endif
#endif #endif

View file

@ -173,7 +173,7 @@ DECLARE_INTERFACE_(IStillImageW, IUnknown)
#endif #endif
#ifdef __cplusplus #ifdef __cplusplus
}; }
#endif #endif
#include <poppack.h> #include <poppack.h>