Add lots of stubs.
[reactos.git] / reactos / lib / ddraw / rosdraw.h
1 #ifndef __DDRAW_PRIVATE
2 #define __DDRAW_PRIVATE
3
4 /********* Includes *********/
5
6
7 #include <windows.h>
8 #include <stdio.h>
9 #include <ddraw.h>
10 #include <ddk/ddrawi.h>
11 #include <ddk/d3dhal.h>
12 #include <ddrawgdi.h>
13
14 /******** Main Object ********/
15
16 typedef struct
17 {
18 IDirectDraw7Vtbl* lpVtbl;
19 DDRAWI_DIRECTDRAW_GBL DirectDrawGlobal;
20 DDHALINFO HalInfo;
21
22 HWND window;
23 DWORD cooperative_level;
24 HDC hdc;
25 int Height, Width, Bpp;
26
27 GUID* lpGUID;
28
29 } IDirectDrawImpl;
30
31 /******** Surface Object ********/
32
33 typedef struct
34 {
35 IDirectDrawSurface7Vtbl* lpVtbl;
36 LONG ref;
37
38 IDirectDrawImpl* owner;
39
40 } IDirectDrawSurfaceImpl;
41
42 /******** Clipper Object ********/
43
44 typedef struct
45 {
46 IDirectDrawClipperVtbl* lpVtbl;
47 LONG ref;
48
49 IDirectDrawImpl* owner;
50
51 } IDirectDrawClipperImpl;
52
53 /******** Palette Object ********/
54
55 typedef struct
56 {
57 IDirectDrawPaletteVtbl* lpVtbl;
58 LONG ref;
59
60 IDirectDrawImpl* owner;
61
62 } IDirectDrawPaletteImpl;
63
64 /*********** VTables ************/
65
66 extern IDirectDraw7Vtbl DirectDraw_Vtable;
67 extern IDirectDrawSurface7Vtbl DirectDrawSurface_Vtable;
68 extern IDirectDrawPaletteVtbl DirectDrawPalette_Vtable;
69 extern IDirectDrawClipperVtbl DirectDrawClipper_Vtable;
70 extern IDirectDrawColorControlVtbl DirectDrawColorControl_Vtable;
71 extern IDirectDrawGammaControlVtbl DirectDrawGammaControl_Vtable;
72
73 /********* Prototypes **********/
74
75 HRESULT Hal_DirectDraw_Initialize (LPDIRECTDRAW7 iface);
76 HRESULT Hal_DirectDraw_SetCooperativeLevel (LPDIRECTDRAW7 iface);
77 VOID Hal_DirectDraw_Release (LPDIRECTDRAW7 iface);
78
79 HRESULT Hel_DirectDraw_Initialize (LPDIRECTDRAW7 iface);
80 HRESULT Hel_DirectDraw_SetCooperativeLevel (LPDIRECTDRAW7 iface);
81 VOID Hel_DirectDraw_Release (LPDIRECTDRAW7 iface);
82
83 /*********** Macros ***********/
84
85 #define DX_STUB return DDERR_UNSUPPORTED;
86
87 #endif /* __DDRAW_PRIVATE */