[DDRAW] Directory reorganization (part 3)
Christian Costa
titan.costa at wanadoo.fr
Wed Jun 1 15:47:17 CDT 2005
Hi,
Changelog:
Merged remaining header files in DirectDraw objects folders into
ddraw_private.h.
Christian Costa titan.costa at wanadoo.fr
-------------- next part --------------
--- dlls/ddraw/dclipper/main.h 2004-08-25 20:13:52.000000000 +0100
+++ /dev/null 1970-01-01 01:00:00.000000000 +0100
@@ -1,51 +0,0 @@
-/*
- * Copyright 2000 TransGaming Technologies Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef WINE_DDRAW_DCLIPPER_MAIN_H_INCLUDED
-#define WINE_DDRAW_DCLIPPER_MAIN_H_INCLUDED
-
-HRESULT WINAPI DirectDrawCreateClipper(DWORD dwFlags,
- LPDIRECTDRAWCLIPPER* ppClipper,
- LPUNKNOWN pUnkOuter);
-HRESULT DDRAW_CreateClipper(IUnknown* pUnkOuter, REFIID riid, LPVOID* ppObj);
-void Main_DirectDrawClipper_ForceDestroy(IDirectDrawClipperImpl* This);
-
-HRESULT WINAPI
-Main_DirectDrawClipper_SetHwnd(LPDIRECTDRAWCLIPPER iface, DWORD dwFlags,
- HWND hWnd);
-ULONG WINAPI Main_DirectDrawClipper_Release(LPDIRECTDRAWCLIPPER iface);
-HRESULT WINAPI
-Main_DirectDrawClipper_GetClipList(LPDIRECTDRAWCLIPPER iface, LPRECT lpRect,
- LPRGNDATA lpClipList, LPDWORD lpdwSize);
-HRESULT WINAPI
-Main_DirectDrawClipper_SetClipList(LPDIRECTDRAWCLIPPER iface,LPRGNDATA lprgn,
- DWORD dwFlag);
-HRESULT WINAPI
-Main_DirectDrawClipper_QueryInterface(LPDIRECTDRAWCLIPPER iface, REFIID riid,
- LPVOID* ppvObj);
-ULONG WINAPI Main_DirectDrawClipper_AddRef( LPDIRECTDRAWCLIPPER iface );
-HRESULT WINAPI
-Main_DirectDrawClipper_GetHWnd(LPDIRECTDRAWCLIPPER iface, HWND* hWndPtr);
-HRESULT WINAPI
-Main_DirectDrawClipper_Initialize(LPDIRECTDRAWCLIPPER iface, LPDIRECTDRAW lpDD,
- DWORD dwFlags);
-HRESULT WINAPI
-Main_DirectDrawClipper_IsClipListChanged(LPDIRECTDRAWCLIPPER iface,
- BOOL* lpbChanged);
-
-#endif
--- dlls/ddraw/dpalette/main.h 2003-07-28 20:36:35.000000000 +0100
+++ /dev/null 1970-01-01 01:00:00.000000000 +0100
@@ -1,60 +0,0 @@
-/*
- * Copyright 2000-2001 TransGaming Technologies Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef WINE_DDRAW_DPALETTE_MAIN_H_INCLUDED
-#define WINE_DDRAW_DPALETTE_MAIN_H_INCLUDED
-
-HRESULT Main_DirectDrawPalette_Construct(IDirectDrawPaletteImpl* This,
- IDirectDrawImpl* pDD, DWORD dwFlags);
-void Main_DirectDrawPalette_final_release(IDirectDrawPaletteImpl* This);
-
-
-HRESULT
-Main_DirectDrawPalette_Create(IDirectDrawImpl* pDD, DWORD dwFlags,
- LPDIRECTDRAWPALETTE* ppPalette,
- LPUNKNOWN pUnkOuter);
-void Main_DirectDrawPalette_ForceDestroy(IDirectDrawPaletteImpl* This);
-
-
-DWORD Main_DirectDrawPalette_Size(DWORD dwFlags);
-
-
-
-HRESULT WINAPI
-Main_DirectDrawPalette_GetEntries(LPDIRECTDRAWPALETTE iface, DWORD dwFlags,
- DWORD dwStart, DWORD dwCount,
- LPPALETTEENTRY palent);
-HRESULT WINAPI
-Main_DirectDrawPalette_SetEntries(LPDIRECTDRAWPALETTE iface, DWORD dwFlags,
- DWORD dwStart, DWORD dwCount,
- LPPALETTEENTRY palent);
-ULONG WINAPI
-Main_DirectDrawPalette_Release(LPDIRECTDRAWPALETTE iface);
-ULONG WINAPI Main_DirectDrawPalette_AddRef(LPDIRECTDRAWPALETTE iface);
-HRESULT WINAPI
-Main_DirectDrawPalette_Initialize(LPDIRECTDRAWPALETTE iface,
- LPDIRECTDRAW ddraw, DWORD dwFlags,
- LPPALETTEENTRY palent);
-HRESULT WINAPI
-Main_DirectDrawPalette_GetCaps(LPDIRECTDRAWPALETTE iface, LPDWORD lpdwCaps);
-HRESULT WINAPI
-Main_DirectDrawPalette_QueryInterface(LPDIRECTDRAWPALETTE iface,
- REFIID refiid, LPVOID *obj);
-
-
-#endif
--- dlls/ddraw/dpalette/hal.h 2003-07-28 20:36:35.000000000 +0100
+++ /dev/null 1970-01-01 01:00:00.000000000 +0100
@@ -1,36 +0,0 @@
-/*
- * Copyright 2000-2001 TransGaming Technologies Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef WINE_DDRAW_DPALETTE_HAL_H_INCLUDED
-#define WINE_DDRAW_DPALETTE_HAL_H_INCLUDED
-
-HRESULT HAL_DirectDrawPalette_Construct(IDirectDrawPaletteImpl* This,
- IDirectDrawImpl* pDD, DWORD dwFlags);
-void HAL_DirectDrawPalette_final_release(IDirectDrawPaletteImpl* This);
-
-HRESULT
-HAL_DirectDrawPalette_Create(IDirectDrawImpl* pDD, DWORD dwFlags,
- LPDIRECTDRAWPALETTE* ppPalette,
- LPUNKNOWN pUnkOuter);
-
-HRESULT WINAPI
-HAL_DirectDrawPalette_SetEntries(LPDIRECTDRAWPALETTE iface, DWORD dwFlags,
- DWORD dwStart, DWORD dwCount,
- LPPALETTEENTRY palent);
-
-#endif
--- dlls/ddraw/ddraw/main.h 2003-07-28 20:36:35.000000000 +0100
+++ /dev/null 1970-01-01 01:00:00.000000000 +0100
@@ -1,124 +0,0 @@
-/*
- * Copyright 2000-2001 TransGaming Technologies Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef WINE_DDRAW_DDRAW_MAIN_H_INCLUDED
-#define WINE_DDRAW_DDRAW_MAIN_H_INCLUDED
-
-/* internal virtual functions */
-void Main_DirectDraw_final_release(IDirectDrawImpl* This);
-HRESULT
-Main_create_offscreen(IDirectDrawImpl* This, const DDSURFACEDESC2 *pDDSD,
- LPDIRECTDRAWSURFACE7* ppSurf, LPUNKNOWN pOuter);
-HRESULT
-Main_create_texture(IDirectDrawImpl* This, const DDSURFACEDESC2 *pDDSD,
- LPDIRECTDRAWSURFACE7* ppSurf, LPUNKNOWN pOuter,
- DWORD dwMipMapLevel);
-HRESULT
-Main_create_zbuffer(IDirectDrawImpl* This, const DDSURFACEDESC2 *pDDSD,
- LPDIRECTDRAWSURFACE7* ppSurf, LPUNKNOWN pOuter);
-
-/* internal functions */
-HRESULT Main_DirectDraw_Construct(IDirectDrawImpl *This, BOOL ex);
-void Main_DirectDraw_AddSurface(IDirectDrawImpl* This,
- IDirectDrawSurfaceImpl* surface);
-void Main_DirectDraw_RemoveSurface(IDirectDrawImpl* This,
- IDirectDrawSurfaceImpl* surface);
-void Main_DirectDraw_AddClipper(IDirectDrawImpl* This,
- IDirectDrawClipperImpl* clipper);
-void Main_DirectDraw_RemoveClipper(IDirectDrawImpl* This,
- IDirectDrawClipperImpl* clipper);
-void Main_DirectDraw_AddPalette(IDirectDrawImpl* This,
- IDirectDrawPaletteImpl* palette);
-void Main_DirectDraw_RemovePalette(IDirectDrawImpl* This,
- IDirectDrawPaletteImpl* palette);
-
-
-/* interface functions */
-
-ULONG WINAPI Main_DirectDraw_AddRef(LPDIRECTDRAW7 iface);
-ULONG WINAPI Main_DirectDraw_Release(LPDIRECTDRAW7 iface);
-HRESULT WINAPI Main_DirectDraw_QueryInterface(LPDIRECTDRAW7 iface,
- REFIID refiid,LPVOID *obj);
-HRESULT WINAPI Main_DirectDraw_Compact(LPDIRECTDRAW7 iface);
-HRESULT WINAPI Main_DirectDraw_CreateClipper(LPDIRECTDRAW7 iface,
- DWORD dwFlags,
- LPDIRECTDRAWCLIPPER *ppClipper,
- IUnknown *pUnkOuter);
-HRESULT WINAPI
-Main_DirectDraw_CreatePalette(LPDIRECTDRAW7 iface, DWORD dwFlags,
- LPPALETTEENTRY palent,
- LPDIRECTDRAWPALETTE* ppPalette,
- LPUNKNOWN pUnknown);
-HRESULT WINAPI
-Main_DirectDraw_CreateSurface(LPDIRECTDRAW7 iface, LPDDSURFACEDESC2 pDDSD,
- LPDIRECTDRAWSURFACE7 *ppSurf,
- IUnknown *pUnkOuter);
-HRESULT WINAPI
-Main_DirectDraw_DuplicateSurface(LPDIRECTDRAW7 iface, LPDIRECTDRAWSURFACE7 src,
- LPDIRECTDRAWSURFACE7* dst);
-HRESULT WINAPI
-Main_DirectDraw_EnumSurfaces(LPDIRECTDRAW7 iface, DWORD dwFlags,
- LPDDSURFACEDESC2 lpDDSD2, LPVOID context,
- LPDDENUMSURFACESCALLBACK7 callback);
-HRESULT WINAPI
-Main_DirectDraw_EvaluateMode(LPDIRECTDRAW7 iface,DWORD a,DWORD* b);
-HRESULT WINAPI Main_DirectDraw_FlipToGDISurface(LPDIRECTDRAW7 iface);
-HRESULT WINAPI
-Main_DirectDraw_GetCaps(LPDIRECTDRAW7 iface, LPDDCAPS pDriverCaps,
- LPDDCAPS pHELCaps);
-HRESULT WINAPI
-Main_DirectDraw_GetFourCCCodes(LPDIRECTDRAW7 iface, LPDWORD pNumCodes,
- LPDWORD pCodes);
-HRESULT WINAPI
-Main_DirectDraw_GetGDISurface(LPDIRECTDRAW7 iface,
- LPDIRECTDRAWSURFACE7 *lplpGDIDDSSurface);
-HRESULT WINAPI
-Main_DirectDraw_GetMonitorFrequency(LPDIRECTDRAW7 iface,LPDWORD freq);
-HRESULT WINAPI
-Main_DirectDraw_GetScanLine(LPDIRECTDRAW7 iface, LPDWORD lpdwScanLine);
-HRESULT WINAPI
-Main_DirectDraw_GetSurfaceFromDC(LPDIRECTDRAW7 iface, HDC hdc,
- LPDIRECTDRAWSURFACE7 *lpDDS);
-HRESULT WINAPI
-Main_DirectDraw_GetVerticalBlankStatus(LPDIRECTDRAW7 iface, LPBOOL status);
-HRESULT WINAPI
-Main_DirectDraw_Initialize(LPDIRECTDRAW7 iface, LPGUID lpGuid);
-HRESULT WINAPI Main_DirectDraw_RestoreAllSurfaces(LPDIRECTDRAW7 iface);
-HRESULT WINAPI
-Main_DirectDraw_SetCooperativeLevel(LPDIRECTDRAW7 iface, HWND hwnd,
- DWORD cooplevel);
-HRESULT WINAPI
-Main_DirectDraw_SetDisplayMode(LPDIRECTDRAW7 iface, DWORD dwWidth,
- DWORD dwHeight, LONG lPitch,
- DWORD dwRefreshRate, DWORD dwFlags,
- const DDPIXELFORMAT* pixelformat);
-HRESULT WINAPI Main_DirectDraw_RestoreDisplayMode(LPDIRECTDRAW7 iface);
-HRESULT WINAPI
-Main_DirectDraw_WaitForVerticalBlank(LPDIRECTDRAW7 iface, DWORD dwFlags,
- HANDLE h);
-HRESULT WINAPI
-Main_DirectDraw_GetDisplayMode(LPDIRECTDRAW7 iface, LPDDSURFACEDESC2 pDDSD);
-HRESULT WINAPI
-Main_DirectDraw_GetAvailableVidMem(LPDIRECTDRAW7 iface,LPDDSCAPS2 ddscaps,
- LPDWORD total, LPDWORD free);
-HRESULT WINAPI Main_DirectDraw_TestCooperativeLevel(LPDIRECTDRAW7 iface);
-HRESULT WINAPI
-Main_DirectDraw_StartModeTest(LPDIRECTDRAW7 iface, LPSIZE pModes,
- DWORD dwNumModes, DWORD dwFlags);
-
-#endif
--- dlls/ddraw/ddraw/user.h 2003-07-28 20:36:35.000000000 +0100
+++ /dev/null 1970-01-01 01:00:00.000000000 +0100
@@ -1,64 +0,0 @@
-/*
- * Copyright 2000-2001 TransGaming Technologies Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef WINE_DDRAW_DDRAW_USER_H_INCLUDED
-#define WINE_DDRAW_DDRAW_USER_H_INCLUDED
-
-#define USER_DDRAW_PRIV(ddraw) ((User_DirectDrawImpl*)((ddraw)->private))
-#define USER_DDRAW_PRIV_VAR(name,ddraw) \
- User_DirectDrawImpl* name = USER_DDRAW_PRIV(ddraw)
-
-typedef struct
-{
- int empty;
- /* empty */
-} User_DirectDrawImpl_Part;
-
-typedef struct
-{
- User_DirectDrawImpl_Part user;
-} User_DirectDrawImpl;
-
-void User_DirectDraw_final_release(IDirectDrawImpl* This);
-HRESULT User_DirectDraw_create_primary(IDirectDrawImpl* This,
- const DDSURFACEDESC2* pDDSD,
- LPDIRECTDRAWSURFACE7* ppSurf,
- LPUNKNOWN pOuter);
-HRESULT User_DirectDraw_create_backbuffer(IDirectDrawImpl* This,
- const DDSURFACEDESC2* pDDSD,
- LPDIRECTDRAWSURFACE7* ppSurf,
- LPUNKNOWN pOuter,
- IDirectDrawSurfaceImpl* primary);
-HRESULT User_DirectDraw_Construct(IDirectDrawImpl *This, BOOL ex);
-HRESULT User_DirectDraw_Create(const GUID* pGUID, LPDIRECTDRAW7* pIface,
- IUnknown* pUnkOuter, BOOL ex);
-
-HRESULT WINAPI
-User_DirectDraw_EnumDisplayModes(LPDIRECTDRAW7 iface, DWORD dwFlags,
- LPDDSURFACEDESC2 pDDSD, LPVOID context,
- LPDDENUMMODESCALLBACK2 callback);
-HRESULT WINAPI
-User_DirectDraw_GetDeviceIdentifier(LPDIRECTDRAW7 iface,
- LPDDDEVICEIDENTIFIER2 pDDDI,
- DWORD dwFlags);
-HRESULT WINAPI
-User_DirectDraw_SetDisplayMode(LPDIRECTDRAW7 iface, DWORD dwWidth,
- DWORD dwHeight, DWORD dwBPP,
- DWORD dwRefreshRate, DWORD dwFlags);
-
-#endif
--- dlls/ddraw/ddraw/hal.h 2003-07-28 20:36:35.000000000 +0100
+++ /dev/null 1970-01-01 01:00:00.000000000 +0100
@@ -1,70 +0,0 @@
-/*
- * Copyright 2001 TransGaming Technologies, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef WINE_DDRAW_DDRAW_HAL_H_INCLUDED
-#define WINE_DDRAW_DDRAW_HAL_H_INCLUDED
-
-#define HAL_DDRAW_PRIV(ddraw) \
- ((HAL_DirectDrawImpl*)((ddraw)->private))
-#define HAL_DDRAW_PRIV_VAR(name,ddraw) \
- HAL_DirectDrawImpl* name = HAL_DDRAW_PRIV(ddraw)
-
-typedef struct
-{
- DWORD next_vofs;
-} HAL_DirectDrawImpl_Part;
-
-typedef struct
-{
- User_DirectDrawImpl_Part user;
- HAL_DirectDrawImpl_Part hal;
-} HAL_DirectDrawImpl;
-
-void HAL_DirectDraw_final_release(IDirectDrawImpl* This);
-HRESULT HAL_DirectDraw_create_primary(IDirectDrawImpl* This,
- const DDSURFACEDESC2* pDDSD,
- LPDIRECTDRAWSURFACE7* ppSurf,
- LPUNKNOWN pOuter);
-HRESULT HAL_DirectDraw_create_backbuffer(IDirectDrawImpl* This,
- const DDSURFACEDESC2* pDDSD,
- LPDIRECTDRAWSURFACE7* ppSurf,
- LPUNKNOWN pOuter,
- IDirectDrawSurfaceImpl* primary);
-HRESULT HAL_DirectDraw_create_texture(IDirectDrawImpl* This,
- const DDSURFACEDESC2* pDDSD,
- LPDIRECTDRAWSURFACE7* ppSurf,
- LPUNKNOWN pOuter,
- DWORD dwMipMapLevel);
-
-HRESULT HAL_DirectDraw_Construct(IDirectDrawImpl *This, BOOL ex);
-HRESULT HAL_DirectDraw_Create(const GUID* pGUID, LPDIRECTDRAW7* pIface,
- IUnknown* pUnkOuter, BOOL ex);
-
-
-HRESULT WINAPI
-HAL_DirectDraw_GetDeviceIdentifier(LPDIRECTDRAW7 iface,
- LPDDDEVICEIDENTIFIER2 pDDDI,
- DWORD dwFlags);
-HRESULT WINAPI
-HAL_DirectDraw_SetDisplayMode(LPDIRECTDRAW7 iface, DWORD dwWidth,
- DWORD dwHeight, DWORD dwBPP,
- DWORD dwRefreshRate, DWORD dwFlags);
-HRESULT WINAPI
-HAL_DirectDraw_RestoreDisplayMode(LPDIRECTDRAW7 iface);
-
-#endif
--- dlls/ddraw/dsurface/main.h 2005-05-28 14:49:23.000000000 +0100
+++ /dev/null 1970-01-01 01:00:00.000000000 +0100
@@ -1,249 +0,0 @@
-/*
- * Copyright 2000-2001 TransGaming Technologies Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef DDRAW_DSURFACE_MAIN_H_INCLUDED
-#define DDRAW_DSURFACE_MAIN_H_INCLUDED
-
-#include <stdarg.h>
-
-#include "windef.h"
-#include "winbase.h"
-#include "ddraw_private.h"
-
-/* Support for IDirectDrawSurface7::Set/Get/FreePrivateData. I don't think
- * anybody uses it for much so a good implementation is optional. */
-typedef struct PrivateData
-{
- struct PrivateData* next;
- struct PrivateData* prev;
-
- GUID tag;
- DWORD flags; /* DDSPD_* */
- DWORD uniqueness_value;
-
- union
- {
- LPVOID data;
- LPUNKNOWN object;
- } ptr;
-
- DWORD size;
-} PrivateData;
-
-extern const IDirectDrawGammaControlVtbl DDRAW_IDDGC_VTable;
-
-/* Non-interface functions */
-HRESULT
-Main_DirectDrawSurface_Construct(IDirectDrawSurfaceImpl* This,
- IDirectDrawImpl* pDD,
- const DDSURFACEDESC2* pDDSD);
-void Main_DirectDrawSurface_ForceDestroy(IDirectDrawSurfaceImpl* This);
-
-void
-Main_DirectDrawSurface_final_release(IDirectDrawSurfaceImpl* This);
-HRESULT
-Main_DirectDrawSurface_late_allocate(IDirectDrawSurfaceImpl* This);
-BOOL
-Main_DirectDrawSurface_attach(IDirectDrawSurfaceImpl *This,
- IDirectDrawSurfaceImpl *to);
-BOOL Main_DirectDrawSurface_detach(IDirectDrawSurfaceImpl *This);
-void
-Main_DirectDrawSurface_lock_update(IDirectDrawSurfaceImpl* This,
- LPCRECT pRect, DWORD dwFlags);
-void
-Main_DirectDrawSurface_unlock_update(IDirectDrawSurfaceImpl* This,
- LPCRECT pRect);
-void
-Main_DirectDrawSurface_lose_surface(IDirectDrawSurfaceImpl* This);
-void
-Main_DirectDrawSurface_set_palette(IDirectDrawSurfaceImpl* This,
- IDirectDrawPaletteImpl* pal);
-void
-Main_DirectDrawSurface_update_palette(IDirectDrawSurfaceImpl* This,
- IDirectDrawPaletteImpl* pal,
- DWORD dwStart, DWORD dwCount,
- LPPALETTEENTRY palent);
-HWND
-Main_DirectDrawSurface_get_display_window(IDirectDrawSurfaceImpl* This);
-
-HRESULT
-Main_DirectDrawSurface_get_gamma_ramp(IDirectDrawSurfaceImpl* This,
- DWORD dwFlags,
- LPDDGAMMARAMP lpGammaRamp);
-HRESULT
-Main_DirectDrawSurface_set_gamma_ramp(IDirectDrawSurfaceImpl* This,
- DWORD dwFlags,
- LPDDGAMMARAMP lpGammaRamp);
-
-BOOL Main_DirectDrawSurface_flip_data(IDirectDrawSurfaceImpl* front,
- IDirectDrawSurfaceImpl* back,
- DWORD dwFlags);
-
-#define CHECK_LOST(This) \
- do { \
- if (This->lost) return DDERR_SURFACELOST; \
- } while (0)
-
-#define CHECK_TEXTURE(This) \
- do { \
- if (!(This->surface_desc.ddsCaps.dwCaps2 \
- & DDSCAPS2_TEXTUREMANAGE)) \
- return DDERR_INVALIDOBJECT; \
- } while (0)
-
-#define LOCK_OBJECT(This) do { } while (0)
-#define UNLOCK_OBJECT(This) do { } while (0)
-
-/* IDirectDrawSurface7 (partial) implementation */
-ULONG WINAPI
-Main_DirectDrawSurface_AddRef(LPDIRECTDRAWSURFACE7 iface);
-ULONG WINAPI
-Main_DirectDrawSurface_Release(LPDIRECTDRAWSURFACE7 iface);
-HRESULT WINAPI
-Main_DirectDrawSurface_QueryInterface(LPDIRECTDRAWSURFACE7 iface, REFIID riid,
- LPVOID* ppObj);
-HRESULT WINAPI
-Main_DirectDrawSurface_AddAttachedSurface(LPDIRECTDRAWSURFACE7 iface,
- LPDIRECTDRAWSURFACE7 pAttach);
-HRESULT WINAPI
-Main_DirectDrawSurface_AddOverlayDirtyRect(LPDIRECTDRAWSURFACE7 iface,
- LPRECT pRect);
-HRESULT WINAPI
-Main_DirectDrawSurface_BltBatch(LPDIRECTDRAWSURFACE7 iface,
- LPDDBLTBATCH pBatch, DWORD dwCount,
- DWORD dwFlags);
-HRESULT WINAPI
-Main_DirectDrawSurface_ChangeUniquenessValue(LPDIRECTDRAWSURFACE7 iface);
-HRESULT WINAPI
-Main_DirectDrawSurface_DeleteAttachedSurface(LPDIRECTDRAWSURFACE7 iface,
- DWORD dwFlags,
- LPDIRECTDRAWSURFACE7 pAttach);
-HRESULT WINAPI
-Main_DirectDrawSurface_EnumAttachedSurfaces(LPDIRECTDRAWSURFACE7 iface,
- LPVOID context,
- LPDDENUMSURFACESCALLBACK7 cb);
-HRESULT WINAPI
-Main_DirectDrawSurface_EnumOverlayZOrders(LPDIRECTDRAWSURFACE7 iface,
- DWORD dwFlags, LPVOID context,
- LPDDENUMSURFACESCALLBACK7 cb);
-HRESULT WINAPI
-Main_DirectDrawSurface_Flip(LPDIRECTDRAWSURFACE7 iface,
- LPDIRECTDRAWSURFACE7 override, DWORD dwFlags);
-HRESULT WINAPI
-Main_DirectDrawSurface_FreePrivateData(LPDIRECTDRAWSURFACE7 iface,
- REFGUID tag);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetAttachedSurface(LPDIRECTDRAWSURFACE7 iface,
- LPDDSCAPS2 pCaps,
- LPDIRECTDRAWSURFACE7* ppSurface);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetBltStatus(LPDIRECTDRAWSURFACE7 iface,
- DWORD dwFlags);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetCaps(LPDIRECTDRAWSURFACE7 iface,
- LPDDSCAPS2 pCaps);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetClipper(LPDIRECTDRAWSURFACE7 iface,
- LPDIRECTDRAWCLIPPER* ppClipper);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetColorKey(LPDIRECTDRAWSURFACE7 iface,
- DWORD dwFlags, LPDDCOLORKEY pCKey);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetDC(LPDIRECTDRAWSURFACE7 iface, HDC *phDC);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetDDInterface(LPDIRECTDRAWSURFACE7 iface,
- LPVOID* pDD);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetFlipStatus(LPDIRECTDRAWSURFACE7 iface,
- DWORD dwFlags);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetLOD(LPDIRECTDRAWSURFACE7 iface,
- LPDWORD pdwMaxLOD);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetOverlayPosition(LPDIRECTDRAWSURFACE7 iface,
- LPLONG pX, LPLONG pY);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetPalette(LPDIRECTDRAWSURFACE7 iface,
- LPDIRECTDRAWPALETTE* ppPalette);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetPixelFormat(LPDIRECTDRAWSURFACE7 iface,
- LPDDPIXELFORMAT pDDPixelFormat);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetPriority(LPDIRECTDRAWSURFACE7 iface,
- LPDWORD pdwPriority);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetPrivateData(LPDIRECTDRAWSURFACE7 iface, REFGUID tag,
- LPVOID pBuffer, LPDWORD pcbBufferSize);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetSurfaceDesc(LPDIRECTDRAWSURFACE7 iface,
- LPDDSURFACEDESC2 pDDSD);
-HRESULT WINAPI
-Main_DirectDrawSurface_GetUniquenessValue(LPDIRECTDRAWSURFACE7 iface,
- LPDWORD pValue);
-HRESULT WINAPI
-Main_DirectDrawSurface_Initialize(LPDIRECTDRAWSURFACE7 iface,
- LPDIRECTDRAW pDD, LPDDSURFACEDESC2 pDDSD);
-HRESULT WINAPI
-Main_DirectDrawSurface_IsLost(LPDIRECTDRAWSURFACE7 iface);
-HRESULT WINAPI
-Main_DirectDrawSurface_Lock(LPDIRECTDRAWSURFACE7 iface, LPRECT prect,
- LPDDSURFACEDESC2 pDDSD, DWORD flags, HANDLE h);
-HRESULT WINAPI
-Main_DirectDrawSurface_PageLock(LPDIRECTDRAWSURFACE7 iface, DWORD dwFlags);
-HRESULT WINAPI
-Main_DirectDrawSurface_PageUnlock(LPDIRECTDRAWSURFACE7 iface, DWORD dwFlags);
-HRESULT WINAPI
-Main_DirectDrawSurface_ReleaseDC(LPDIRECTDRAWSURFACE7 iface, HDC hDC);
-HRESULT WINAPI
-Main_DirectDrawSurface_SetClipper(LPDIRECTDRAWSURFACE7 iface,
- LPDIRECTDRAWCLIPPER pDDClipper);
-HRESULT WINAPI
-Main_DirectDrawSurface_SetColorKey(LPDIRECTDRAWSURFACE7 iface,
- DWORD dwFlags, LPDDCOLORKEY pCKey);
-HRESULT WINAPI
-Main_DirectDrawSurface_SetLOD(LPDIRECTDRAWSURFACE7 iface, DWORD dwMaxLOD);
-HRESULT WINAPI
-Main_DirectDrawSurface_SetOverlayPosition(LPDIRECTDRAWSURFACE7 iface,
- LONG X, LONG Y);
-HRESULT WINAPI
-Main_DirectDrawSurface_SetPalette(LPDIRECTDRAWSURFACE7 iface,
- LPDIRECTDRAWPALETTE pPalette);
-HRESULT WINAPI
-Main_DirectDrawSurface_SetPriority(LPDIRECTDRAWSURFACE7 iface,
- DWORD dwPriority);
-HRESULT WINAPI
-Main_DirectDrawSurface_SetPrivateData(LPDIRECTDRAWSURFACE7 iface,
- REFGUID tag, LPVOID pData,
- DWORD cbSize, DWORD dwFlags);
-HRESULT WINAPI
-Main_DirectDrawSurface_Unlock(LPDIRECTDRAWSURFACE7 iface, LPRECT pRect);
-HRESULT WINAPI
-Main_DirectDrawSurface_UpdateOverlay(LPDIRECTDRAWSURFACE7 iface,
- LPRECT pSrcRect,
- LPDIRECTDRAWSURFACE7 pDstSurface,
- LPRECT pDstRect, DWORD dwFlags,
- LPDDOVERLAYFX pFX);
-HRESULT WINAPI
-Main_DirectDrawSurface_UpdateOverlayDisplay(LPDIRECTDRAWSURFACE7 iface,
- DWORD dwFlags);
-HRESULT WINAPI
-Main_DirectDrawSurface_UpdateOverlayZOrder(LPDIRECTDRAWSURFACE7 iface,
- DWORD dwFlags,
- LPDIRECTDRAWSURFACE7 pDDSRef);
-
-#endif
--- dlls/ddraw/dsurface/dib.h 2003-07-28 20:36:35.000000000 +0100
+++ /dev/null 1970-01-01 01:00:00.000000000 +0100
@@ -1,84 +0,0 @@
-/*
- * Copyright 2000-2001 TransGaming Technologies Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef DDRAW_DSURFACE_DIB_H_INCLUDED
-#define DDRAW_DSURFACE_DIB_H_INCLUDED
-
-#define DIB_PRIV(surf) ((DIB_DirectDrawSurfaceImpl*)((surf)->private))
-
-#define DIB_PRIV_VAR(name, surf) \
- DIB_DirectDrawSurfaceImpl* name = DIB_PRIV(surf)
-
-
-struct DIB_DirectDrawSurfaceImpl_Part
-{
- HBITMAP DIBsection;
- void* bitmap_data;
- HGDIOBJ holdbitmap;
- BOOL client_memory;
- DWORD d3d_data[4]; /* room for Direct3D driver data */
-};
-
-typedef struct
-{
- struct DIB_DirectDrawSurfaceImpl_Part dib;
-} DIB_DirectDrawSurfaceImpl;
-
-HRESULT
-DIB_DirectDrawSurface_Construct(IDirectDrawSurfaceImpl *This,
- IDirectDrawImpl *pDD,
- const DDSURFACEDESC2 *pDDSD);
-HRESULT
-DIB_DirectDrawSurface_Create(IDirectDrawImpl *pDD,
- const DDSURFACEDESC2 *pDDSD,
- LPDIRECTDRAWSURFACE7 *ppSurf,
- IUnknown *pUnkOuter);
-
-void DIB_DirectDrawSurface_final_release(IDirectDrawSurfaceImpl* This);
-BOOL DIB_DirectDrawSurface_flip_data(IDirectDrawSurfaceImpl* front,
- IDirectDrawSurfaceImpl* back,
- DWORD dwFlags);
-
-void DIB_DirectDrawSurface_set_palette(IDirectDrawSurfaceImpl* This,
- IDirectDrawPaletteImpl* pal);
-void DIB_DirectDrawSurface_update_palette(IDirectDrawSurfaceImpl* This,
- IDirectDrawPaletteImpl* pal,
- DWORD dwStart, DWORD dwCount,
- LPPALETTEENTRY palent);
-
-HRESULT DIB_DirectDrawSurface_get_dc(IDirectDrawSurfaceImpl* This, HDC* phDC);
-HRESULT DIB_DirectDrawSurface_release_dc(IDirectDrawSurfaceImpl* This,HDC hDC);
-
-HRESULT DIB_DirectDrawSurface_alloc_dc(IDirectDrawSurfaceImpl* This,HDC* phDC);
-HRESULT DIB_DirectDrawSurface_free_dc(IDirectDrawSurfaceImpl* This, HDC hDC);
-
-
-HRESULT WINAPI
-DIB_DirectDrawSurface_Blt(LPDIRECTDRAWSURFACE7 iface, LPRECT prcDest,
- LPDIRECTDRAWSURFACE7 pSrcSurf, LPRECT prcSrc,
- DWORD dwFlags, LPDDBLTFX pBltFx);
-HRESULT WINAPI
-DIB_DirectDrawSurface_BltFast(LPDIRECTDRAWSURFACE7 iface, DWORD dwX,
- DWORD dwY, LPDIRECTDRAWSURFACE7 pSrcSurf,
- LPRECT prcSrc, DWORD dwTrans);
-HRESULT WINAPI
-DIB_DirectDrawSurface_Restore(LPDIRECTDRAWSURFACE7 iface);
-HRESULT WINAPI
-DIB_DirectDrawSurface_SetSurfaceDesc(LPDIRECTDRAWSURFACE7 iface,
- LPDDSURFACEDESC2 pDDSD, DWORD dwFlags);
-#endif
--- dlls/ddraw/dsurface/user.h 2003-07-28 20:36:35.000000000 +0100
+++ /dev/null 1970-01-01 01:00:00.000000000 +0100
@@ -1,85 +0,0 @@
-/*
- * Copyright 2000-2001 TransGaming Technologies Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef DDRAW_DSURFACE_USER_H_INCLUDED
-#define DDRAW_DSURFACE_USER_H_INCLUDED
-
-#define USER_PRIV(surf) ((User_DirectDrawSurfaceImpl*)((surf)->private))
-
-#define USER_PRIV_VAR(name,surf) \
- User_DirectDrawSurfaceImpl* name = USER_PRIV(surf)
-
-struct User_DirectDrawSurfaceImpl_Part
-{
- HWND window;
- HDC cached_dc;
- HANDLE update_thread, update_event, refresh_event;
- volatile int wait_count, in_refresh;
- CRITICAL_SECTION crit;
-};
-
-typedef struct
-{
- struct DIB_DirectDrawSurfaceImpl_Part dib;
- struct User_DirectDrawSurfaceImpl_Part user;
-} User_DirectDrawSurfaceImpl;
-
-HRESULT
-User_DirectDrawSurface_Construct(IDirectDrawSurfaceImpl* This,
- IDirectDrawImpl* pDD,
- const DDSURFACEDESC2* pDDSD);
-
-HRESULT
-User_DirectDrawSurface_Create(IDirectDrawImpl *pDD,
- const DDSURFACEDESC2 *pDDSD,
- LPDIRECTDRAWSURFACE7 *ppSurf,
- IUnknown *pUnkOuter);
-
-void User_DirectDrawSurface_final_release(IDirectDrawSurfaceImpl* This);
-
-void User_DirectDrawSurface_lock_update(IDirectDrawSurfaceImpl* This,
- LPCRECT pRect, DWORD dwFlags);
-void User_DirectDrawSurface_unlock_update(IDirectDrawSurfaceImpl* This,
- LPCRECT pRect);
-void User_DirectDrawSurface_set_palette(IDirectDrawSurfaceImpl* This,
- IDirectDrawPaletteImpl* pal);
-void User_DirectDrawSurface_update_palette(IDirectDrawSurfaceImpl* This,
- IDirectDrawPaletteImpl* pal,
- DWORD dwStart, DWORD dwCount,
- LPPALETTEENTRY palent);
-HRESULT User_DirectDrawSurface_duplicate_surface(IDirectDrawSurfaceImpl* This,
- LPDIRECTDRAWSURFACE7* ppDup);
-BOOL User_DirectDrawSurface_flip_data(IDirectDrawSurfaceImpl* front,
- IDirectDrawSurfaceImpl* back,
- DWORD dwFlags);
-void User_DirectDrawSurface_flip_update(IDirectDrawSurfaceImpl* This,
- DWORD dwFlags);
-HWND User_DirectDrawSurface_get_display_window(IDirectDrawSurfaceImpl* This);
-
-HRESULT User_DirectDrawSurface_get_dc(IDirectDrawSurfaceImpl* This, HDC* phDC);
-HRESULT User_DirectDrawSurface_release_dc(IDirectDrawSurfaceImpl* This,
- HDC hDC);
-
-HRESULT User_DirectDrawSurface_get_gamma_ramp(IDirectDrawSurfaceImpl* This,
- DWORD dwFlags,
- LPDDGAMMARAMP lpGammaRamp);
-HRESULT User_DirectDrawSurface_set_gamma_ramp(IDirectDrawSurfaceImpl* This,
- DWORD dwFlags,
- LPDDGAMMARAMP lpGammaRamp);
-
-#endif
--- dlls/ddraw/dsurface/hal.h 2003-07-28 20:36:35.000000000 +0100
+++ /dev/null 1970-01-01 01:00:00.000000000 +0100
@@ -1,74 +0,0 @@
-/*
- * Copyright 2000-2001 TransGaming Technologies Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef DDRAW_DSURFACE_HAL_H_INCLUDED
-#define DDRAW_DSURFACE_HAL_H_INCLUDED
-
-#define HAL_PRIV(surf) ((HAL_DirectDrawSurfaceImpl*)((surf)->private))
-
-#define HAL_PRIV_VAR(name,surf) \
- HAL_DirectDrawSurfaceImpl* name = HAL_PRIV(surf)
-
-struct HAL_DirectDrawSurfaceImpl_Part
-{
- DWORD need_late;
- LPVOID fb_addr;
- DWORD fb_pitch, fb_vofs;
-};
-
-typedef struct
-{
- struct DIB_DirectDrawSurfaceImpl_Part dib;
- struct User_DirectDrawSurfaceImpl_Part user;
- struct HAL_DirectDrawSurfaceImpl_Part hal;
-} HAL_DirectDrawSurfaceImpl;
-
-HRESULT
-HAL_DirectDrawSurface_Construct(IDirectDrawSurfaceImpl* This,
- IDirectDrawImpl* pDD,
- const DDSURFACEDESC2* pDDSD);
-
-HRESULT
-HAL_DirectDrawSurface_Create(IDirectDrawImpl *pDD,
- const DDSURFACEDESC2 *pDDSD,
- LPDIRECTDRAWSURFACE7 *ppSurf,
- IUnknown *pUnkOuter);
-
-void HAL_DirectDrawSurface_final_release(IDirectDrawSurfaceImpl* This);
-HRESULT HAL_DirectDrawSurface_late_allocate(IDirectDrawSurfaceImpl* This);
-
-void HAL_DirectDrawSurface_set_palette(IDirectDrawSurfaceImpl* This,
- IDirectDrawPaletteImpl* pal);
-void HAL_DirectDrawSurface_update_palette(IDirectDrawSurfaceImpl* This,
- IDirectDrawPaletteImpl* pal,
- DWORD dwStart, DWORD dwCount,
- LPPALETTEENTRY palent);
-HRESULT HAL_DirectDrawSurface_duplicate_surface(IDirectDrawSurfaceImpl* This,
- LPDIRECTDRAWSURFACE7* ppDup);
-void HAL_DirectDrawSurface_lock_update(IDirectDrawSurfaceImpl* This,
- LPCRECT pRect, DWORD dwFlags);
-void HAL_DirectDrawSurface_unlock_update(IDirectDrawSurfaceImpl* This,
- LPCRECT pRect);
-BOOL HAL_DirectDrawSurface_flip_data(IDirectDrawSurfaceImpl* front,
- IDirectDrawSurfaceImpl* back,
- DWORD dwFlags);
-void HAL_DirectDrawSurface_flip_update(IDirectDrawSurfaceImpl* This,
- DWORD dwFlags);
-HWND HAL_DirectDrawSurface_get_display_window(IDirectDrawSurfaceImpl* This);
-
-#endif
--- dlls/ddraw/dsurface/fakezbuffer.h 2003-09-18 20:33:48.000000000 +0100
+++ /dev/null 1970-01-01 01:00:00.000000000 +0100
@@ -1,45 +0,0 @@
-/*
- * Copyright 200 TransGaming Technologies Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef DDRAW_DSURFACE_FAKEZBUFFER_H_INCLUDED
-#define DDRAW_DSURFACE_FAKEZBUFFER_H_INCLUDED
-
-typedef struct
-{
- BOOLEAN in_memory;
-} FakeZBuffer_DirectDrawSurfaceImpl;
-
-HRESULT
-FakeZBuffer_DirectDrawSurface_Construct(IDirectDrawSurfaceImpl* This,
- IDirectDrawImpl* pDD,
- const DDSURFACEDESC2* pDDSD);
-
-HRESULT FakeZBuffer_DirectDrawSurface_Create(IDirectDrawImpl* pDD,
- const DDSURFACEDESC2* pDDSD,
- LPDIRECTDRAWSURFACE7* ppSurf,
- IUnknown* pUnkOuter);
-
-void
-FakeZBuffer_DirectDrawSurface_final_release(IDirectDrawSurfaceImpl* This);
-
-HRESULT
-FakeZBuffer_DirectDrawSurface_duplicate_surface(IDirectDrawSurfaceImpl* This,
- LPDIRECTDRAWSURFACE7* ppDup);
-
-
-#endif
--- dlls/ddraw/dsurface/thunks.h 2005-05-28 14:49:23.000000000 +0100
+++ /dev/null 1970-01-01 01:00:00.000000000 +0100
@@ -1,24 +0,0 @@
-/*
- * Copyright 2000 TransGaming Technologies Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef DDRAW_DSURFACE_THUNKS_H_INCLUDED
-#define DDRAW_DSURFACE_THUNKS_H_INCLUDED
-
-extern const IDirectDrawSurface3Vtbl DDRAW_IDDS3_Thunk_VTable;
-
-#endif
--- dlls/ddraw/dsurface/wndproc.h 2003-07-28 20:36:35.000000000 +0100
+++ /dev/null 1970-01-01 01:00:00.000000000 +0100
@@ -1,25 +0,0 @@
-/*
- * Copyright 2000 TransGaming Technologies Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef DDRAW_DSURFACE_WNDPROC_H_INCLUDED
-#define DDRAW_DSURFACE_WNDPROC_H_INCLUDED
-
-void DirectDrawSurface_RegisterClass(void);
-void DirectDrawSurface_UnregisterClass(void);
-
-#endif
Index: dlls/ddraw/dclipper/main.c
===================================================================
RCS file: /home/wine/wine/dlls/ddraw/dclipper/main.c,v
retrieving revision 1.17
diff -u -r1.17 main.c
--- dlls/ddraw/dclipper/main.c 27 May 2005 20:17:36 -0000 1.17
+++ dlls/ddraw/dclipper/main.c 1 Jun 2005 19:29:56 -0000
@@ -33,8 +33,6 @@
#include "winerror.h"
#include "ddraw_private.h"
-#include "dclipper/main.h"
-#include "ddraw/main.h"
#include "wine/debug.h"
Index: dlls/ddraw/dpalette/hal.c
===================================================================
RCS file: /home/wine/wine/dlls/ddraw/dpalette/hal.c,v
retrieving revision 1.6
diff -u -r1.6 hal.c
--- dlls/ddraw/dpalette/hal.c 27 May 2005 20:17:36 -0000 1.6
+++ dlls/ddraw/dpalette/hal.c 1 Jun 2005 19:29:58 -0000
@@ -27,9 +27,6 @@
#define CONST_VTABLE
#include "ddraw_private.h"
-#include "dpalette/main.h"
-#include "dpalette/hal.h"
-#include "ddraw/main.h"
WINE_DEFAULT_DEBUG_CHANNEL(ddraw);
Index: dlls/ddraw/dpalette/main.c
===================================================================
RCS file: /home/wine/wine/dlls/ddraw/dpalette/main.c,v
retrieving revision 1.13
diff -u -r1.13 main.c
--- dlls/ddraw/dpalette/main.c 27 May 2005 20:17:36 -0000 1.13
+++ dlls/ddraw/dpalette/main.c 1 Jun 2005 19:29:58 -0000
@@ -28,8 +28,6 @@
#define CONST_VTABLE
#include "ddraw_private.h"
-#include "dpalette/main.h"
-#include "ddraw/main.h"
WINE_DEFAULT_DEBUG_CHANNEL(ddraw);
? dlls/ddraw/ddraw/.user.c.swp
Index: dlls/ddraw/ddraw/hal.c
===================================================================
RCS file: /home/wine/wine/dlls/ddraw/ddraw/hal.c,v
retrieving revision 1.18
diff -u -r1.18 hal.c
--- dlls/ddraw/ddraw/hal.c 27 May 2005 20:17:36 -0000 1.18
+++ dlls/ddraw/ddraw/hal.c 1 Jun 2005 19:30:02 -0000
@@ -34,16 +34,6 @@
#include "d3dhal.h"
#include "ddraw_private.h"
-#include "ddraw/main.h"
-#include "ddraw/user.h"
-#include "ddraw/hal.h"
-#include "dclipper/main.h"
-#include "dpalette/main.h"
-#include "dpalette/hal.h"
-#include "dsurface/main.h"
-#include "dsurface/dib.h"
-#include "dsurface/user.h"
-#include "dsurface/hal.h"
WINE_DEFAULT_DEBUG_CHANNEL(ddraw);
Index: dlls/ddraw/ddraw/main.c
===================================================================
RCS file: /home/wine/wine/dlls/ddraw/ddraw/main.c,v
retrieving revision 1.61
diff -u -r1.61 main.c
--- dlls/ddraw/ddraw/main.c 30 May 2005 11:11:34 -0000 1.61
+++ dlls/ddraw/ddraw/main.c 1 Jun 2005 19:30:04 -0000
@@ -68,12 +68,6 @@
#include "ddraw_private.h"
#include "mesa_private.h" /* To have the D3D creation function */
-#include "ddraw/main.h"
-#include "dclipper/main.h"
-#include "dpalette/main.h"
-#include "dsurface/main.h"
-#include "dsurface/dib.h"
-#include "dsurface/fakezbuffer.h"
WINE_DEFAULT_DEBUG_CHANNEL(ddraw);
Index: dlls/ddraw/ddraw/user.c
===================================================================
RCS file: /home/wine/wine/dlls/ddraw/ddraw/user.c,v
retrieving revision 1.26
diff -u -r1.26 user.c
--- dlls/ddraw/ddraw/user.c 27 May 2005 20:17:36 -0000 1.26
+++ dlls/ddraw/ddraw/user.c 1 Jun 2005 19:30:05 -0000
@@ -34,13 +34,6 @@
#include "winuser.h"
#include "ddraw.h"
#include "ddraw_private.h"
-#include "ddraw/main.h"
-#include "ddraw/user.h"
-#include "dclipper/main.h"
-#include "dpalette/main.h"
-#include "dsurface/main.h"
-#include "dsurface/dib.h"
-#include "dsurface/user.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(ddraw);
Index: dlls/ddraw/dsurface/dib.c
===================================================================
RCS file: /home/wine/wine/dlls/ddraw/dsurface/dib.c,v
retrieving revision 1.50
diff -u -r1.50 dib.c
--- dlls/ddraw/dsurface/dib.c 27 May 2005 20:17:35 -0000 1.50
+++ dlls/ddraw/dsurface/dib.c 1 Jun 2005 19:30:10 -0000
@@ -34,8 +34,6 @@
#include "wine/debug.h"
#include "ddraw_private.h"
#include "d3d_private.h"
-#include "dsurface/main.h"
-#include "dsurface/dib.h"
WINE_DEFAULT_DEBUG_CHANNEL(ddraw);
Index: dlls/ddraw/dsurface/fakezbuffer.c
===================================================================
RCS file: /home/wine/wine/dlls/ddraw/dsurface/fakezbuffer.c,v
retrieving revision 1.18
diff -u -r1.18 fakezbuffer.c
--- dlls/ddraw/dsurface/fakezbuffer.c 27 May 2005 20:17:35 -0000 1.18
+++ dlls/ddraw/dsurface/fakezbuffer.c 1 Jun 2005 19:30:11 -0000
@@ -44,8 +44,6 @@
#include "ddcomimpl.h"
#include "ddraw_private.h"
#include "d3d_private.h"
-#include "dsurface/main.h"
-#include "dsurface/fakezbuffer.h"
WINE_DEFAULT_DEBUG_CHANNEL(ddraw);
Index: dlls/ddraw/dsurface/gamma.c
===================================================================
RCS file: /home/wine/wine/dlls/ddraw/dsurface/gamma.c,v
retrieving revision 1.7
diff -u -r1.7 gamma.c
--- dlls/ddraw/dsurface/gamma.c 27 May 2005 20:17:35 -0000 1.7
+++ dlls/ddraw/dsurface/gamma.c 1 Jun 2005 19:30:11 -0000
@@ -27,7 +27,6 @@
#include "wine/debug.h"
#include "ddraw_private.h"
-#include "dsurface/main.h"
WINE_DEFAULT_DEBUG_CHANNEL(ddraw);
Index: dlls/ddraw/dsurface/hal.c
===================================================================
RCS file: /home/wine/wine/dlls/ddraw/dsurface/hal.c,v
retrieving revision 1.11
diff -u -r1.11 hal.c
--- dlls/ddraw/dsurface/hal.c 27 May 2005 20:17:35 -0000 1.11
+++ dlls/ddraw/dsurface/hal.c 1 Jun 2005 19:30:12 -0000
@@ -29,12 +29,6 @@
#include "wine/debug.h"
#include "ddraw_private.h"
-#include "ddraw/user.h"
-#include "ddraw/hal.h"
-#include "dsurface/main.h"
-#include "dsurface/dib.h"
-#include "dsurface/user.h"
-#include "dsurface/hal.h"
WINE_DEFAULT_DEBUG_CHANNEL(ddraw);
Index: dlls/ddraw/dsurface/main.c
===================================================================
RCS file: /home/wine/wine/dlls/ddraw/dsurface/main.c,v
retrieving revision 1.66
diff -u -r1.66 main.c
--- dlls/ddraw/dsurface/main.c 27 May 2005 20:17:35 -0000 1.66
+++ dlls/ddraw/dsurface/main.c 1 Jun 2005 19:30:15 -0000
@@ -33,9 +33,6 @@
#include "mesa_private.h"
#include "wine/debug.h"
#include "ddraw_private.h"
-#include "dsurface/main.h"
-#include "ddraw/main.h"
-#include "dsurface/thunks.h"
WINE_DEFAULT_DEBUG_CHANNEL(ddraw);
WINE_DECLARE_DEBUG_CHANNEL(ddraw_flip);
Index: dlls/ddraw/dsurface/thunks.c
===================================================================
RCS file: /home/wine/wine/dlls/ddraw/dsurface/thunks.c,v
retrieving revision 1.11
diff -u -r1.11 thunks.c
--- dlls/ddraw/dsurface/thunks.c 27 May 2005 20:17:35 -0000 1.11
+++ dlls/ddraw/dsurface/thunks.c 1 Jun 2005 19:30:16 -0000
@@ -27,8 +27,7 @@
#include "ddraw.h"
#include "winerror.h"
-#include "dsurface/main.h"
-#include "dsurface/thunks.h"
+#include "ddraw_private.h"
#include "ddcomimpl.h"
#define CONVERT(pdds) COM_INTERFACE_CAST(IDirectDrawSurfaceImpl, \
Index: dlls/ddraw/dsurface/user.c
===================================================================
RCS file: /home/wine/wine/dlls/ddraw/dsurface/user.c,v
retrieving revision 1.19
diff -u -r1.19 user.c
--- dlls/ddraw/dsurface/user.c 27 May 2005 20:17:35 -0000 1.19
+++ dlls/ddraw/dsurface/user.c 1 Jun 2005 19:30:18 -0000
@@ -28,10 +28,6 @@
#include "winerror.h"
#include "wine/debug.h"
#include "ddraw_private.h"
-#include "dsurface/main.h"
-#include "dsurface/dib.h"
-#include "dsurface/user.h"
-#include "dsurface/wndproc.h"
WINE_DEFAULT_DEBUG_CHANNEL(ddraw);
Index: dlls/ddraw/dsurface/wndproc.c
===================================================================
RCS file: /home/wine/wine/dlls/ddraw/dsurface/wndproc.c,v
retrieving revision 1.8
diff -u -r1.8 wndproc.c
--- dlls/ddraw/dsurface/wndproc.c 10 Sep 2003 03:56:48 -0000 1.8
+++ dlls/ddraw/dsurface/wndproc.c 1 Jun 2005 19:30:19 -0000
@@ -26,7 +26,6 @@
#include "winerror.h"
#include "ddraw_private.h"
-#include "dsurface/wndproc.h"
#include "wine/debug.h"
Index: dlls/ddraw/ddraw_private.h
===================================================================
RCS file: /home/wine/wine/dlls/ddraw/ddraw_private.h,v
retrieving revision 1.46
diff -u -r1.46 ddraw_private.h
--- dlls/ddraw/ddraw_private.h 7 Mar 2005 12:23:34 -0000 1.46
+++ dlls/ddraw/ddraw_private.h 1 Jun 2005 19:30:23 -0000
@@ -440,4 +440,698 @@
extern void DDRAW_dump_flags_(DWORD flags, const flag_info* names, size_t num_names, int newline);
extern void DDRAW_dump_members(DWORD flags, const void* data, const member_info* mems, size_t num_mems);
+void DirectDrawSurface_RegisterClass(void);
+void DirectDrawSurface_UnregisterClass(void);
+
+extern const IDirectDrawSurface3Vtbl DDRAW_IDDS3_Thunk_VTable;
+
+/*****************************************************************************
+ * IDirectDrawClipper declarations
+ */
+HRESULT WINAPI DirectDrawCreateClipper(DWORD dwFlags,
+ LPDIRECTDRAWCLIPPER* ppClipper,
+ LPUNKNOWN pUnkOuter);
+HRESULT DDRAW_CreateClipper(IUnknown* pUnkOuter, REFIID riid, LPVOID* ppObj);
+void Main_DirectDrawClipper_ForceDestroy(IDirectDrawClipperImpl* This);
+
+HRESULT WINAPI
+Main_DirectDrawClipper_SetHwnd(LPDIRECTDRAWCLIPPER iface, DWORD dwFlags,
+ HWND hWnd);
+ULONG WINAPI Main_DirectDrawClipper_Release(LPDIRECTDRAWCLIPPER iface);
+HRESULT WINAPI
+Main_DirectDrawClipper_GetClipList(LPDIRECTDRAWCLIPPER iface, LPRECT lpRect,
+ LPRGNDATA lpClipList, LPDWORD lpdwSize);
+HRESULT WINAPI
+Main_DirectDrawClipper_SetClipList(LPDIRECTDRAWCLIPPER iface,LPRGNDATA lprgn,
+ DWORD dwFlag);
+HRESULT WINAPI
+Main_DirectDrawClipper_QueryInterface(LPDIRECTDRAWCLIPPER iface, REFIID riid,
+ LPVOID* ppvObj);
+ULONG WINAPI Main_DirectDrawClipper_AddRef( LPDIRECTDRAWCLIPPER iface );
+HRESULT WINAPI
+Main_DirectDrawClipper_GetHWnd(LPDIRECTDRAWCLIPPER iface, HWND* hWndPtr);
+HRESULT WINAPI
+Main_DirectDrawClipper_Initialize(LPDIRECTDRAWCLIPPER iface, LPDIRECTDRAW lpDD,
+ DWORD dwFlags);
+HRESULT WINAPI
+Main_DirectDrawClipper_IsClipListChanged(LPDIRECTDRAWCLIPPER iface,
+ BOOL* lpbChanged);
+
+/*****************************************************************************
+ * IDirectDrawPalette MAIN declarations
+ */
+HRESULT Main_DirectDrawPalette_Construct(IDirectDrawPaletteImpl* This,
+ IDirectDrawImpl* pDD, DWORD dwFlags);
+void Main_DirectDrawPalette_final_release(IDirectDrawPaletteImpl* This);
+
+HRESULT Main_DirectDrawPalette_Create(IDirectDrawImpl* pDD, DWORD dwFlags,
+ LPDIRECTDRAWPALETTE* ppPalette,
+ LPUNKNOWN pUnkOuter);
+void Main_DirectDrawPalette_ForceDestroy(IDirectDrawPaletteImpl* This);
+
+DWORD Main_DirectDrawPalette_Size(DWORD dwFlags);
+
+HRESULT WINAPI
+Main_DirectDrawPalette_GetEntries(LPDIRECTDRAWPALETTE iface, DWORD dwFlags,
+ DWORD dwStart, DWORD dwCount,
+ LPPALETTEENTRY palent);
+HRESULT WINAPI
+Main_DirectDrawPalette_SetEntries(LPDIRECTDRAWPALETTE iface, DWORD dwFlags,
+ DWORD dwStart, DWORD dwCount,
+ LPPALETTEENTRY palent);
+ULONG WINAPI
+Main_DirectDrawPalette_Release(LPDIRECTDRAWPALETTE iface);
+ULONG WINAPI Main_DirectDrawPalette_AddRef(LPDIRECTDRAWPALETTE iface);
+HRESULT WINAPI
+Main_DirectDrawPalette_Initialize(LPDIRECTDRAWPALETTE iface,
+ LPDIRECTDRAW ddraw, DWORD dwFlags,
+ LPPALETTEENTRY palent);
+HRESULT WINAPI
+Main_DirectDrawPalette_GetCaps(LPDIRECTDRAWPALETTE iface, LPDWORD lpdwCaps);
+HRESULT WINAPI
+Main_DirectDrawPalette_QueryInterface(LPDIRECTDRAWPALETTE iface,
+ REFIID refiid, LPVOID *obj);
+
+/*****************************************************************************
+ * IDirectDrawPalette HAL declarations
+ */
+HRESULT HAL_DirectDrawPalette_Construct(IDirectDrawPaletteImpl* This,
+ IDirectDrawImpl* pDD, DWORD dwFlags);
+void HAL_DirectDrawPalette_final_release(IDirectDrawPaletteImpl* This);
+
+HRESULT HAL_DirectDrawPalette_Create(IDirectDrawImpl* pDD, DWORD dwFlags,
+ LPDIRECTDRAWPALETTE* ppPalette,
+ LPUNKNOWN pUnkOuter);
+
+HRESULT WINAPI
+HAL_DirectDrawPalette_SetEntries(LPDIRECTDRAWPALETTE iface, DWORD dwFlags,
+ DWORD dwStart, DWORD dwCount,
+ LPPALETTEENTRY palent);
+
+/*****************************************************************************
+ * IDirectDraw MAIN declarations
+ */
+/* internal virtual functions */
+void Main_DirectDraw_final_release(IDirectDrawImpl* This);
+HRESULT Main_create_offscreen(IDirectDrawImpl* This, const DDSURFACEDESC2 *pDDSD,
+ LPDIRECTDRAWSURFACE7* ppSurf, LPUNKNOWN pOuter);
+HRESULT Main_create_texture(IDirectDrawImpl* This, const DDSURFACEDESC2 *pDDSD,
+ LPDIRECTDRAWSURFACE7* ppSurf, LPUNKNOWN pOuter,
+ DWORD dwMipMapLevel);
+HRESULT Main_create_zbuffer(IDirectDrawImpl* This, const DDSURFACEDESC2 *pDDSD,
+ LPDIRECTDRAWSURFACE7* ppSurf, LPUNKNOWN pOuter);
+
+/* internal functions */
+HRESULT Main_DirectDraw_Construct(IDirectDrawImpl *This, BOOL ex);
+void Main_DirectDraw_AddSurface(IDirectDrawImpl* This,
+ IDirectDrawSurfaceImpl* surface);
+void Main_DirectDraw_RemoveSurface(IDirectDrawImpl* This,
+ IDirectDrawSurfaceImpl* surface);
+void Main_DirectDraw_AddClipper(IDirectDrawImpl* This,
+ IDirectDrawClipperImpl* clipper);
+void Main_DirectDraw_RemoveClipper(IDirectDrawImpl* This,
+ IDirectDrawClipperImpl* clipper);
+void Main_DirectDraw_AddPalette(IDirectDrawImpl* This,
+ IDirectDrawPaletteImpl* palette);
+void Main_DirectDraw_RemovePalette(IDirectDrawImpl* This,
+ IDirectDrawPaletteImpl* palette);
+
+/* interface functions */
+ULONG WINAPI Main_DirectDraw_AddRef(LPDIRECTDRAW7 iface);
+ULONG WINAPI Main_DirectDraw_Release(LPDIRECTDRAW7 iface);
+HRESULT WINAPI Main_DirectDraw_QueryInterface(LPDIRECTDRAW7 iface,
+ REFIID refiid,LPVOID *obj);
+HRESULT WINAPI Main_DirectDraw_Compact(LPDIRECTDRAW7 iface);
+HRESULT WINAPI Main_DirectDraw_CreateClipper(LPDIRECTDRAW7 iface,
+ DWORD dwFlags,
+ LPDIRECTDRAWCLIPPER *ppClipper,
+ IUnknown *pUnkOuter);
+HRESULT WINAPI
+Main_DirectDraw_CreatePalette(LPDIRECTDRAW7 iface, DWORD dwFlags,
+ LPPALETTEENTRY palent,
+ LPDIRECTDRAWPALETTE* ppPalette,
+ LPUNKNOWN pUnknown);
+HRESULT WINAPI
+Main_DirectDraw_CreateSurface(LPDIRECTDRAW7 iface, LPDDSURFACEDESC2 pDDSD,
+ LPDIRECTDRAWSURFACE7 *ppSurf,
+ IUnknown *pUnkOuter);
+HRESULT WINAPI
+Main_DirectDraw_DuplicateSurface(LPDIRECTDRAW7 iface, LPDIRECTDRAWSURFACE7 src,
+ LPDIRECTDRAWSURFACE7* dst);
+HRESULT WINAPI
+Main_DirectDraw_EnumSurfaces(LPDIRECTDRAW7 iface, DWORD dwFlags,
+ LPDDSURFACEDESC2 lpDDSD2, LPVOID context,
+ LPDDENUMSURFACESCALLBACK7 callback);
+HRESULT WINAPI
+Main_DirectDraw_EvaluateMode(LPDIRECTDRAW7 iface,DWORD a,DWORD* b);
+HRESULT WINAPI Main_DirectDraw_FlipToGDISurface(LPDIRECTDRAW7 iface);
+HRESULT WINAPI
+Main_DirectDraw_GetCaps(LPDIRECTDRAW7 iface, LPDDCAPS pDriverCaps,
+ LPDDCAPS pHELCaps);
+HRESULT WINAPI
+Main_DirectDraw_GetFourCCCodes(LPDIRECTDRAW7 iface, LPDWORD pNumCodes,
+ LPDWORD pCodes);
+HRESULT WINAPI
+Main_DirectDraw_GetGDISurface(LPDIRECTDRAW7 iface,
+ LPDIRECTDRAWSURFACE7 *lplpGDIDDSSurface);
+HRESULT WINAPI
+Main_DirectDraw_GetMonitorFrequency(LPDIRECTDRAW7 iface,LPDWORD freq);
+HRESULT WINAPI
+Main_DirectDraw_GetScanLine(LPDIRECTDRAW7 iface, LPDWORD lpdwScanLine);
+HRESULT WINAPI
+Main_DirectDraw_GetSurfaceFromDC(LPDIRECTDRAW7 iface, HDC hdc,
+ LPDIRECTDRAWSURFACE7 *lpDDS);
+HRESULT WINAPI
+Main_DirectDraw_GetVerticalBlankStatus(LPDIRECTDRAW7 iface, LPBOOL status);
+HRESULT WINAPI
+Main_DirectDraw_Initialize(LPDIRECTDRAW7 iface, LPGUID lpGuid);
+HRESULT WINAPI Main_DirectDraw_RestoreAllSurfaces(LPDIRECTDRAW7 iface);
+HRESULT WINAPI
+Main_DirectDraw_SetCooperativeLevel(LPDIRECTDRAW7 iface, HWND hwnd,
+ DWORD cooplevel);
+HRESULT WINAPI
+Main_DirectDraw_SetDisplayMode(LPDIRECTDRAW7 iface, DWORD dwWidth,
+ DWORD dwHeight, LONG lPitch,
+ DWORD dwRefreshRate, DWORD dwFlags,
+ const DDPIXELFORMAT* pixelformat);
+HRESULT WINAPI Main_DirectDraw_RestoreDisplayMode(LPDIRECTDRAW7 iface);
+HRESULT WINAPI
+Main_DirectDraw_WaitForVerticalBlank(LPDIRECTDRAW7 iface, DWORD dwFlags,
+ HANDLE h);
+HRESULT WINAPI
+Main_DirectDraw_GetDisplayMode(LPDIRECTDRAW7 iface, LPDDSURFACEDESC2 pDDSD);
+HRESULT WINAPI
+Main_DirectDraw_GetAvailableVidMem(LPDIRECTDRAW7 iface,LPDDSCAPS2 ddscaps,
+ LPDWORD total, LPDWORD free);
+HRESULT WINAPI Main_DirectDraw_TestCooperativeLevel(LPDIRECTDRAW7 iface);
+HRESULT WINAPI
+Main_DirectDraw_StartModeTest(LPDIRECTDRAW7 iface, LPSIZE pModes,
+ DWORD dwNumModes, DWORD dwFlags);
+
+/*****************************************************************************
+ * IDirectDraw USER object declarations
+ */
+#define USER_DDRAW_PRIV(ddraw) ((User_DirectDrawImpl*)((ddraw)->private))
+#define USER_DDRAW_PRIV_VAR(name,ddraw) \
+ User_DirectDrawImpl* name = USER_DDRAW_PRIV(ddraw)
+
+typedef struct
+{
+ int empty;
+ /* empty */
+} User_DirectDrawImpl_Part;
+
+typedef struct
+{
+ User_DirectDrawImpl_Part user;
+} User_DirectDrawImpl;
+
+void User_DirectDraw_final_release(IDirectDrawImpl* This);
+HRESULT User_DirectDraw_create_primary(IDirectDrawImpl* This,
+ const DDSURFACEDESC2* pDDSD,
+ LPDIRECTDRAWSURFACE7* ppSurf,
+ LPUNKNOWN pOuter);
+HRESULT User_DirectDraw_create_backbuffer(IDirectDrawImpl* This,
+ const DDSURFACEDESC2* pDDSD,
+ LPDIRECTDRAWSURFACE7* ppSurf,
+ LPUNKNOWN pOuter,
+ IDirectDrawSurfaceImpl* primary);
+HRESULT User_DirectDraw_Construct(IDirectDrawImpl *This, BOOL ex);
+HRESULT User_DirectDraw_Create(const GUID* pGUID, LPDIRECTDRAW7* pIface,
+ IUnknown* pUnkOuter, BOOL ex);
+
+HRESULT WINAPI
+User_DirectDraw_EnumDisplayModes(LPDIRECTDRAW7 iface, DWORD dwFlags,
+ LPDDSURFACEDESC2 pDDSD, LPVOID context,
+ LPDDENUMMODESCALLBACK2 callback);
+HRESULT WINAPI
+User_DirectDraw_GetDeviceIdentifier(LPDIRECTDRAW7 iface,
+ LPDDDEVICEIDENTIFIER2 pDDDI,
+ DWORD dwFlags);
+HRESULT WINAPI
+User_DirectDraw_SetDisplayMode(LPDIRECTDRAW7 iface, DWORD dwWidth,
+ DWORD dwHeight, DWORD dwBPP,
+ DWORD dwRefreshRate, DWORD dwFlags);
+
+/*****************************************************************************
+ * IDirectDraw HAL declarations
+ */
+#define HAL_DDRAW_PRIV(ddraw) \
+ ((HAL_DirectDrawImpl*)((ddraw)->private))
+#define HAL_DDRAW_PRIV_VAR(name,ddraw) \
+ HAL_DirectDrawImpl* name = HAL_DDRAW_PRIV(ddraw)
+
+typedef struct
+{
+ DWORD next_vofs;
+} HAL_DirectDrawImpl_Part;
+
+typedef struct
+{
+ User_DirectDrawImpl_Part user;
+ HAL_DirectDrawImpl_Part hal;
+} HAL_DirectDrawImpl;
+
+void HAL_DirectDraw_final_release(IDirectDrawImpl* This);
+HRESULT HAL_DirectDraw_create_primary(IDirectDrawImpl* This,
+ const DDSURFACEDESC2* pDDSD,
+ LPDIRECTDRAWSURFACE7* ppSurf,
+ LPUNKNOWN pOuter);
+HRESULT HAL_DirectDraw_create_backbuffer(IDirectDrawImpl* This,
+ const DDSURFACEDESC2* pDDSD,
+ LPDIRECTDRAWSURFACE7* ppSurf,
+ LPUNKNOWN pOuter,
+ IDirectDrawSurfaceImpl* primary);
+HRESULT HAL_DirectDraw_create_texture(IDirectDrawImpl* This,
+ const DDSURFACEDESC2* pDDSD,
+ LPDIRECTDRAWSURFACE7* ppSurf,
+ LPUNKNOWN pOuter,
+ DWORD dwMipMapLevel);
+
+HRESULT HAL_DirectDraw_Construct(IDirectDrawImpl *This, BOOL ex);
+HRESULT HAL_DirectDraw_Create(const GUID* pGUID, LPDIRECTDRAW7* pIface,
+ IUnknown* pUnkOuter, BOOL ex);
+
+HRESULT WINAPI
+HAL_DirectDraw_GetDeviceIdentifier(LPDIRECTDRAW7 iface,
+ LPDDDEVICEIDENTIFIER2 pDDDI,
+ DWORD dwFlags);
+HRESULT WINAPI
+HAL_DirectDraw_SetDisplayMode(LPDIRECTDRAW7 iface, DWORD dwWidth,
+ DWORD dwHeight, DWORD dwBPP,
+ DWORD dwRefreshRate, DWORD dwFlags);
+HRESULT WINAPI HAL_DirectDraw_RestoreDisplayMode(LPDIRECTDRAW7 iface);
+
+/*****************************************************************************
+ * IDirectDrawSurface MAIN declarations
+ */
+/* Support for IDirectDrawSurface7::Set/Get/FreePrivateData. I don't think
+ * anybody uses it for much so a good implementation is optional. */
+typedef struct PrivateData
+{
+ struct PrivateData* next;
+ struct PrivateData* prev;
+
+ GUID tag;
+ DWORD flags; /* DDSPD_* */
+ DWORD uniqueness_value;
+
+ union
+ {
+ LPVOID data;
+ LPUNKNOWN object;
+ } ptr;
+
+ DWORD size;
+} PrivateData;
+
+extern const IDirectDrawGammaControlVtbl DDRAW_IDDGC_VTable;
+
+/* Non-interface functions */
+HRESULT Main_DirectDrawSurface_Construct(IDirectDrawSurfaceImpl* This,
+ IDirectDrawImpl* pDD,
+ const DDSURFACEDESC2* pDDSD);
+void Main_DirectDrawSurface_ForceDestroy(IDirectDrawSurfaceImpl* This);
+
+void Main_DirectDrawSurface_final_release(IDirectDrawSurfaceImpl* This);
+HRESULT Main_DirectDrawSurface_late_allocate(IDirectDrawSurfaceImpl* This);
+BOOL Main_DirectDrawSurface_attach(IDirectDrawSurfaceImpl *This,
+ IDirectDrawSurfaceImpl *to);
+BOOL Main_DirectDrawSurface_detach(IDirectDrawSurfaceImpl *This);
+void Main_DirectDrawSurface_lock_update(IDirectDrawSurfaceImpl* This,
+ LPCRECT pRect, DWORD dwFlags);
+void Main_DirectDrawSurface_unlock_update(IDirectDrawSurfaceImpl* This,
+ LPCRECT pRect);
+void Main_DirectDrawSurface_lose_surface(IDirectDrawSurfaceImpl* This);
+void Main_DirectDrawSurface_set_palette(IDirectDrawSurfaceImpl* This,
+ IDirectDrawPaletteImpl* pal);
+void Main_DirectDrawSurface_update_palette(IDirectDrawSurfaceImpl* This,
+ IDirectDrawPaletteImpl* pal,
+ DWORD dwStart, DWORD dwCount,
+ LPPALETTEENTRY palent);
+HWND Main_DirectDrawSurface_get_display_window(IDirectDrawSurfaceImpl* This);
+
+HRESULT Main_DirectDrawSurface_get_gamma_ramp(IDirectDrawSurfaceImpl* This,
+ DWORD dwFlags,
+ LPDDGAMMARAMP lpGammaRamp);
+HRESULT Main_DirectDrawSurface_set_gamma_ramp(IDirectDrawSurfaceImpl* This,
+ DWORD dwFlags,
+ LPDDGAMMARAMP lpGammaRamp);
+
+BOOL Main_DirectDrawSurface_flip_data(IDirectDrawSurfaceImpl* front,
+ IDirectDrawSurfaceImpl* back,
+ DWORD dwFlags);
+
+#define CHECK_LOST(This) \
+ do { \
+ if (This->lost) return DDERR_SURFACELOST; \
+ } while (0)
+
+#define CHECK_TEXTURE(This) \
+ do { \
+ if (!(This->surface_desc.ddsCaps.dwCaps2 \
+ & DDSCAPS2_TEXTUREMANAGE)) \
+ return DDERR_INVALIDOBJECT; \
+ } while (0)
+
+#define LOCK_OBJECT(This) do { } while (0)
+#define UNLOCK_OBJECT(This) do { } while (0)
+
+/* IDirectDrawSurface7 (partial) implementation */
+ULONG WINAPI Main_DirectDrawSurface_AddRef(LPDIRECTDRAWSURFACE7 iface);
+ULONG WINAPI Main_DirectDrawSurface_Release(LPDIRECTDRAWSURFACE7 iface);
+HRESULT WINAPI
+Main_DirectDrawSurface_QueryInterface(LPDIRECTDRAWSURFACE7 iface, REFIID riid,
+ LPVOID* ppObj);
+HRESULT WINAPI
+Main_DirectDrawSurface_AddAttachedSurface(LPDIRECTDRAWSURFACE7 iface,
+ LPDIRECTDRAWSURFACE7 pAttach);
+HRESULT WINAPI
+Main_DirectDrawSurface_AddOverlayDirtyRect(LPDIRECTDRAWSURFACE7 iface,
+ LPRECT pRect);
+HRESULT WINAPI
+Main_DirectDrawSurface_BltBatch(LPDIRECTDRAWSURFACE7 iface,
+ LPDDBLTBATCH pBatch, DWORD dwCount,
+ DWORD dwFlags);
+HRESULT WINAPI
+Main_DirectDrawSurface_ChangeUniquenessValue(LPDIRECTDRAWSURFACE7 iface);
+HRESULT WINAPI
+Main_DirectDrawSurface_DeleteAttachedSurface(LPDIRECTDRAWSURFACE7 iface,
+ DWORD dwFlags,
+ LPDIRECTDRAWSURFACE7 pAttach);
+HRESULT WINAPI
+Main_DirectDrawSurface_EnumAttachedSurfaces(LPDIRECTDRAWSURFACE7 iface,
+ LPVOID context,
+ LPDDENUMSURFACESCALLBACK7 cb);
+HRESULT WINAPI
+Main_DirectDrawSurface_EnumOverlayZOrders(LPDIRECTDRAWSURFACE7 iface,
+ DWORD dwFlags, LPVOID context,
+ LPDDENUMSURFACESCALLBACK7 cb);
+HRESULT WINAPI
+Main_DirectDrawSurface_Flip(LPDIRECTDRAWSURFACE7 iface,
+ LPDIRECTDRAWSURFACE7 override, DWORD dwFlags);
+HRESULT WINAPI
+Main_DirectDrawSurface_FreePrivateData(LPDIRECTDRAWSURFACE7 iface,
+ REFGUID tag);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetAttachedSurface(LPDIRECTDRAWSURFACE7 iface,
+ LPDDSCAPS2 pCaps,
+ LPDIRECTDRAWSURFACE7* ppSurface);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetBltStatus(LPDIRECTDRAWSURFACE7 iface,
+ DWORD dwFlags);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetCaps(LPDIRECTDRAWSURFACE7 iface,
+ LPDDSCAPS2 pCaps);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetClipper(LPDIRECTDRAWSURFACE7 iface,
+ LPDIRECTDRAWCLIPPER* ppClipper);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetColorKey(LPDIRECTDRAWSURFACE7 iface,
+ DWORD dwFlags, LPDDCOLORKEY pCKey);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetDC(LPDIRECTDRAWSURFACE7 iface, HDC *phDC);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetDDInterface(LPDIRECTDRAWSURFACE7 iface,
+ LPVOID* pDD);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetFlipStatus(LPDIRECTDRAWSURFACE7 iface,
+ DWORD dwFlags);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetLOD(LPDIRECTDRAWSURFACE7 iface,
+ LPDWORD pdwMaxLOD);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetOverlayPosition(LPDIRECTDRAWSURFACE7 iface,
+ LPLONG pX, LPLONG pY);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetPalette(LPDIRECTDRAWSURFACE7 iface,
+ LPDIRECTDRAWPALETTE* ppPalette);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetPixelFormat(LPDIRECTDRAWSURFACE7 iface,
+ LPDDPIXELFORMAT pDDPixelFormat);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetPriority(LPDIRECTDRAWSURFACE7 iface,
+ LPDWORD pdwPriority);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetPrivateData(LPDIRECTDRAWSURFACE7 iface, REFGUID tag,
+ LPVOID pBuffer, LPDWORD pcbBufferSize);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetSurfaceDesc(LPDIRECTDRAWSURFACE7 iface,
+ LPDDSURFACEDESC2 pDDSD);
+HRESULT WINAPI
+Main_DirectDrawSurface_GetUniquenessValue(LPDIRECTDRAWSURFACE7 iface,
+ LPDWORD pValue);
+HRESULT WINAPI
+Main_DirectDrawSurface_Initialize(LPDIRECTDRAWSURFACE7 iface,
+ LPDIRECTDRAW pDD, LPDDSURFACEDESC2 pDDSD);
+HRESULT WINAPI
+Main_DirectDrawSurface_IsLost(LPDIRECTDRAWSURFACE7 iface);
+HRESULT WINAPI
+Main_DirectDrawSurface_Lock(LPDIRECTDRAWSURFACE7 iface, LPRECT prect,
+ LPDDSURFACEDESC2 pDDSD, DWORD flags, HANDLE h);
+HRESULT WINAPI
+Main_DirectDrawSurface_PageLock(LPDIRECTDRAWSURFACE7 iface, DWORD dwFlags);
+HRESULT WINAPI
+Main_DirectDrawSurface_PageUnlock(LPDIRECTDRAWSURFACE7 iface, DWORD dwFlags);
+HRESULT WINAPI
+Main_DirectDrawSurface_ReleaseDC(LPDIRECTDRAWSURFACE7 iface, HDC hDC);
+HRESULT WINAPI
+Main_DirectDrawSurface_SetClipper(LPDIRECTDRAWSURFACE7 iface,
+ LPDIRECTDRAWCLIPPER pDDClipper);
+HRESULT WINAPI
+Main_DirectDrawSurface_SetColorKey(LPDIRECTDRAWSURFACE7 iface,
+ DWORD dwFlags, LPDDCOLORKEY pCKey);
+HRESULT WINAPI
+Main_DirectDrawSurface_SetLOD(LPDIRECTDRAWSURFACE7 iface, DWORD dwMaxLOD);
+HRESULT WINAPI
+Main_DirectDrawSurface_SetOverlayPosition(LPDIRECTDRAWSURFACE7 iface,
+ LONG X, LONG Y);
+HRESULT WINAPI
+Main_DirectDrawSurface_SetPalette(LPDIRECTDRAWSURFACE7 iface,
+ LPDIRECTDRAWPALETTE pPalette);
+HRESULT WINAPI
+Main_DirectDrawSurface_SetPriority(LPDIRECTDRAWSURFACE7 iface,
+ DWORD dwPriority);
+HRESULT WINAPI
+Main_DirectDrawSurface_SetPrivateData(LPDIRECTDRAWSURFACE7 iface,
+ REFGUID tag, LPVOID pData,
+ DWORD cbSize, DWORD dwFlags);
+HRESULT WINAPI
+Main_DirectDrawSurface_Unlock(LPDIRECTDRAWSURFACE7 iface, LPRECT pRect);
+HRESULT WINAPI
+Main_DirectDrawSurface_UpdateOverlay(LPDIRECTDRAWSURFACE7 iface,
+ LPRECT pSrcRect,
+ LPDIRECTDRAWSURFACE7 pDstSurface,
+ LPRECT pDstRect, DWORD dwFlags,
+ LPDDOVERLAYFX pFX);
+HRESULT WINAPI
+Main_DirectDrawSurface_UpdateOverlayDisplay(LPDIRECTDRAWSURFACE7 iface,
+ DWORD dwFlags);
+HRESULT WINAPI
+Main_DirectDrawSurface_UpdateOverlayZOrder(LPDIRECTDRAWSURFACE7 iface,
+ DWORD dwFlags,
+ LPDIRECTDRAWSURFACE7 pDDSRef);
+
+/*****************************************************************************
+ * IDirectDrawSurface DIB declarations
+ */
+#define DIB_PRIV(surf) ((DIB_DirectDrawSurfaceImpl*)((surf)->private))
+
+#define DIB_PRIV_VAR(name, surf) \
+ DIB_DirectDrawSurfaceImpl* name = DIB_PRIV(surf)
+
+struct DIB_DirectDrawSurfaceImpl_Part
+{
+ HBITMAP DIBsection;
+ void* bitmap_data;
+ HGDIOBJ holdbitmap;
+ BOOL client_memory;
+ DWORD d3d_data[4]; /* room for Direct3D driver data */
+};
+
+typedef struct
+{
+ struct DIB_DirectDrawSurfaceImpl_Part dib;
+} DIB_DirectDrawSurfaceImpl;
+
+HRESULT
+DIB_DirectDrawSurface_Construct(IDirectDrawSurfaceImpl *This,
+ IDirectDrawImpl *pDD,
+ const DDSURFACEDESC2 *pDDSD);
+HRESULT
+DIB_DirectDrawSurface_Create(IDirectDrawImpl *pDD,
+ const DDSURFACEDESC2 *pDDSD,
+ LPDIRECTDRAWSURFACE7 *ppSurf,
+ IUnknown *pUnkOuter);
+
+void DIB_DirectDrawSurface_final_release(IDirectDrawSurfaceImpl* This);
+BOOL DIB_DirectDrawSurface_flip_data(IDirectDrawSurfaceImpl* front,
+ IDirectDrawSurfaceImpl* back,
+ DWORD dwFlags);
+
+void DIB_DirectDrawSurface_set_palette(IDirectDrawSurfaceImpl* This,
+ IDirectDrawPaletteImpl* pal);
+void DIB_DirectDrawSurface_update_palette(IDirectDrawSurfaceImpl* This,
+ IDirectDrawPaletteImpl* pal,
+ DWORD dwStart, DWORD dwCount,
+ LPPALETTEENTRY palent);
+
+HRESULT DIB_DirectDrawSurface_get_dc(IDirectDrawSurfaceImpl* This, HDC* phDC);
+HRESULT DIB_DirectDrawSurface_release_dc(IDirectDrawSurfaceImpl* This,HDC hDC);
+
+HRESULT DIB_DirectDrawSurface_alloc_dc(IDirectDrawSurfaceImpl* This,HDC* phDC);
+HRESULT DIB_DirectDrawSurface_free_dc(IDirectDrawSurfaceImpl* This, HDC hDC);
+
+HRESULT WINAPI
+DIB_DirectDrawSurface_Blt(LPDIRECTDRAWSURFACE7 iface, LPRECT prcDest,
+ LPDIRECTDRAWSURFACE7 pSrcSurf, LPRECT prcSrc,
+ DWORD dwFlags, LPDDBLTFX pBltFx);
+HRESULT WINAPI
+DIB_DirectDrawSurface_BltFast(LPDIRECTDRAWSURFACE7 iface, DWORD dwX,
+ DWORD dwY, LPDIRECTDRAWSURFACE7 pSrcSurf,
+ LPRECT prcSrc, DWORD dwTrans);
+HRESULT WINAPI DIB_DirectDrawSurface_Restore(LPDIRECTDRAWSURFACE7 iface);
+HRESULT WINAPI
+DIB_DirectDrawSurface_SetSurfaceDesc(LPDIRECTDRAWSURFACE7 iface,
+ LPDDSURFACEDESC2 pDDSD, DWORD dwFlags);
+
+/*****************************************************************************
+ * IDirectDrawSurface USER declarations
+ */
+#define USER_PRIV(surf) ((User_DirectDrawSurfaceImpl*)((surf)->private))
+
+#define USER_PRIV_VAR(name,surf) \
+ User_DirectDrawSurfaceImpl* name = USER_PRIV(surf)
+
+struct User_DirectDrawSurfaceImpl_Part
+{
+ HWND window;
+ HDC cached_dc;
+ HANDLE update_thread, update_event, refresh_event;
+ volatile int wait_count, in_refresh;
+ CRITICAL_SECTION crit;
+};
+
+typedef struct
+{
+ struct DIB_DirectDrawSurfaceImpl_Part dib;
+ struct User_DirectDrawSurfaceImpl_Part user;
+} User_DirectDrawSurfaceImpl;
+
+HRESULT User_DirectDrawSurface_Construct(IDirectDrawSurfaceImpl* This,
+ IDirectDrawImpl* pDD,
+ const DDSURFACEDESC2* pDDSD);
+
+HRESULT User_DirectDrawSurface_Create(IDirectDrawImpl *pDD,
+ const DDSURFACEDESC2 *pDDSD,
+ LPDIRECTDRAWSURFACE7 *ppSurf,
+ IUnknown *pUnkOuter);
+
+void User_DirectDrawSurface_final_release(IDirectDrawSurfaceImpl* This);
+
+void User_DirectDrawSurface_lock_update(IDirectDrawSurfaceImpl* This,
+ LPCRECT pRect, DWORD dwFlags);
+void User_DirectDrawSurface_unlock_update(IDirectDrawSurfaceImpl* This,
+ LPCRECT pRect);
+void User_DirectDrawSurface_set_palette(IDirectDrawSurfaceImpl* This,
+ IDirectDrawPaletteImpl* pal);
+void User_DirectDrawSurface_update_palette(IDirectDrawSurfaceImpl* This,
+ IDirectDrawPaletteImpl* pal,
+ DWORD dwStart, DWORD dwCount,
+ LPPALETTEENTRY palent);
+HRESULT User_DirectDrawSurface_duplicate_surface(IDirectDrawSurfaceImpl* This,
+ LPDIRECTDRAWSURFACE7* ppDup);
+BOOL User_DirectDrawSurface_flip_data(IDirectDrawSurfaceImpl* front,
+ IDirectDrawSurfaceImpl* back,
+ DWORD dwFlags);
+void User_DirectDrawSurface_flip_update(IDirectDrawSurfaceImpl* This,
+ DWORD dwFlags);
+HWND User_DirectDrawSurface_get_display_window(IDirectDrawSurfaceImpl* This);
+
+HRESULT User_DirectDrawSurface_get_dc(IDirectDrawSurfaceImpl* This, HDC* phDC);
+HRESULT User_DirectDrawSurface_release_dc(IDirectDrawSurfaceImpl* This,
+ HDC hDC);
+
+HRESULT User_DirectDrawSurface_get_gamma_ramp(IDirectDrawSurfaceImpl* This,
+ DWORD dwFlags,
+ LPDDGAMMARAMP lpGammaRamp);
+HRESULT User_DirectDrawSurface_set_gamma_ramp(IDirectDrawSurfaceImpl* This,
+ DWORD dwFlags,
+ LPDDGAMMARAMP lpGammaRamp);
+
+/*****************************************************************************
+ * IDirectDrawSurface HAL declarations
+ */
+#define HAL_PRIV(surf) ((HAL_DirectDrawSurfaceImpl*)((surf)->private))
+
+#define HAL_PRIV_VAR(name,surf) \
+ HAL_DirectDrawSurfaceImpl* name = HAL_PRIV(surf)
+
+struct HAL_DirectDrawSurfaceImpl_Part
+{
+ DWORD need_late;
+ LPVOID fb_addr;
+ DWORD fb_pitch, fb_vofs;
+};
+
+typedef struct
+{
+ struct DIB_DirectDrawSurfaceImpl_Part dib;
+ struct User_DirectDrawSurfaceImpl_Part user;
+ struct HAL_DirectDrawSurfaceImpl_Part hal;
+} HAL_DirectDrawSurfaceImpl;
+
+HRESULT HAL_DirectDrawSurface_Construct(IDirectDrawSurfaceImpl* This,
+ IDirectDrawImpl* pDD,
+ const DDSURFACEDESC2* pDDSD);
+
+HRESULT HAL_DirectDrawSurface_Create(IDirectDrawImpl *pDD,
+ const DDSURFACEDESC2 *pDDSD,
+ LPDIRECTDRAWSURFACE7 *ppSurf,
+ IUnknown *pUnkOuter);
+
+void HAL_DirectDrawSurface_final_release(IDirectDrawSurfaceImpl* This);
+HRESULT HAL_DirectDrawSurface_late_allocate(IDirectDrawSurfaceImpl* This);
+
+void HAL_DirectDrawSurface_set_palette(IDirectDrawSurfaceImpl* This,
+ IDirectDrawPaletteImpl* pal);
+void HAL_DirectDrawSurface_update_palette(IDirectDrawSurfaceImpl* This,
+ IDirectDrawPaletteImpl* pal,
+ DWORD dwStart, DWORD dwCount,
+ LPPALETTEENTRY palent);
+HRESULT HAL_DirectDrawSurface_duplicate_surface(IDirectDrawSurfaceImpl* This,
+ LPDIRECTDRAWSURFACE7* ppDup);
+void HAL_DirectDrawSurface_lock_update(IDirectDrawSurfaceImpl* This,
+ LPCRECT pRect, DWORD dwFlags);
+void HAL_DirectDrawSurface_unlock_update(IDirectDrawSurfaceImpl* This,
+ LPCRECT pRect);
+BOOL HAL_DirectDrawSurface_flip_data(IDirectDrawSurfaceImpl* front,
+ IDirectDrawSurfaceImpl* back,
+ DWORD dwFlags);
+void HAL_DirectDrawSurface_flip_update(IDirectDrawSurfaceImpl* This,
+ DWORD dwFlags);
+HWND HAL_DirectDrawSurface_get_display_window(IDirectDrawSurfaceImpl* This);
+
+/*****************************************************************************
+ * IDirectDrawSurface FAKEZBUFFER declarations
+ */
+typedef struct
+{
+ BOOLEAN in_memory;
+} FakeZBuffer_DirectDrawSurfaceImpl;
+
+HRESULT FakeZBuffer_DirectDrawSurface_Construct(IDirectDrawSurfaceImpl* This,
+ IDirectDrawImpl* pDD,
+ const DDSURFACEDESC2* pDDSD);
+
+HRESULT FakeZBuffer_DirectDrawSurface_Create(IDirectDrawImpl* pDD,
+ const DDSURFACEDESC2* pDDSD,
+ LPDIRECTDRAWSURFACE7* ppSurf,
+ IUnknown* pUnkOuter);
+
+void FakeZBuffer_DirectDrawSurface_final_release(IDirectDrawSurfaceImpl* This);
+
+HRESULT FakeZBuffer_DirectDrawSurface_duplicate_surface(IDirectDrawSurfaceImpl* This,
+ LPDIRECTDRAWSURFACE7* ppDup);
+
#endif /* __WINE_DLLS_DDRAW_DDRAW_PRIVATE_H */
More information about the wine-patches
mailing list