1 /*
2  * COPYRIGHT:            See COPYING in the top level directory
3  * PROJECT:              ReactOS DirectX
4  * FILE:                 dll/directx/ddraw/Kernel/kernel_stubs.c
5  * PURPOSE:              IDirectDrawKernel and IDirectDrawSurfaceKernel Implementation
6  * PROGRAMMER:           Maarten Bosma
7  *
8  */
9 
10 #include "rosdraw.h"
11 
12 
13 /***** IDirectDrawKernel ****/
14 
15 ULONG WINAPI
DirectDrawKernel_AddRef(LPDIRECTDRAWKERNEL iface)16 DirectDrawKernel_AddRef ( LPDIRECTDRAWKERNEL iface)
17 {
18   DX_WINDBG_trace();
19 
20    DX_STUB;
21 }
22 
23 ULONG WINAPI
DirectDrawKernel_Release(LPDIRECTDRAWKERNEL iface)24 DirectDrawKernel_Release ( LPDIRECTDRAWKERNEL iface)
25 {
26   DX_WINDBG_trace();
27 
28    DX_STUB;
29 }
30 
31 HRESULT WINAPI
DirectDrawKernel_QueryInterface(LPDIRECTDRAWKERNEL iface,REFIID riid,LPVOID * ppvObj)32 DirectDrawKernel_QueryInterface ( LPDIRECTDRAWKERNEL iface,
33                                   REFIID riid,
34                                   LPVOID* ppvObj)
35 {
36    DX_WINDBG_trace();
37    DX_STUB;
38 }
39 
40 HRESULT WINAPI
DirectDrawKernel_GetKernelHandle(LPDIRECTDRAWKERNEL iface,ULONG * handle)41 DirectDrawKernel_GetKernelHandle ( LPDIRECTDRAWKERNEL iface,
42                                    ULONG* handle)
43 {
44    DX_WINDBG_trace();
45    DX_STUB;
46 }
47 
48 HRESULT WINAPI
DirectDrawKernel_ReleaseKernelHandle(LPDIRECTDRAWKERNEL iface)49 DirectDrawKernel_ReleaseKernelHandle ( LPDIRECTDRAWKERNEL iface)
50 {
51    DX_WINDBG_trace();
52    DX_STUB;
53 }
54 
55 
56 ULONG WINAPI
DDSurfaceKernel_AddRef(LPDIRECTDRAWSURFACEKERNEL iface)57 DDSurfaceKernel_AddRef ( LPDIRECTDRAWSURFACEKERNEL iface)
58 {
59    LPDDRAWI_DDKERNELSURFACE_INT This = (LPDDRAWI_DDKERNELSURFACE_INT)iface;
60 
61    DX_WINDBG_trace();
62 
63     if (iface!=NULL)
64     {
65         This->dwIntRefCnt++;
66         //This->lpLcl->dwLocalRefCnt++;
67 
68         //if (This->lpLcl->lpGbl != NULL)
69         //{
70         //    This->lpLcl->lpGbl->dwRefCnt++;
71         //}
72     }
73     return This->dwIntRefCnt;
74 }
75 
76 ULONG WINAPI
DDSurfaceKernel_Release(LPDIRECTDRAWSURFACEKERNEL iface)77 DDSurfaceKernel_Release ( LPDIRECTDRAWSURFACEKERNEL iface)
78 {
79     LPDDRAWI_DDKERNELSURFACE_INT This = (LPDDRAWI_DDKERNELSURFACE_INT)iface;
80 
81     DX_WINDBG_trace();
82     /* FIXME
83        This is not right exiame how it should be done
84      */
85     DX_STUB_str("FIXME This is not right exiame how it should be done\n");
86     return This->dwIntRefCnt;
87 }
88 
89 HRESULT WINAPI
DDSurfaceKernel_QueryInterface(LPDIRECTDRAWSURFACEKERNEL iface,REFIID riid,LPVOID * ppvObj)90 DDSurfaceKernel_QueryInterface ( LPDIRECTDRAWSURFACEKERNEL iface,
91                                  REFIID riid,
92                                  LPVOID* ppvObj)
93 {
94    DX_WINDBG_trace();
95    DX_STUB;
96 }
97 
98 HRESULT WINAPI
DDSurfaceKernel_GetKernelHandle(LPDIRECTDRAWSURFACEKERNEL iface,ULONG * handle)99 DDSurfaceKernel_GetKernelHandle ( LPDIRECTDRAWSURFACEKERNEL iface,
100                                   ULONG* handle)
101 {
102    DX_WINDBG_trace();
103    DX_STUB;
104 }
105 
106 HRESULT WINAPI
DDSurfaceKernel_ReleaseKernelHandle(LPDIRECTDRAWSURFACEKERNEL iface)107 DDSurfaceKernel_ReleaseKernelHandle ( LPDIRECTDRAWSURFACEKERNEL iface)
108 {
109    DX_WINDBG_trace();
110    DX_STUB;
111 }
112 
113 
114 IDirectDrawKernelVtbl DirectDrawKernel_Vtable =
115 {
116     DirectDrawKernel_QueryInterface,
117     DirectDrawKernel_AddRef,
118     DirectDrawKernel_Release,
119 	DirectDrawKernel_GetKernelHandle,
120 	DirectDrawKernel_ReleaseKernelHandle
121 };
122 
123 IDirectDrawSurfaceKernelVtbl DirectDrawSurfaceKernel_Vtable =
124 {
125     DDSurfaceKernel_QueryInterface,
126     DDSurfaceKernel_AddRef,
127     DDSurfaceKernel_Release,
128 	DDSurfaceKernel_GetKernelHandle,
129 	DDSurfaceKernel_ReleaseKernelHandle
130 };
131