Author: greatlrd
Date: Wed Dec 12 18:01:25 2007
New Revision: 31183
URL:
http://svn.reactos.org/svn/reactos?rev=31183&view=rev
Log:
patch from Kamil Hornicek tykef at atlas dot cz (irc nick : Pigglesworth)
design cleanup bit.
fix so each directdraw surface got own directdraw surface vtable.
For some api are new in some version and some functions have more param or different
struct in newer directdraw surface
Added:
trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface2_Vtable.c (with props)
trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface3_Vtable.c (with props)
trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface4_Vtable.c (with props)
trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface7_Vtable.c (with props)
trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface_Vtable.c (with props)
Modified:
trunk/reactos/dll/directx/ddraw/Surface/createsurface.c
trunk/reactos/dll/directx/ddraw/Surface/surface.h
trunk/reactos/dll/directx/ddraw/Surface/surface_main.c
trunk/reactos/dll/directx/ddraw/Vtable/DirectDraw2_Vtable.c
trunk/reactos/dll/directx/ddraw/Vtable/DirectDraw4_Vtable.c
trunk/reactos/dll/directx/ddraw/ddraw.rbuild
trunk/reactos/dll/directx/ddraw/rosdraw.h
Modified: trunk/reactos/dll/directx/ddraw/Surface/createsurface.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/Surface/…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/Surface/createsurface.c (original)
+++ trunk/reactos/dll/directx/ddraw/Surface/createsurface.c Wed Dec 12 18:01:25 2007
@@ -188,7 +188,7 @@
/* FIXME the lpLnk */
- Main_DDrawSurface_AddRef((LPDIRECTDRAWSURFACE7)ThisSurfInt);
+ Main_DDrawSurface_AddRef(ThisSurfInt);
}
pDDraw->lpLcl->lpGbl->dsList = (LPDDRAWI_DDRAWSURFACE_INT) slist_int;
@@ -247,3 +247,4 @@
+
Modified: trunk/reactos/dll/directx/ddraw/Surface/surface.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/Surface/…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/Surface/surface.h (original)
+++ trunk/reactos/dll/directx/ddraw/Surface/surface.h Wed Dec 12 18:01:25 2007
@@ -1,8 +1,7 @@
// public interfaces
-ULONG WINAPI Main_DDrawSurface_AddRef(LPDIRECTDRAWSURFACE7);
+ULONG WINAPI Main_DDrawSurface_AddRef(LPDDRAWI_DDRAWSURFACE_INT);
ULONG WINAPI Main_DDrawSurface_Release(LPDIRECTDRAWSURFACE7);
-HRESULT WINAPI Main_DDrawSurface_QueryInterface(LPDIRECTDRAWSURFACE7, REFIID, LPVOID*);
-HRESULT WINAPI Main_DDrawSurface_ReleaseDC(LPDIRECTDRAWSURFACE7, HDC);
+HRESULT WINAPI Main_DDrawSurface_QueryInterface(LPDDRAWI_DDRAWSURFACE_INT, REFIID,
LPVOID*);
HRESULT WINAPI Main_DDrawSurface_Blt(LPDIRECTDRAWSURFACE7, LPRECT, LPDIRECTDRAWSURFACE7,
LPRECT, DWORD, LPDDBLTFX);
HRESULT WINAPI Main_DDrawSurface_BltBatch(LPDIRECTDRAWSURFACE7, LPDDBLTBATCH, DWORD,
DWORD);
HRESULT WINAPI Main_DDrawSurface_BltFast(LPDIRECTDRAWSURFACE7, DWORD, DWORD,
LPDIRECTDRAWSURFACE7, LPRECT, DWORD);
@@ -68,3 +67,4 @@
DWORD CALLBACK HelDdFlipToGDISurface(LPDDHAL_FLIPTOGDISURFACEDATA lpFlipToGDISurface);
+
Modified: trunk/reactos/dll/directx/ddraw/Surface/surface_main.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/Surface/…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/Surface/surface_main.c (original)
+++ trunk/reactos/dll/directx/ddraw/Surface/surface_main.c Wed Dec 12 18:01:25 2007
@@ -20,19 +20,31 @@
SetPalette;
*/
+LPDDRAWI_DDRAWSURFACE_INT
+internal_directdrawsurface_int_alloc(LPDDRAWI_DDRAWSURFACE_INT This)
+{
+ LPDDRAWI_DDRAWSURFACE_INT newThis;
+ DxHeapMemAlloc(newThis, sizeof(LPDDRAWI_DDRAWSURFACE_INT));
+ if (newThis)
+ {
+ newThis->lpLcl = This->lpLcl;
+ newThis->lpLink = This;
+ }
+ return newThis;
+}
HRESULT WINAPI Main_DDrawSurface_Initialize (LPDIRECTDRAWSURFACE7 iface, LPDIRECTDRAW
pDD, LPDDSURFACEDESC2 pDDSD2)
{
return DDERR_ALREADYINITIALIZED;
}
-ULONG WINAPI Main_DDrawSurface_AddRef(LPDIRECTDRAWSURFACE7 iface)
+ULONG WINAPI Main_DDrawSurface_AddRef(LPDDRAWI_DDRAWSURFACE_INT iface)
{
LPDDRAWI_DDRAWSURFACE_INT This = (LPDDRAWI_DDRAWSURFACE_INT)iface;
DX_WINDBG_trace();
- if (iface!=NULL)
+ if (This!=NULL)
{
This->dwIntRefCnt++;
This->lpLcl->dwLocalRefCnt++;
@@ -47,14 +59,102 @@
}
HRESULT WINAPI
-Main_DDrawSurface_QueryInterface(LPDIRECTDRAWSURFACE7 iface, REFIID riid,
+Main_DDrawSurface_QueryInterface(LPDDRAWI_DDRAWSURFACE_INT iface, REFIID riid,
LPVOID* ppObj)
{
+ LPDDRAWI_DDRAWSURFACE_INT This = (LPDDRAWI_DDRAWSURFACE_INT)iface;
DX_WINDBG_trace();
-
- DX_STUB_str("Unimplement\n");
-
- return E_NOINTERFACE;
+ HRESULT retVal = DD_OK;
+ *ppObj = NULL;
+
+ _SEH_TRY
+ {
+ if (IsEqualGUID(&IID_IDirectDrawSurface7, riid))
+ {
+ if (This->lpVtbl != &DirectDrawSurface7_Vtable)
+ {
+ This = internal_directdrawsurface_int_alloc(This);
+ if (!This)
+ {
+ retVal = DDERR_OUTOFVIDEOMEMORY;
+ _SEH_LEAVE;
+ }
+ }
+ This->lpVtbl = &DirectDrawSurface7_Vtable;
+ *ppObj = This;
+ Main_DDrawSurface_AddRef(This);
+ }
+ else if (IsEqualGUID(&IID_IDirectDrawSurface4, riid))
+ {
+ if (This->lpVtbl != &DirectDrawSurface4_Vtable)
+ {
+ This = internal_directdrawsurface_int_alloc(This);
+ if (!This)
+ {
+ retVal = DDERR_OUTOFVIDEOMEMORY;
+ _SEH_LEAVE;
+ }
+ }
+ This->lpVtbl = &DirectDrawSurface4_Vtable;
+ *ppObj = This;
+ Main_DDrawSurface_AddRef(This);
+ }
+ else if (IsEqualGUID(&IID_IDirectDrawSurface3, riid))
+ {
+ if (This->lpVtbl != &DirectDrawSurface3_Vtable)
+ {
+ This = internal_directdrawsurface_int_alloc(This);
+ if (!This)
+ {
+ retVal = DDERR_OUTOFVIDEOMEMORY;
+ _SEH_LEAVE;
+ }
+ }
+ This->lpVtbl = &DirectDrawSurface3_Vtable;
+ *ppObj = This;
+ Main_DDrawSurface_AddRef(This);
+ }
+ else if (IsEqualGUID(&IID_IDirectDrawSurface2, riid))
+ {
+ if (This->lpVtbl != &DirectDrawSurface2_Vtable)
+ {
+ This = internal_directdrawsurface_int_alloc(This);
+ if (!This)
+ {
+ retVal = DDERR_OUTOFVIDEOMEMORY;
+ _SEH_LEAVE;
+ }
+ }
+ This->lpVtbl = &DirectDrawSurface2_Vtable;
+ *ppObj = This;
+ Main_DDrawSurface_AddRef(This);
+ }
+ else if (IsEqualGUID(&IID_IDirectDrawSurface, riid))
+ {
+ if (This->lpVtbl != &DirectDrawSurface_Vtable)
+ {
+ This = internal_directdrawsurface_int_alloc(This);
+ if (!This)
+ {
+ retVal = DDERR_OUTOFVIDEOMEMORY;
+ _SEH_LEAVE;
+ }
+ }
+ This->lpVtbl = &DirectDrawSurface_Vtable;
+ *ppObj = This;
+ Main_DDrawSurface_AddRef(This);
+ }
+ else
+ {
+ DX_STUB_str("E_NOINTERFACE");
+ retVal = E_NOINTERFACE;
+ }
+ }
+ _SEH_HANDLE
+ {
+ }
+ _SEH_END;
+ return retVal;
}
@@ -688,62 +788,3 @@
return DDERR_GENERIC;
}
-
-IDirectDrawSurface7Vtbl DirectDrawSurface7_Vtable =
-{
- /*** IUnknown ***/
- Main_DDrawSurface_QueryInterface,
- Main_DDrawSurface_AddRef, /* (Compact done) */
- Main_DDrawSurface_Release,
- /*** IDirectDrawSurface ***/
- Main_DDrawSurface_AddAttachedSurface,
- Main_DDrawSurface_AddOverlayDirtyRect,
- Main_DDrawSurface_Blt,
- Main_DDrawSurface_BltBatch,
- Main_DDrawSurface_BltFast,
- Main_DDrawSurface_DeleteAttachedSurface,
- Main_DDrawSurface_EnumAttachedSurfaces,
- Main_DDrawSurface_EnumOverlayZOrders,
- Main_DDrawSurface_Flip,
- Main_DDrawSurface_GetAttachedSurface,
- Main_DDrawSurface_GetBltStatus,
- Main_DDrawSurface_GetCaps,
- Main_DDrawSurface_GetClipper,
- Main_DDrawSurface_GetColorKey,
- Main_DDrawSurface_GetDC,
- Main_DDrawSurface_GetFlipStatus,
- Main_DDrawSurface_GetOverlayPosition,
- Main_DDrawSurface_GetPalette,
- Main_DDrawSurface_GetPixelFormat,
- Main_DDrawSurface_GetSurfaceDesc,
- Main_DDrawSurface_Initialize,
- Main_DDrawSurface_IsLost,
- Main_DDrawSurface_Lock,
- Main_DDrawSurface_ReleaseDC,
- Main_DDrawSurface_Restore,
- Main_DDrawSurface_SetClipper,
- Main_DDrawSurface_SetColorKey,
- Main_DDrawSurface_SetOverlayPosition,
- Main_DDrawSurface_SetPalette,
- Main_DDrawSurface_Unlock,
- Main_DDrawSurface_UpdateOverlay,
- Main_DDrawSurface_UpdateOverlayDisplay,
- Main_DDrawSurface_UpdateOverlayZOrder,
- /*** IDirectDrawSurface2 ***/
- Main_DDrawSurface_GetDDInterface,
- Main_DDrawSurface_PageLock,
- Main_DDrawSurface_PageUnlock,
- /*** IDirectDrawSurface3 ***/
- Main_DDrawSurface_SetSurfaceDesc,
- /*** IDirectDrawSurface4 ***/
- Main_DDrawSurface_SetPrivateData,
- Main_DDrawSurface_GetPrivateData,
- Main_DDrawSurface_FreePrivateData,
- Main_DDrawSurface_GetUniquenessValue,
- Main_DDrawSurface_ChangeUniquenessValue,
- /*** IDirectDrawSurface7 ***/
- Main_DDrawSurface_SetPriority,
- Main_DDrawSurface_GetPriority,
- Main_DDrawSurface_SetLOD,
- Main_DDrawSurface_GetLOD
-};
Modified: trunk/reactos/dll/directx/ddraw/Vtable/DirectDraw2_Vtable.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/Vtable/D…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/Vtable/DirectDraw2_Vtable.c (original)
+++ trunk/reactos/dll/directx/ddraw/Vtable/DirectDraw2_Vtable.c Wed Dec 12 18:01:25 2007
@@ -55,8 +55,8 @@
HRESULT WINAPI
Main_DirectDraw_DuplicateSurface(
LPDIRECTDRAW2 iface,
- LPDIRECTDRAWSURFACE2 src,
- LPDIRECTDRAWSURFACE2* dst);
+ LPDIRECTDRAWSURFACE src,
+ LPDIRECTDRAWSURFACE* dst);
HRESULT WINAPI
Main_DirectDraw_EnumDisplayModes(
@@ -182,3 +182,4 @@
};
+
Modified: trunk/reactos/dll/directx/ddraw/Vtable/DirectDraw4_Vtable.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/Vtable/D…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/Vtable/DirectDraw4_Vtable.c (original)
+++ trunk/reactos/dll/directx/ddraw/Vtable/DirectDraw4_Vtable.c Wed Dec 12 18:01:25 2007
@@ -72,7 +72,7 @@
DWORD dwFlags,
LPDDSURFACEDESC2 lpDDSD2,
LPVOID context,
- LPDDENUMSURFACESCALLBACK7 callback);
+ LPDDENUMSURFACESCALLBACK2 callback);
HRESULT WINAPI
Main_DirectDraw_FlipToGDISurface(LPDIRECTDRAW4 iface);
@@ -97,7 +97,7 @@
HRESULT WINAPI
Main_DirectDraw_GetGDISurface(
LPDIRECTDRAW4 iface,
- LPDIRECTDRAWSURFACE7 *lplpGDIDDSSurface);
+ LPDIRECTDRAWSURFACE4 *lplpGDIDDSSurface);
HRESULT WINAPI
Main_DirectDraw_GetMonitorFrequency (
@@ -156,7 +156,7 @@
Main_DirectDraw_GetSurfaceFromDC(
LPDIRECTDRAW4 iface,
HDC hdc,
- LPDIRECTDRAWSURFACE7 *lpDDS);
+ LPDIRECTDRAWSURFACE4 *lpDDS);
HRESULT WINAPI
Main_DirectDraw_RestoreAllSurfaces(LPDIRECTDRAW4 iface);
Added: trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface2_Vtable.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/Vtable/D…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface2_Vtable.c (added)
+++ trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface2_Vtable.c Wed Dec 12 18:01:25
2007
@@ -1,0 +1,103 @@
+#include <windows.h>
+#include <stdio.h>
+#include <ddraw.h>
+#include <ddrawi.h>
+#include <d3dhal.h>
+#include <ddrawgdi.h>
+
+#if defined(_WIN32) && !defined(_NO_COM )
+#define COM_NO_WINDOWS_H
+#include <objbase.h>
+#else
+#define IUnknown void
+#if !defined(NT_BUILD_ENVIRONMENT) && !defined(WINNT)
+ #define CO_E_NOTINITIALIZED 0x800401F0
+#endif
+#endif
+
+ULONG WINAPI Main_DDrawSurface_AddRef(LPDIRECTDRAWSURFACE2);
+ULONG WINAPI Main_DDrawSurface_Release(LPDIRECTDRAWSURFACE2);
+HRESULT WINAPI Main_DDrawSurface_QueryInterface(LPDIRECTDRAWSURFACE2, REFIID, LPVOID*);
+HRESULT WINAPI Main_DDrawSurface_ReleaseDC(LPDIRECTDRAWSURFACE2, HDC);
+HRESULT WINAPI Main_DDrawSurface_Blt(LPDIRECTDRAWSURFACE2, LPRECT, LPDIRECTDRAWSURFACE2,
LPRECT, DWORD, LPDDBLTFX);
+HRESULT WINAPI Main_DDrawSurface_BltBatch(LPDIRECTDRAWSURFACE2, LPDDBLTBATCH, DWORD,
DWORD);
+HRESULT WINAPI Main_DDrawSurface_BltFast(LPDIRECTDRAWSURFACE2, DWORD, DWORD,
LPDIRECTDRAWSURFACE2, LPRECT, DWORD);
+HRESULT WINAPI Main_DDrawSurface_DeleteAttachedSurface(LPDIRECTDRAWSURFACE2, DWORD,
LPDIRECTDRAWSURFACE2);
+HRESULT WINAPI Main_DDrawSurface_EnumAttachedSurfaces(LPDIRECTDRAWSURFACE2, LPVOID,
LPDDENUMSURFACESCALLBACK);
+HRESULT WINAPI Main_DDrawSurface_EnumOverlayZOrders(LPDIRECTDRAWSURFACE2, DWORD,
LPVOID,LPDDENUMSURFACESCALLBACK);
+HRESULT WINAPI Main_DDrawSurface_Flip(LPDIRECTDRAWSURFACE2 , LPDIRECTDRAWSURFACE2,
DWORD);
+HRESULT WINAPI Main_DDrawSurface_GetAttachedSurface(LPDIRECTDRAWSURFACE2, LPDDSCAPS,
LPDIRECTDRAWSURFACE2*);
+HRESULT WINAPI Main_DDrawSurface_GetBltStatus(LPDIRECTDRAWSURFACE2, DWORD dwFlags);
+HRESULT WINAPI Main_DDrawSurface_GetCaps(LPDIRECTDRAWSURFACE2, LPDDSCAPS pCaps);
+HRESULT WINAPI Main_DDrawSurface_GetClipper(LPDIRECTDRAWSURFACE2, LPDIRECTDRAWCLIPPER*);
+HRESULT WINAPI Main_DDrawSurface_GetColorKey(LPDIRECTDRAWSURFACE2, DWORD, LPDDCOLORKEY);
+HRESULT WINAPI Main_DDrawSurface_GetDC(LPDIRECTDRAWSURFACE2, HDC *);
+HRESULT WINAPI Main_DDrawSurface_GetDDInterface(LPDIRECTDRAWSURFACE2, LPVOID*);
+HRESULT WINAPI Main_DDrawSurface_GetFlipStatus(LPDIRECTDRAWSURFACE2, DWORD);
+HRESULT WINAPI Main_DDrawSurface_GetOverlayPosition(LPDIRECTDRAWSURFACE2, LPLONG,
LPLONG);
+HRESULT WINAPI Main_DDrawSurface_GetPalette(LPDIRECTDRAWSURFACE2, LPDIRECTDRAWPALETTE*);
+HRESULT WINAPI Main_DDrawSurface_GetPixelFormat(LPDIRECTDRAWSURFACE2, LPDDPIXELFORMAT);
+HRESULT WINAPI Main_DDrawSurface_GetSurfaceDesc(LPDIRECTDRAWSURFACE2, LPDDSURFACEDESC);
+HRESULT WINAPI Main_DDrawSurface_IsLost(LPDIRECTDRAWSURFACE2);
+HRESULT WINAPI Main_DDrawSurface_PageLock(LPDIRECTDRAWSURFACE2, DWORD);
+HRESULT WINAPI Main_DDrawSurface_PageUnlock(LPDIRECTDRAWSURFACE2, DWORD);
+HRESULT WINAPI Main_DDrawSurface_ReleaseDC(LPDIRECTDRAWSURFACE2, HDC);
+HRESULT WINAPI Main_DDrawSurface_SetClipper (LPDIRECTDRAWSURFACE2, LPDIRECTDRAWCLIPPER);
+HRESULT WINAPI Main_DDrawSurface_SetColorKey (LPDIRECTDRAWSURFACE2, DWORD,
LPDDCOLORKEY);
+HRESULT WINAPI Main_DDrawSurface_SetOverlayPosition (LPDIRECTDRAWSURFACE2, LONG, LONG);
+HRESULT WINAPI Main_DDrawSurface_SetPalette (LPDIRECTDRAWSURFACE2, LPDIRECTDRAWPALETTE);
+HRESULT WINAPI Main_DDrawSurface_UpdateOverlayDisplay (LPDIRECTDRAWSURFACE2, DWORD);
+HRESULT WINAPI Main_DDrawSurface_UpdateOverlayZOrder (LPDIRECTDRAWSURFACE2, DWORD,
LPDIRECTDRAWSURFACE2);
+HRESULT WINAPI Main_DDrawSurface_Unlock (LPDIRECTDRAWSURFACE2, LPVOID);
+HRESULT WINAPI Main_DDrawSurface_Initialize (LPDIRECTDRAWSURFACE2, LPDIRECTDRAW,
LPDDSURFACEDESC);
+HRESULT WINAPI Main_DDrawSurface_Lock (LPDIRECTDRAWSURFACE2, LPRECT, LPDDSURFACEDESC,
DWORD, HANDLE);
+HRESULT WINAPI Main_DDrawSurface_Restore(LPDIRECTDRAWSURFACE2);
+HRESULT WINAPI Main_DDrawSurface_UpdateOverlay (LPDIRECTDRAWSURFACE2, LPRECT,
LPDIRECTDRAWSURFACE2, LPRECT,
+ DWORD, LPDDOVERLAYFX);
+HRESULT WINAPI Main_DDrawSurface_AddAttachedSurface(LPDIRECTDRAWSURFACE2,
LPDIRECTDRAWSURFACE2);
+HRESULT WINAPI Main_DDrawSurface_AddOverlayDirtyRect(LPDIRECTDRAWSURFACE2, LPRECT);
+HRESULT WINAPI Main_DDrawSurface_SetSurfaceDesc(LPDIRECTDRAWSURFACE2, DDSURFACEDESC2,
DWORD);
+
+
+IDirectDrawSurface2Vtbl DirectDrawSurface2_Vtable =
+{
+ Main_DDrawSurface_QueryInterface,
+ Main_DDrawSurface_AddRef, /* (Compact done) */
+ Main_DDrawSurface_Release,
+ Main_DDrawSurface_AddAttachedSurface,
+ Main_DDrawSurface_AddOverlayDirtyRect,
+ Main_DDrawSurface_Blt,
+ Main_DDrawSurface_BltBatch,
+ Main_DDrawSurface_BltFast,
+ Main_DDrawSurface_DeleteAttachedSurface,
+ Main_DDrawSurface_EnumAttachedSurfaces,
+ Main_DDrawSurface_EnumOverlayZOrders,
+ Main_DDrawSurface_Flip,
+ Main_DDrawSurface_GetAttachedSurface,
+ Main_DDrawSurface_GetBltStatus,
+ Main_DDrawSurface_GetCaps,
+ Main_DDrawSurface_GetClipper,
+ Main_DDrawSurface_GetColorKey,
+ Main_DDrawSurface_GetDC,
+ Main_DDrawSurface_GetFlipStatus,
+ Main_DDrawSurface_GetOverlayPosition,
+ Main_DDrawSurface_GetPalette,
+ Main_DDrawSurface_GetPixelFormat,
+ Main_DDrawSurface_GetSurfaceDesc,
+ Main_DDrawSurface_Initialize,
+ Main_DDrawSurface_IsLost,
+ Main_DDrawSurface_Lock,
+ Main_DDrawSurface_ReleaseDC,
+ Main_DDrawSurface_Restore,
+ Main_DDrawSurface_SetClipper,
+ Main_DDrawSurface_SetColorKey,
+ Main_DDrawSurface_SetOverlayPosition,
+ Main_DDrawSurface_SetPalette,
+ Main_DDrawSurface_Unlock,
+ Main_DDrawSurface_UpdateOverlay,
+ Main_DDrawSurface_UpdateOverlayDisplay,
+ Main_DDrawSurface_UpdateOverlayZOrder,
+ Main_DDrawSurface_GetDDInterface,
+ Main_DDrawSurface_PageLock,
+ Main_DDrawSurface_PageUnlock,
+};
Propchange: trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface2_Vtable.c
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface3_Vtable.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/Vtable/D…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface3_Vtable.c (added)
+++ trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface3_Vtable.c Wed Dec 12 18:01:25
2007
@@ -1,0 +1,104 @@
+#include <windows.h>
+#include <stdio.h>
+#include <ddraw.h>
+#include <ddrawi.h>
+#include <d3dhal.h>
+#include <ddrawgdi.h>
+
+#if defined(_WIN32) && !defined(_NO_COM )
+#define COM_NO_WINDOWS_H
+#include <objbase.h>
+#else
+#define IUnknown void
+#if !defined(NT_BUILD_ENVIRONMENT) && !defined(WINNT)
+ #define CO_E_NOTINITIALIZED 0x800401F0
+#endif
+#endif
+
+ULONG WINAPI Main_DDrawSurface_AddRef(LPDIRECTDRAWSURFACE3);
+ULONG WINAPI Main_DDrawSurface_Release(LPDIRECTDRAWSURFACE3);
+HRESULT WINAPI Main_DDrawSurface_QueryInterface(LPDIRECTDRAWSURFACE3, REFIID, LPVOID*);
+HRESULT WINAPI Main_DDrawSurface_ReleaseDC(LPDIRECTDRAWSURFACE3, HDC);
+HRESULT WINAPI Main_DDrawSurface_Blt(LPDIRECTDRAWSURFACE3, LPRECT, LPDIRECTDRAWSURFACE3,
LPRECT, DWORD, LPDDBLTFX);
+HRESULT WINAPI Main_DDrawSurface_BltBatch(LPDIRECTDRAWSURFACE3, LPDDBLTBATCH, DWORD,
DWORD);
+HRESULT WINAPI Main_DDrawSurface_BltFast(LPDIRECTDRAWSURFACE3, DWORD, DWORD,
LPDIRECTDRAWSURFACE3, LPRECT, DWORD);
+HRESULT WINAPI Main_DDrawSurface_DeleteAttachedSurface(LPDIRECTDRAWSURFACE3, DWORD,
LPDIRECTDRAWSURFACE3);
+HRESULT WINAPI Main_DDrawSurface_EnumAttachedSurfaces(LPDIRECTDRAWSURFACE3, LPVOID,
LPDDENUMSURFACESCALLBACK);
+HRESULT WINAPI Main_DDrawSurface_EnumOverlayZOrders(LPDIRECTDRAWSURFACE3, DWORD,
LPVOID,LPDDENUMSURFACESCALLBACK);
+HRESULT WINAPI Main_DDrawSurface_Flip(LPDIRECTDRAWSURFACE3 , LPDIRECTDRAWSURFACE3,
DWORD);
+HRESULT WINAPI Main_DDrawSurface_GetAttachedSurface(LPDIRECTDRAWSURFACE3, LPDDSCAPS,
LPDIRECTDRAWSURFACE3*);
+HRESULT WINAPI Main_DDrawSurface_GetBltStatus(LPDIRECTDRAWSURFACE3, DWORD dwFlags);
+HRESULT WINAPI Main_DDrawSurface_GetCaps(LPDIRECTDRAWSURFACE3, LPDDSCAPS pCaps);
+HRESULT WINAPI Main_DDrawSurface_GetClipper(LPDIRECTDRAWSURFACE3, LPDIRECTDRAWCLIPPER*);
+HRESULT WINAPI Main_DDrawSurface_GetColorKey(LPDIRECTDRAWSURFACE3, DWORD, LPDDCOLORKEY);
+HRESULT WINAPI Main_DDrawSurface_GetDC(LPDIRECTDRAWSURFACE3, HDC *);
+HRESULT WINAPI Main_DDrawSurface_GetDDInterface(LPDIRECTDRAWSURFACE3, LPVOID*);
+HRESULT WINAPI Main_DDrawSurface_GetFlipStatus(LPDIRECTDRAWSURFACE3, DWORD);
+HRESULT WINAPI Main_DDrawSurface_GetOverlayPosition(LPDIRECTDRAWSURFACE3, LPLONG,
LPLONG);
+HRESULT WINAPI Main_DDrawSurface_GetPalette(LPDIRECTDRAWSURFACE3, LPDIRECTDRAWPALETTE*);
+HRESULT WINAPI Main_DDrawSurface_GetPixelFormat(LPDIRECTDRAWSURFACE3, LPDDPIXELFORMAT);
+HRESULT WINAPI Main_DDrawSurface_GetSurfaceDesc(LPDIRECTDRAWSURFACE3, LPDDSURFACEDESC);
+HRESULT WINAPI Main_DDrawSurface_IsLost(LPDIRECTDRAWSURFACE3);
+HRESULT WINAPI Main_DDrawSurface_PageLock(LPDIRECTDRAWSURFACE3, DWORD);
+HRESULT WINAPI Main_DDrawSurface_PageUnlock(LPDIRECTDRAWSURFACE3, DWORD);
+HRESULT WINAPI Main_DDrawSurface_ReleaseDC(LPDIRECTDRAWSURFACE3, HDC);
+HRESULT WINAPI Main_DDrawSurface_SetClipper (LPDIRECTDRAWSURFACE3, LPDIRECTDRAWCLIPPER);
+HRESULT WINAPI Main_DDrawSurface_SetColorKey (LPDIRECTDRAWSURFACE3, DWORD,
LPDDCOLORKEY);
+HRESULT WINAPI Main_DDrawSurface_SetOverlayPosition (LPDIRECTDRAWSURFACE3, LONG, LONG);
+HRESULT WINAPI Main_DDrawSurface_SetPalette (LPDIRECTDRAWSURFACE3, LPDIRECTDRAWPALETTE);
+HRESULT WINAPI Main_DDrawSurface_UpdateOverlayDisplay (LPDIRECTDRAWSURFACE3, DWORD);
+HRESULT WINAPI Main_DDrawSurface_UpdateOverlayZOrder (LPDIRECTDRAWSURFACE3, DWORD,
LPDIRECTDRAWSURFACE3);
+HRESULT WINAPI Main_DDrawSurface_SetSurfaceDesc(LPDIRECTDRAWSURFACE3, DDSURFACEDESC *,
DWORD);
+HRESULT WINAPI Main_DDrawSurface_Unlock (LPDIRECTDRAWSURFACE3, LPVOID);
+HRESULT WINAPI Main_DDrawSurface_Initialize (LPDIRECTDRAWSURFACE3, LPDIRECTDRAW,
LPDDSURFACEDESC);
+HRESULT WINAPI Main_DDrawSurface_Lock (LPDIRECTDRAWSURFACE3, LPRECT, LPDDSURFACEDESC,
DWORD, HANDLE);
+HRESULT WINAPI Main_DDrawSurface_Restore(LPDIRECTDRAWSURFACE3);
+HRESULT WINAPI Main_DDrawSurface_UpdateOverlay (LPDIRECTDRAWSURFACE3, LPRECT,
LPDIRECTDRAWSURFACE3, LPRECT,
+ DWORD, LPDDOVERLAYFX);
+HRESULT WINAPI Main_DDrawSurface_AddAttachedSurface(LPDIRECTDRAWSURFACE3,
LPDIRECTDRAWSURFACE3);
+HRESULT WINAPI Main_DDrawSurface_AddOverlayDirtyRect(LPDIRECTDRAWSURFACE3, LPRECT);
+
+
+IDirectDrawSurface3Vtbl DirectDrawSurface3_Vtable =
+{
+ Main_DDrawSurface_QueryInterface,
+ Main_DDrawSurface_AddRef, /* (Compact done) */
+ Main_DDrawSurface_Release,
+ Main_DDrawSurface_AddAttachedSurface,
+ Main_DDrawSurface_AddOverlayDirtyRect,
+ Main_DDrawSurface_Blt,
+ Main_DDrawSurface_BltBatch,
+ Main_DDrawSurface_BltFast,
+ Main_DDrawSurface_DeleteAttachedSurface,
+ Main_DDrawSurface_EnumAttachedSurfaces,
+ Main_DDrawSurface_EnumOverlayZOrders,
+ Main_DDrawSurface_Flip,
+ Main_DDrawSurface_GetAttachedSurface,
+ Main_DDrawSurface_GetBltStatus,
+ Main_DDrawSurface_GetCaps,
+ Main_DDrawSurface_GetClipper,
+ Main_DDrawSurface_GetColorKey,
+ Main_DDrawSurface_GetDC,
+ Main_DDrawSurface_GetFlipStatus,
+ Main_DDrawSurface_GetOverlayPosition,
+ Main_DDrawSurface_GetPalette,
+ Main_DDrawSurface_GetPixelFormat,
+ Main_DDrawSurface_GetSurfaceDesc,
+ Main_DDrawSurface_Initialize,
+ Main_DDrawSurface_IsLost,
+ Main_DDrawSurface_Lock,
+ Main_DDrawSurface_ReleaseDC,
+ Main_DDrawSurface_Restore,
+ Main_DDrawSurface_SetClipper,
+ Main_DDrawSurface_SetColorKey,
+ Main_DDrawSurface_SetOverlayPosition,
+ Main_DDrawSurface_SetPalette,
+ Main_DDrawSurface_Unlock,
+ Main_DDrawSurface_UpdateOverlay,
+ Main_DDrawSurface_UpdateOverlayDisplay,
+ Main_DDrawSurface_UpdateOverlayZOrder,
+ Main_DDrawSurface_GetDDInterface,
+ Main_DDrawSurface_PageLock,
+ Main_DDrawSurface_PageUnlock,
+ Main_DDrawSurface_SetSurfaceDesc,
+};
Propchange: trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface3_Vtable.c
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface4_Vtable.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/Vtable/D…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface4_Vtable.c (added)
+++ trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface4_Vtable.c Wed Dec 12 18:01:25
2007
@@ -1,0 +1,114 @@
+#include <windows.h>
+#include <stdio.h>
+#include <ddraw.h>
+#include <ddrawi.h>
+#include <d3dhal.h>
+#include <ddrawgdi.h>
+
+#if defined(_WIN32) && !defined(_NO_COM )
+#define COM_NO_WINDOWS_H
+#include <objbase.h>
+#else
+#define IUnknown void
+#if !defined(NT_BUILD_ENVIRONMENT) && !defined(WINNT)
+ #define CO_E_NOTINITIALIZED 0x800401F0
+#endif
+#endif
+
+ULONG WINAPI Main_DDrawSurface_AddRef(LPDIRECTDRAWSURFACE4);
+ULONG WINAPI Main_DDrawSurface_Release(LPDIRECTDRAWSURFACE4);
+HRESULT WINAPI Main_DDrawSurface_QueryInterface(LPDIRECTDRAWSURFACE4, REFIID, LPVOID*);
+HRESULT WINAPI Main_DDrawSurface_ReleaseDC(LPDIRECTDRAWSURFACE4, HDC);
+HRESULT WINAPI Main_DDrawSurface_Blt(LPDIRECTDRAWSURFACE4, LPRECT, LPDIRECTDRAWSURFACE4,
LPRECT, DWORD, LPDDBLTFX);
+HRESULT WINAPI Main_DDrawSurface_BltBatch(LPDIRECTDRAWSURFACE4, LPDDBLTBATCH, DWORD,
DWORD);
+HRESULT WINAPI Main_DDrawSurface_BltFast(LPDIRECTDRAWSURFACE4, DWORD, DWORD,
LPDIRECTDRAWSURFACE4, LPRECT, DWORD);
+HRESULT WINAPI Main_DDrawSurface_DeleteAttachedSurface(LPDIRECTDRAWSURFACE4, DWORD,
LPDIRECTDRAWSURFACE4);
+HRESULT WINAPI Main_DDrawSurface_EnumAttachedSurfaces(LPDIRECTDRAWSURFACE4, LPVOID,
LPDDENUMSURFACESCALLBACK2);
+HRESULT WINAPI Main_DDrawSurface_EnumOverlayZOrders(LPDIRECTDRAWSURFACE4, DWORD,
LPVOID,LPDDENUMSURFACESCALLBACK2);
+HRESULT WINAPI Main_DDrawSurface_Flip(LPDIRECTDRAWSURFACE4 , LPDIRECTDRAWSURFACE4,
DWORD);
+HRESULT WINAPI Main_DDrawSurface_FreePrivateData(LPDIRECTDRAWSURFACE4, REFGUID);
+HRESULT WINAPI Main_DDrawSurface_GetAttachedSurface(LPDIRECTDRAWSURFACE4, LPDDSCAPS2,
LPDIRECTDRAWSURFACE4*);
+HRESULT WINAPI Main_DDrawSurface_GetBltStatus(LPDIRECTDRAWSURFACE4, DWORD dwFlags);
+HRESULT WINAPI Main_DDrawSurface_GetCaps(LPDIRECTDRAWSURFACE4, LPDDSCAPS2 pCaps);
+HRESULT WINAPI Main_DDrawSurface_GetClipper(LPDIRECTDRAWSURFACE4, LPDIRECTDRAWCLIPPER*);
+HRESULT WINAPI Main_DDrawSurface_GetColorKey(LPDIRECTDRAWSURFACE4, DWORD, LPDDCOLORKEY);
+HRESULT WINAPI Main_DDrawSurface_GetDC(LPDIRECTDRAWSURFACE4, HDC *);
+HRESULT WINAPI Main_DDrawSurface_GetDDInterface(LPDIRECTDRAWSURFACE4, LPVOID*);
+HRESULT WINAPI Main_DDrawSurface_GetFlipStatus(LPDIRECTDRAWSURFACE4, DWORD);
+HRESULT WINAPI Main_DDrawSurface_GetOverlayPosition(LPDIRECTDRAWSURFACE4, LPLONG,
LPLONG);
+HRESULT WINAPI Main_DDrawSurface_GetPalette(LPDIRECTDRAWSURFACE4, LPDIRECTDRAWPALETTE*);
+HRESULT WINAPI Main_DDrawSurface_GetPixelFormat(LPDIRECTDRAWSURFACE4, LPDDPIXELFORMAT);
+HRESULT WINAPI Main_DDrawSurface_GetPrivateData(LPDIRECTDRAWSURFACE4, REFGUID, LPVOID,
LPDWORD);
+HRESULT WINAPI Main_DDrawSurface_GetSurfaceDesc(LPDIRECTDRAWSURFACE4, LPDDSURFACEDESC2);
+HRESULT WINAPI Main_DDrawSurface_GetUniquenessValue(LPDIRECTDRAWSURFACE4, LPDWORD);
+HRESULT WINAPI Main_DDrawSurface_IsLost(LPDIRECTDRAWSURFACE4);
+HRESULT WINAPI Main_DDrawSurface_PageLock(LPDIRECTDRAWSURFACE4, DWORD);
+HRESULT WINAPI Main_DDrawSurface_PageUnlock(LPDIRECTDRAWSURFACE4, DWORD);
+HRESULT WINAPI Main_DDrawSurface_ReleaseDC(LPDIRECTDRAWSURFACE4, HDC);
+HRESULT WINAPI Main_DDrawSurface_SetClipper (LPDIRECTDRAWSURFACE4, LPDIRECTDRAWCLIPPER);
+HRESULT WINAPI Main_DDrawSurface_SetColorKey (LPDIRECTDRAWSURFACE4, DWORD,
LPDDCOLORKEY);
+HRESULT WINAPI Main_DDrawSurface_SetOverlayPosition (LPDIRECTDRAWSURFACE4, LONG, LONG);
+HRESULT WINAPI Main_DDrawSurface_SetPalette (LPDIRECTDRAWSURFACE4, LPDIRECTDRAWPALETTE);
+HRESULT WINAPI Main_DDrawSurface_SetPrivateData (LPDIRECTDRAWSURFACE4, REFGUID, LPVOID,
DWORD, DWORD);
+HRESULT WINAPI Main_DDrawSurface_UpdateOverlayDisplay (LPDIRECTDRAWSURFACE4, DWORD);
+HRESULT WINAPI Main_DDrawSurface_UpdateOverlayZOrder (LPDIRECTDRAWSURFACE4, DWORD,
LPDIRECTDRAWSURFACE4);
+HRESULT WINAPI Main_DDrawSurface_SetSurfaceDesc(LPDIRECTDRAWSURFACE4, DDSURFACEDESC2 *,
DWORD);
+HRESULT WINAPI Main_DDrawSurface_Unlock (LPDIRECTDRAWSURFACE4, LPRECT);
+HRESULT WINAPI Main_DDrawSurface_Initialize (LPDIRECTDRAWSURFACE4, LPDIRECTDRAW,
LPDDSURFACEDESC2);
+HRESULT WINAPI Main_DDrawSurface_Lock (LPDIRECTDRAWSURFACE4, LPRECT, LPDDSURFACEDESC2,
DWORD, HANDLE);
+HRESULT WINAPI Main_DDrawSurface_Restore(LPDIRECTDRAWSURFACE4);
+HRESULT WINAPI Main_DDrawSurface_UpdateOverlay (LPDIRECTDRAWSURFACE4, LPRECT,
LPDIRECTDRAWSURFACE4, LPRECT,
+ DWORD, LPDDOVERLAYFX);
+HRESULT WINAPI Main_DDrawSurface_ChangeUniquenessValue(LPDIRECTDRAWSURFACE4);
+HRESULT WINAPI Main_DDrawSurface_AddAttachedSurface(LPDIRECTDRAWSURFACE4,
LPDIRECTDRAWSURFACE4);
+HRESULT WINAPI Main_DDrawSurface_AddOverlayDirtyRect(LPDIRECTDRAWSURFACE4, LPRECT);
+
+
+IDirectDrawSurface4Vtbl DirectDrawSurface4_Vtable =
+{
+ Main_DDrawSurface_QueryInterface,
+ Main_DDrawSurface_AddRef, /* (Compact done) */
+ Main_DDrawSurface_Release,
+ Main_DDrawSurface_AddAttachedSurface,
+ Main_DDrawSurface_AddOverlayDirtyRect,
+ Main_DDrawSurface_Blt,
+ Main_DDrawSurface_BltBatch,
+ Main_DDrawSurface_BltFast,
+ Main_DDrawSurface_DeleteAttachedSurface,
+ Main_DDrawSurface_EnumAttachedSurfaces,
+ Main_DDrawSurface_EnumOverlayZOrders,
+ Main_DDrawSurface_Flip,
+ Main_DDrawSurface_GetAttachedSurface,
+ Main_DDrawSurface_GetBltStatus,
+ Main_DDrawSurface_GetCaps,
+ Main_DDrawSurface_GetClipper,
+ Main_DDrawSurface_GetColorKey,
+ Main_DDrawSurface_GetDC,
+ Main_DDrawSurface_GetFlipStatus,
+ Main_DDrawSurface_GetOverlayPosition,
+ Main_DDrawSurface_GetPalette,
+ Main_DDrawSurface_GetPixelFormat,
+ Main_DDrawSurface_GetSurfaceDesc,
+ Main_DDrawSurface_Initialize,
+ Main_DDrawSurface_IsLost,
+ Main_DDrawSurface_Lock,
+ Main_DDrawSurface_ReleaseDC,
+ Main_DDrawSurface_Restore,
+ Main_DDrawSurface_SetClipper,
+ Main_DDrawSurface_SetColorKey,
+ Main_DDrawSurface_SetOverlayPosition,
+ Main_DDrawSurface_SetPalette,
+ Main_DDrawSurface_Unlock,
+ Main_DDrawSurface_UpdateOverlay,
+ Main_DDrawSurface_UpdateOverlayDisplay,
+ Main_DDrawSurface_UpdateOverlayZOrder,
+ Main_DDrawSurface_GetDDInterface,
+ Main_DDrawSurface_PageLock,
+ Main_DDrawSurface_PageUnlock,
+ Main_DDrawSurface_SetSurfaceDesc,
+ Main_DDrawSurface_SetPrivateData,
+ Main_DDrawSurface_GetPrivateData,
+ Main_DDrawSurface_FreePrivateData,
+ Main_DDrawSurface_GetUniquenessValue,
+ Main_DDrawSurface_ChangeUniquenessValue,
+};
Propchange: trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface4_Vtable.c
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface7_Vtable.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/Vtable/D…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface7_Vtable.c (added)
+++ trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface7_Vtable.c Wed Dec 12 18:01:25
2007
@@ -1,0 +1,122 @@
+#include <windows.h>
+#include <stdio.h>
+#include <ddraw.h>
+#include <ddrawi.h>
+#include <d3dhal.h>
+#include <ddrawgdi.h>
+
+#if defined(_WIN32) && !defined(_NO_COM )
+#define COM_NO_WINDOWS_H
+#include <objbase.h>
+#else
+#define IUnknown void
+#if !defined(NT_BUILD_ENVIRONMENT) && !defined(WINNT)
+ #define CO_E_NOTINITIALIZED 0x800401F0
+#endif
+#endif
+
+ULONG WINAPI Main_DDrawSurface_AddRef(LPDIRECTDRAWSURFACE7);
+ULONG WINAPI Main_DDrawSurface_Release(LPDIRECTDRAWSURFACE7);
+HRESULT WINAPI Main_DDrawSurface_QueryInterface(LPDIRECTDRAWSURFACE7, REFIID, LPVOID*);
+HRESULT WINAPI Main_DDrawSurface_ReleaseDC(LPDIRECTDRAWSURFACE7, HDC);
+HRESULT WINAPI Main_DDrawSurface_Blt(LPDIRECTDRAWSURFACE7, LPRECT, LPDIRECTDRAWSURFACE7,
LPRECT, DWORD, LPDDBLTFX);
+HRESULT WINAPI Main_DDrawSurface_BltBatch(LPDIRECTDRAWSURFACE7, LPDDBLTBATCH, DWORD,
DWORD);
+HRESULT WINAPI Main_DDrawSurface_BltFast(LPDIRECTDRAWSURFACE7, DWORD, DWORD,
LPDIRECTDRAWSURFACE7, LPRECT, DWORD);
+HRESULT WINAPI Main_DDrawSurface_DeleteAttachedSurface(LPDIRECTDRAWSURFACE7, DWORD,
LPDIRECTDRAWSURFACE7);
+HRESULT WINAPI Main_DDrawSurface_EnumAttachedSurfaces(LPDIRECTDRAWSURFACE7, LPVOID,
LPDDENUMSURFACESCALLBACK7);
+HRESULT WINAPI Main_DDrawSurface_EnumOverlayZOrders(LPDIRECTDRAWSURFACE7, DWORD,
LPVOID,LPDDENUMSURFACESCALLBACK7);
+HRESULT WINAPI Main_DDrawSurface_Flip(LPDIRECTDRAWSURFACE7 , LPDIRECTDRAWSURFACE7,
DWORD);
+HRESULT WINAPI Main_DDrawSurface_FreePrivateData(LPDIRECTDRAWSURFACE7, REFGUID);
+HRESULT WINAPI Main_DDrawSurface_GetAttachedSurface(LPDIRECTDRAWSURFACE7, LPDDSCAPS2,
LPDIRECTDRAWSURFACE7*);
+HRESULT WINAPI Main_DDrawSurface_GetBltStatus(LPDIRECTDRAWSURFACE7, DWORD dwFlags);
+HRESULT WINAPI Main_DDrawSurface_GetCaps(LPDIRECTDRAWSURFACE7, LPDDSCAPS2 pCaps);
+HRESULT WINAPI Main_DDrawSurface_GetClipper(LPDIRECTDRAWSURFACE7, LPDIRECTDRAWCLIPPER*);
+HRESULT WINAPI Main_DDrawSurface_GetColorKey(LPDIRECTDRAWSURFACE7, DWORD, LPDDCOLORKEY);
+HRESULT WINAPI Main_DDrawSurface_GetDC(LPDIRECTDRAWSURFACE7, HDC *);
+HRESULT WINAPI Main_DDrawSurface_GetDDInterface(LPDIRECTDRAWSURFACE7, LPVOID*);
+HRESULT WINAPI Main_DDrawSurface_GetFlipStatus(LPDIRECTDRAWSURFACE7, DWORD);
+HRESULT WINAPI Main_DDrawSurface_GetLOD(LPDIRECTDRAWSURFACE7, LPDWORD);
+HRESULT WINAPI Main_DDrawSurface_GetOverlayPosition(LPDIRECTDRAWSURFACE7, LPLONG,
LPLONG);
+HRESULT WINAPI Main_DDrawSurface_GetPalette(LPDIRECTDRAWSURFACE7, LPDIRECTDRAWPALETTE*);
+HRESULT WINAPI Main_DDrawSurface_GetPixelFormat(LPDIRECTDRAWSURFACE7, LPDDPIXELFORMAT);
+HRESULT WINAPI Main_DDrawSurface_GetPriority(LPDIRECTDRAWSURFACE7, LPDWORD);
+HRESULT WINAPI Main_DDrawSurface_GetPrivateData(LPDIRECTDRAWSURFACE7, REFGUID, LPVOID,
LPDWORD);
+HRESULT WINAPI Main_DDrawSurface_GetSurfaceDesc(LPDIRECTDRAWSURFACE7, LPDDSURFACEDESC2);
+HRESULT WINAPI Main_DDrawSurface_GetUniquenessValue(LPDIRECTDRAWSURFACE7, LPDWORD);
+HRESULT WINAPI Main_DDrawSurface_IsLost(LPDIRECTDRAWSURFACE7);
+HRESULT WINAPI Main_DDrawSurface_PageLock(LPDIRECTDRAWSURFACE7, DWORD);
+HRESULT WINAPI Main_DDrawSurface_PageUnlock(LPDIRECTDRAWSURFACE7, DWORD);
+HRESULT WINAPI Main_DDrawSurface_ReleaseDC(LPDIRECTDRAWSURFACE7, HDC);
+HRESULT WINAPI Main_DDrawSurface_SetClipper (LPDIRECTDRAWSURFACE7, LPDIRECTDRAWCLIPPER);
+HRESULT WINAPI Main_DDrawSurface_SetColorKey (LPDIRECTDRAWSURFACE7, DWORD,
LPDDCOLORKEY);
+HRESULT WINAPI Main_DDrawSurface_SetOverlayPosition (LPDIRECTDRAWSURFACE7, LONG, LONG);
+HRESULT WINAPI Main_DDrawSurface_SetPalette (LPDIRECTDRAWSURFACE7, LPDIRECTDRAWPALETTE);
+HRESULT WINAPI Main_DDrawSurface_SetPriority (LPDIRECTDRAWSURFACE7, DWORD);
+HRESULT WINAPI Main_DDrawSurface_SetPrivateData (LPDIRECTDRAWSURFACE7, REFGUID, LPVOID,
DWORD, DWORD);
+HRESULT WINAPI Main_DDrawSurface_UpdateOverlayDisplay (LPDIRECTDRAWSURFACE7, DWORD);
+HRESULT WINAPI Main_DDrawSurface_UpdateOverlayZOrder (LPDIRECTDRAWSURFACE7, DWORD,
LPDIRECTDRAWSURFACE7);
+HRESULT WINAPI Main_DDrawSurface_SetSurfaceDesc(LPDIRECTDRAWSURFACE7, DDSURFACEDESC2 *,
DWORD);
+HRESULT WINAPI Main_DDrawSurface_SetLOD(LPDIRECTDRAWSURFACE7, DWORD);
+HRESULT WINAPI Main_DDrawSurface_Unlock (LPDIRECTDRAWSURFACE7, LPRECT);
+HRESULT WINAPI Main_DDrawSurface_Initialize (LPDIRECTDRAWSURFACE7, LPDIRECTDRAW,
LPDDSURFACEDESC2);
+HRESULT WINAPI Main_DDrawSurface_Lock (LPDIRECTDRAWSURFACE7, LPRECT, LPDDSURFACEDESC2,
DWORD, HANDLE);
+HRESULT WINAPI Main_DDrawSurface_Restore(LPDIRECTDRAWSURFACE7);
+HRESULT WINAPI Main_DDrawSurface_UpdateOverlay (LPDIRECTDRAWSURFACE7, LPRECT,
LPDIRECTDRAWSURFACE7, LPRECT,
+ DWORD, LPDDOVERLAYFX);
+HRESULT WINAPI Main_DDrawSurface_ChangeUniquenessValue(LPDIRECTDRAWSURFACE7);
+HRESULT WINAPI Main_DDrawSurface_AddAttachedSurface(LPDIRECTDRAWSURFACE7,
LPDIRECTDRAWSURFACE7);
+HRESULT WINAPI Main_DDrawSurface_AddOverlayDirtyRect(LPDIRECTDRAWSURFACE7, LPRECT);
+
+
+IDirectDrawSurface7Vtbl DirectDrawSurface7_Vtable =
+{
+ Main_DDrawSurface_QueryInterface,
+ Main_DDrawSurface_AddRef, /* (Compact done) */
+ Main_DDrawSurface_Release,
+ Main_DDrawSurface_AddAttachedSurface,
+ Main_DDrawSurface_AddOverlayDirtyRect,
+ Main_DDrawSurface_Blt,
+ Main_DDrawSurface_BltBatch,
+ Main_DDrawSurface_BltFast,
+ Main_DDrawSurface_DeleteAttachedSurface,
+ Main_DDrawSurface_EnumAttachedSurfaces,
+ Main_DDrawSurface_EnumOverlayZOrders,
+ Main_DDrawSurface_Flip,
+ Main_DDrawSurface_GetAttachedSurface,
+ Main_DDrawSurface_GetBltStatus,
+ Main_DDrawSurface_GetCaps,
+ Main_DDrawSurface_GetClipper,
+ Main_DDrawSurface_GetColorKey,
+ Main_DDrawSurface_GetDC,
+ Main_DDrawSurface_GetFlipStatus,
+ Main_DDrawSurface_GetOverlayPosition,
+ Main_DDrawSurface_GetPalette,
+ Main_DDrawSurface_GetPixelFormat,
+ Main_DDrawSurface_GetSurfaceDesc,
+ Main_DDrawSurface_Initialize,
+ Main_DDrawSurface_IsLost,
+ Main_DDrawSurface_Lock,
+ Main_DDrawSurface_ReleaseDC,
+ Main_DDrawSurface_Restore,
+ Main_DDrawSurface_SetClipper,
+ Main_DDrawSurface_SetColorKey,
+ Main_DDrawSurface_SetOverlayPosition,
+ Main_DDrawSurface_SetPalette,
+ Main_DDrawSurface_Unlock,
+ Main_DDrawSurface_UpdateOverlay,
+ Main_DDrawSurface_UpdateOverlayDisplay,
+ Main_DDrawSurface_UpdateOverlayZOrder,
+ Main_DDrawSurface_GetDDInterface,
+ Main_DDrawSurface_PageLock,
+ Main_DDrawSurface_PageUnlock,
+ Main_DDrawSurface_SetSurfaceDesc,
+ Main_DDrawSurface_SetPrivateData,
+ Main_DDrawSurface_GetPrivateData,
+ Main_DDrawSurface_FreePrivateData,
+ Main_DDrawSurface_GetUniquenessValue,
+ Main_DDrawSurface_ChangeUniquenessValue,
+ Main_DDrawSurface_SetPriority,
+ Main_DDrawSurface_GetPriority,
+ Main_DDrawSurface_SetLOD,
+ Main_DDrawSurface_GetLOD
+};
Propchange: trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface7_Vtable.c
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface_Vtable.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/Vtable/D…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface_Vtable.c (added)
+++ trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface_Vtable.c Wed Dec 12 18:01:25
2007
@@ -1,0 +1,95 @@
+#include <windows.h>
+#include <stdio.h>
+#include <ddraw.h>
+#include <ddrawi.h>
+#include <d3dhal.h>
+#include <ddrawgdi.h>
+
+#if defined(_WIN32) && !defined(_NO_COM )
+#define COM_NO_WINDOWS_H
+#include <objbase.h>
+#else
+#define IUnknown void
+#if !defined(NT_BUILD_ENVIRONMENT) && !defined(WINNT)
+ #define CO_E_NOTINITIALIZED 0x800401F0
+#endif
+#endif
+
+ULONG WINAPI Main_DDrawSurface_AddRef(LPDIRECTDRAWSURFACE);
+ULONG WINAPI Main_DDrawSurface_Release(LPDIRECTDRAWSURFACE);
+HRESULT WINAPI Main_DDrawSurface_QueryInterface(LPDIRECTDRAWSURFACE, REFIID, LPVOID*);
+HRESULT WINAPI Main_DDrawSurface_Blt(LPDIRECTDRAWSURFACE, LPRECT, LPDIRECTDRAWSURFACE,
LPRECT, DWORD, LPDDBLTFX);
+HRESULT WINAPI Main_DDrawSurface_BltBatch(LPDIRECTDRAWSURFACE, LPDDBLTBATCH, DWORD,
DWORD);
+HRESULT WINAPI Main_DDrawSurface_BltFast(LPDIRECTDRAWSURFACE, DWORD, DWORD,
LPDIRECTDRAWSURFACE, LPRECT, DWORD);
+HRESULT WINAPI Main_DDrawSurface_DeleteAttachedSurface(LPDIRECTDRAWSURFACE, DWORD,
LPDIRECTDRAWSURFACE);
+HRESULT WINAPI Main_DDrawSurface_EnumAttachedSurfaces(LPDIRECTDRAWSURFACE, LPVOID,
LPDDENUMSURFACESCALLBACK);
+HRESULT WINAPI Main_DDrawSurface_EnumOverlayZOrders(LPDIRECTDRAWSURFACE, DWORD,
LPVOID,LPDDENUMSURFACESCALLBACK);
+HRESULT WINAPI Main_DDrawSurface_Flip(LPDIRECTDRAWSURFACE , LPDIRECTDRAWSURFACE, DWORD);
+HRESULT WINAPI Main_DDrawSurface_GetAttachedSurface(LPDIRECTDRAWSURFACE, LPDDSCAPS,
LPDIRECTDRAWSURFACE*);
+HRESULT WINAPI Main_DDrawSurface_GetBltStatus(LPDIRECTDRAWSURFACE, DWORD dwFlags);
+HRESULT WINAPI Main_DDrawSurface_GetCaps(LPDIRECTDRAWSURFACE, LPDDSCAPS pCaps);
+HRESULT WINAPI Main_DDrawSurface_GetClipper(LPDIRECTDRAWSURFACE, LPDIRECTDRAWCLIPPER*);
+HRESULT WINAPI Main_DDrawSurface_GetColorKey(LPDIRECTDRAWSURFACE, DWORD, LPDDCOLORKEY);
+HRESULT WINAPI Main_DDrawSurface_GetDC(LPDIRECTDRAWSURFACE, HDC *);
+HRESULT WINAPI Main_DDrawSurface_GetFlipStatus(LPDIRECTDRAWSURFACE, DWORD);
+HRESULT WINAPI Main_DDrawSurface_GetOverlayPosition(LPDIRECTDRAWSURFACE, LPLONG,
LPLONG);
+HRESULT WINAPI Main_DDrawSurface_GetPalette(LPDIRECTDRAWSURFACE, LPDIRECTDRAWPALETTE*);
+HRESULT WINAPI Main_DDrawSurface_GetPixelFormat(LPDIRECTDRAWSURFACE, LPDDPIXELFORMAT);
+HRESULT WINAPI Main_DDrawSurface_GetSurfaceDesc(LPDIRECTDRAWSURFACE, LPDDSURFACEDESC);
+HRESULT WINAPI Main_DDrawSurface_IsLost(LPDIRECTDRAWSURFACE);
+HRESULT WINAPI Main_DDrawSurface_ReleaseDC(LPDIRECTDRAWSURFACE, HDC);
+HRESULT WINAPI Main_DDrawSurface_SetClipper (LPDIRECTDRAWSURFACE, LPDIRECTDRAWCLIPPER);
+HRESULT WINAPI Main_DDrawSurface_SetColorKey (LPDIRECTDRAWSURFACE, DWORD, LPDDCOLORKEY);
+HRESULT WINAPI Main_DDrawSurface_SetOverlayPosition (LPDIRECTDRAWSURFACE, LONG, LONG);
+HRESULT WINAPI Main_DDrawSurface_SetPalette (LPDIRECTDRAWSURFACE, LPDIRECTDRAWPALETTE);
+HRESULT WINAPI Main_DDrawSurface_UpdateOverlayDisplay (LPDIRECTDRAWSURFACE, DWORD);
+HRESULT WINAPI Main_DDrawSurface_UpdateOverlayZOrder (LPDIRECTDRAWSURFACE, DWORD,
LPDIRECTDRAWSURFACE);
+HRESULT WINAPI Main_DDrawSurface_Unlock (LPDIRECTDRAWSURFACE, LPVOID);
+HRESULT WINAPI Main_DDrawSurface_Initialize (LPDIRECTDRAWSURFACE, LPDIRECTDRAW,
LPDDSURFACEDESC);
+HRESULT WINAPI Main_DDrawSurface_Lock (LPDIRECTDRAWSURFACE, LPRECT, LPDDSURFACEDESC,
DWORD, HANDLE);
+HRESULT WINAPI Main_DDrawSurface_Restore(LPDIRECTDRAWSURFACE);
+HRESULT WINAPI Main_DDrawSurface_UpdateOverlay (LPDIRECTDRAWSURFACE, LPRECT,
LPDIRECTDRAWSURFACE, LPRECT,
+ DWORD, LPDDOVERLAYFX);
+HRESULT WINAPI Main_DDrawSurface_AddAttachedSurface(LPDIRECTDRAWSURFACE,
LPDIRECTDRAWSURFACE);
+HRESULT WINAPI Main_DDrawSurface_AddOverlayDirtyRect(LPDIRECTDRAWSURFACE, LPRECT);
+
+
+IDirectDrawSurfaceVtbl DirectDrawSurface_Vtable =
+{
+ Main_DDrawSurface_QueryInterface,
+ Main_DDrawSurface_AddRef, /* (Compact done) */
+ Main_DDrawSurface_Release,
+ Main_DDrawSurface_AddAttachedSurface,
+ Main_DDrawSurface_AddOverlayDirtyRect,
+ Main_DDrawSurface_Blt,
+ Main_DDrawSurface_BltBatch,
+ Main_DDrawSurface_BltFast,
+ Main_DDrawSurface_DeleteAttachedSurface,
+ Main_DDrawSurface_EnumAttachedSurfaces,
+ Main_DDrawSurface_EnumOverlayZOrders,
+ Main_DDrawSurface_Flip,
+ Main_DDrawSurface_GetAttachedSurface,
+ Main_DDrawSurface_GetBltStatus,
+ Main_DDrawSurface_GetCaps,
+ Main_DDrawSurface_GetClipper,
+ Main_DDrawSurface_GetColorKey,
+ Main_DDrawSurface_GetDC,
+ Main_DDrawSurface_GetFlipStatus,
+ Main_DDrawSurface_GetOverlayPosition,
+ Main_DDrawSurface_GetPalette,
+ Main_DDrawSurface_GetPixelFormat,
+ Main_DDrawSurface_GetSurfaceDesc,
+ Main_DDrawSurface_Initialize,
+ Main_DDrawSurface_IsLost,
+ Main_DDrawSurface_Lock,
+ Main_DDrawSurface_ReleaseDC,
+ Main_DDrawSurface_Restore,
+ Main_DDrawSurface_SetClipper,
+ Main_DDrawSurface_SetColorKey,
+ Main_DDrawSurface_SetOverlayPosition,
+ Main_DDrawSurface_SetPalette,
+ Main_DDrawSurface_Unlock,
+ Main_DDrawSurface_UpdateOverlay,
+ Main_DDrawSurface_UpdateOverlayDisplay,
+ Main_DDrawSurface_UpdateOverlayZOrder,
+};
Propchange: trunk/reactos/dll/directx/ddraw/Vtable/DirectDrawSurface_Vtable.c
------------------------------------------------------------------------------
svn:eol-style = native
Modified: trunk/reactos/dll/directx/ddraw/ddraw.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/ddraw.rb…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/ddraw.rbuild (original)
+++ trunk/reactos/dll/directx/ddraw/ddraw.rbuild Wed Dec 12 18:01:25 2007
@@ -62,5 +62,10 @@
<file>DirectDraw4_Vtable.c</file>
<file>DirectDraw2_Vtable.c</file>
<file>DirectDraw_Vtable.c</file>
+ <file>DirectDrawSurface7_Vtable.c</file>
+ <file>DirectDrawSurface4_Vtable.c</file>
+ <file>DirectDrawSurface3_Vtable.c</file>
+ <file>DirectDrawSurface2_Vtable.c</file>
+ <file>DirectDrawSurface_Vtable.c</file>
</directory>
-</module>
+</module>
Modified: trunk/reactos/dll/directx/ddraw/rosdraw.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/rosdraw.…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/rosdraw.h (original)
+++ trunk/reactos/dll/directx/ddraw/rosdraw.h Wed Dec 12 18:01:25 2007
@@ -28,7 +28,10 @@
extern IDirectDrawSurface7Vtbl DirectDrawSurface7_Vtable;
-extern IDirectDrawSurface3Vtbl DirectDrawSurface3_VTable;
+extern IDirectDrawSurface4Vtbl DirectDrawSurface4_Vtable;
+extern IDirectDrawSurface3Vtbl DirectDrawSurface3_Vtable;
+extern IDirectDrawSurface2Vtbl DirectDrawSurface2_Vtable;
+extern IDirectDrawSurfaceVtbl DirectDrawSurface_Vtable;
extern IDirectDrawPaletteVtbl DirectDrawPalette_Vtable;
extern IDirectDrawClipperVtbl DirectDrawClipper_Vtable;
extern IDirectDrawColorControlVtbl DirectDrawColorControl_Vtable;