| /* $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 |
| |