[PATCH 5/5] ddraw: Get rid of IDirectDrawPaletteImpl.
Henri Verbeet
hverbeet at codeweavers.com
Mon Mar 12 13:56:10 CDT 2012
---
dlls/ddraw/ddraw.c | 12 +++---
dlls/ddraw/ddraw_private.h | 11 +++---
dlls/ddraw/palette.c | 86 +++++++++++++++++--------------------------
dlls/ddraw/surface.c | 6 ++--
4 files changed, 48 insertions(+), 67 deletions(-)
diff --git a/dlls/ddraw/ddraw.c b/dlls/ddraw/ddraw.c
index d951525..3ce18db 100644
--- a/dlls/ddraw/ddraw.c
+++ b/dlls/ddraw/ddraw.c
@@ -3700,7 +3700,7 @@ static HRESULT WINAPI ddraw7_CreatePalette(IDirectDraw7 *iface, DWORD Flags,
PALETTEENTRY *ColorTable, IDirectDrawPalette **Palette, IUnknown *pUnkOuter)
{
struct ddraw *ddraw = impl_from_IDirectDraw7(iface);
- IDirectDrawPaletteImpl *object;
+ struct ddraw_palette *object;
HRESULT hr;
TRACE("iface %p, flags %#x, color_table %p, palette %p, outer_unknown %p.\n",
@@ -3719,8 +3719,8 @@ static HRESULT WINAPI ddraw7_CreatePalette(IDirectDraw7 *iface, DWORD Flags,
return DDERR_NOCOOPERATIVELEVELSET;
}
- object = HeapAlloc(GetProcessHeap(), 0, sizeof(IDirectDrawPaletteImpl));
- if(!object)
+ object = HeapAlloc(GetProcessHeap(), 0, sizeof(*object));
+ if (!object)
{
ERR("Out of memory when allocating memory for a palette implementation\n");
wined3d_mutex_unlock();
@@ -3755,7 +3755,7 @@ static HRESULT WINAPI ddraw4_CreatePalette(IDirectDraw4 *iface, DWORD flags, PAL
hr = ddraw7_CreatePalette(&ddraw->IDirectDraw7_iface, flags, entries, palette, outer_unknown);
if (SUCCEEDED(hr) && *palette)
{
- IDirectDrawPaletteImpl *impl = impl_from_IDirectDrawPalette(*palette);
+ struct ddraw_palette *impl = impl_from_IDirectDrawPalette(*palette);
IDirectDraw7_Release(&ddraw->IDirectDraw7_iface);
IDirectDraw4_AddRef(iface);
impl->ifaceToRelease = (IUnknown *)iface;
@@ -3775,7 +3775,7 @@ static HRESULT WINAPI ddraw2_CreatePalette(IDirectDraw2 *iface, DWORD flags,
hr = ddraw7_CreatePalette(&ddraw->IDirectDraw7_iface, flags, entries, palette, outer_unknown);
if (SUCCEEDED(hr) && *palette)
{
- IDirectDrawPaletteImpl *impl = impl_from_IDirectDrawPalette(*palette);
+ struct ddraw_palette *impl = impl_from_IDirectDrawPalette(*palette);
IDirectDraw7_Release(&ddraw->IDirectDraw7_iface);
impl->ifaceToRelease = NULL;
}
@@ -3795,7 +3795,7 @@ static HRESULT WINAPI ddraw1_CreatePalette(IDirectDraw *iface, DWORD flags,
hr = ddraw7_CreatePalette(&ddraw->IDirectDraw7_iface, flags, entries, palette, outer_unknown);
if (SUCCEEDED(hr) && *palette)
{
- IDirectDrawPaletteImpl *impl = impl_from_IDirectDrawPalette(*palette);
+ struct ddraw_palette *impl = impl_from_IDirectDrawPalette(*palette);
IDirectDraw7_Release(&ddraw->IDirectDraw7_iface);
impl->ifaceToRelease = NULL;
}
diff --git a/dlls/ddraw/ddraw_private.h b/dlls/ddraw/ddraw_private.h
index f34b1f7..87fa43b 100644
--- a/dlls/ddraw/ddraw_private.h
+++ b/dlls/ddraw/ddraw_private.h
@@ -41,7 +41,6 @@ extern const struct wined3d_parent_ops ddraw_surface_wined3d_parent_ops DECLSPEC
extern const struct wined3d_parent_ops ddraw_null_wined3d_parent_ops DECLSPEC_HIDDEN;
/* Typdef the interfaces */
-typedef struct IDirectDrawPaletteImpl IDirectDrawPaletteImpl;
typedef struct IDirect3DDeviceImpl IDirect3DDeviceImpl;
typedef struct IDirect3DLightImpl IDirect3DLightImpl;
typedef struct IDirect3DViewportImpl IDirect3DViewportImpl;
@@ -370,7 +369,7 @@ struct ddraw_clipper *unsafe_impl_from_IDirectDrawClipper(IDirectDrawClipper *if
/*****************************************************************************
* IDirectDrawPalette implementation structure
*****************************************************************************/
-struct IDirectDrawPaletteImpl
+struct ddraw_palette
{
/* IUnknown fields */
IDirectDrawPalette IDirectDrawPalette_iface;
@@ -382,14 +381,14 @@ struct IDirectDrawPaletteImpl
IUnknown *ifaceToRelease;
};
-static inline IDirectDrawPaletteImpl *impl_from_IDirectDrawPalette(IDirectDrawPalette *iface)
+static inline struct ddraw_palette *impl_from_IDirectDrawPalette(IDirectDrawPalette *iface)
{
- return CONTAINING_RECORD(iface, IDirectDrawPaletteImpl, IDirectDrawPalette_iface);
+ return CONTAINING_RECORD(iface, struct ddraw_palette, IDirectDrawPalette_iface);
}
-IDirectDrawPaletteImpl *unsafe_impl_from_IDirectDrawPalette(IDirectDrawPalette *iface) DECLSPEC_HIDDEN;
+struct ddraw_palette *unsafe_impl_from_IDirectDrawPalette(IDirectDrawPalette *iface) DECLSPEC_HIDDEN;
-HRESULT ddraw_palette_init(IDirectDrawPaletteImpl *palette,
+HRESULT ddraw_palette_init(struct ddraw_palette *palette,
struct ddraw *ddraw, DWORD flags, PALETTEENTRY *entries) DECLSPEC_HIDDEN;
/* Helper structures */
diff --git a/dlls/ddraw/palette.c b/dlls/ddraw/palette.c
index 1d66db3..7d879ad 100644
--- a/dlls/ddraw/palette.c
+++ b/dlls/ddraw/palette.c
@@ -37,10 +37,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(ddraw);
* S_OK on success
* E_NOINTERFACE if the requested interface wasn't found
*****************************************************************************/
-static HRESULT WINAPI
-IDirectDrawPaletteImpl_QueryInterface(IDirectDrawPalette *iface,
- REFIID refiid,
- void **obj)
+static HRESULT WINAPI ddraw_palette_QueryInterface(IDirectDrawPalette *iface, REFIID refiid, void **obj)
{
TRACE("iface %p, riid %s, object %p.\n", iface, debugstr_guid(refiid), obj);
@@ -67,10 +64,9 @@ IDirectDrawPaletteImpl_QueryInterface(IDirectDrawPalette *iface,
* The new refcount
*
*****************************************************************************/
-static ULONG WINAPI
-IDirectDrawPaletteImpl_AddRef(IDirectDrawPalette *iface)
+static ULONG WINAPI ddraw_palette_AddRef(IDirectDrawPalette *iface)
{
- IDirectDrawPaletteImpl *This = impl_from_IDirectDrawPalette(iface);
+ struct ddraw_palette *This = impl_from_IDirectDrawPalette(iface);
ULONG ref = InterlockedIncrement(&This->ref);
TRACE("%p increasing refcount to %u.\n", This, ref);
@@ -87,10 +83,9 @@ IDirectDrawPaletteImpl_AddRef(IDirectDrawPalette *iface)
* The new refcount
*
*****************************************************************************/
-static ULONG WINAPI
-IDirectDrawPaletteImpl_Release(IDirectDrawPalette *iface)
+static ULONG WINAPI ddraw_palette_Release(IDirectDrawPalette *iface)
{
- IDirectDrawPaletteImpl *This = impl_from_IDirectDrawPalette(iface);
+ struct ddraw_palette *This = impl_from_IDirectDrawPalette(iface);
ULONG ref = InterlockedDecrement(&This->ref);
TRACE("%p decreasing refcount to %u.\n", This, ref);
@@ -126,14 +121,11 @@ IDirectDrawPaletteImpl_Release(IDirectDrawPalette *iface)
* DDERR_ALREADYINITIALIZED
*
*****************************************************************************/
-static HRESULT WINAPI
-IDirectDrawPaletteImpl_Initialize(IDirectDrawPalette *iface,
- IDirectDraw *DD,
- DWORD Flags,
- PALETTEENTRY *ColorTable)
+static HRESULT WINAPI ddraw_palette_Initialize(IDirectDrawPalette *iface,
+ IDirectDraw *ddraw, DWORD flags, PALETTEENTRY *entries)
{
TRACE("iface %p, ddraw %p, flags %#x, entries %p.\n",
- iface, DD, Flags, ColorTable);
+ iface, ddraw, flags, entries);
return DDERR_ALREADYINITIALIZED;
}
@@ -152,16 +144,14 @@ IDirectDrawPaletteImpl_Initialize(IDirectDrawPalette *iface,
* For more details, see IWineD3DPalette::GetCaps
*
*****************************************************************************/
-static HRESULT WINAPI
-IDirectDrawPaletteImpl_GetCaps(IDirectDrawPalette *iface,
- DWORD *Caps)
+static HRESULT WINAPI ddraw_palette_GetCaps(IDirectDrawPalette *iface, DWORD *caps)
{
- IDirectDrawPaletteImpl *This = impl_from_IDirectDrawPalette(iface);
+ struct ddraw_palette *palette = impl_from_IDirectDrawPalette(iface);
- TRACE("iface %p, caps %p.\n", iface, Caps);
+ TRACE("iface %p, caps %p.\n", iface, caps);
wined3d_mutex_lock();
- *Caps = wined3d_palette_get_flags(This->wineD3DPalette);
+ *caps = wined3d_palette_get_flags(palette->wineD3DPalette);
wined3d_mutex_unlock();
return D3D_OK;
@@ -185,24 +175,20 @@ IDirectDrawPaletteImpl_GetCaps(IDirectDrawPalette *iface,
* For details, see IWineD3DDevice::SetEntries
*
*****************************************************************************/
-static HRESULT WINAPI
-IDirectDrawPaletteImpl_SetEntries(IDirectDrawPalette *iface,
- DWORD Flags,
- DWORD Start,
- DWORD Count,
- PALETTEENTRY *PalEnt)
+static HRESULT WINAPI ddraw_palette_SetEntries(IDirectDrawPalette *iface,
+ DWORD flags, DWORD start, DWORD count, PALETTEENTRY *entries)
{
- IDirectDrawPaletteImpl *This = impl_from_IDirectDrawPalette(iface);
+ struct ddraw_palette *palette = impl_from_IDirectDrawPalette(iface);
HRESULT hr;
TRACE("iface %p, flags %#x, start %u, count %u, entries %p.\n",
- iface, Flags, Start, Count, PalEnt);
+ iface, flags, start, count, entries);
- if(!PalEnt)
+ if (!entries)
return DDERR_INVALIDPARAMS;
wined3d_mutex_lock();
- hr = wined3d_palette_set_entries(This->wineD3DPalette, Flags, Start, Count, PalEnt);
+ hr = wined3d_palette_set_entries(palette->wineD3DPalette, flags, start, count, entries);
wined3d_mutex_unlock();
return hr;
@@ -225,24 +211,20 @@ IDirectDrawPaletteImpl_SetEntries(IDirectDrawPalette *iface,
* For details, see IWineD3DDevice::SetEntries
*
*****************************************************************************/
-static HRESULT WINAPI
-IDirectDrawPaletteImpl_GetEntries(IDirectDrawPalette *iface,
- DWORD Flags,
- DWORD Start,
- DWORD Count,
- PALETTEENTRY *PalEnt)
+static HRESULT WINAPI ddraw_palette_GetEntries(IDirectDrawPalette *iface,
+ DWORD flags, DWORD start, DWORD count, PALETTEENTRY *entries)
{
- IDirectDrawPaletteImpl *This = impl_from_IDirectDrawPalette(iface);
+ struct ddraw_palette *palette = impl_from_IDirectDrawPalette(iface);
HRESULT hr;
TRACE("iface %p, flags %#x, start %u, count %u, entries %p.\n",
- iface, Flags, Start, Count, PalEnt);
+ iface, flags, start, count, entries);
- if(!PalEnt)
+ if (!entries)
return DDERR_INVALIDPARAMS;
wined3d_mutex_lock();
- hr = wined3d_palette_get_entries(This->wineD3DPalette, Flags, Start, Count, PalEnt);
+ hr = wined3d_palette_get_entries(palette->wineD3DPalette, flags, start, count, entries);
wined3d_mutex_unlock();
return hr;
@@ -251,24 +233,24 @@ IDirectDrawPaletteImpl_GetEntries(IDirectDrawPalette *iface,
static const struct IDirectDrawPaletteVtbl ddraw_palette_vtbl =
{
/*** IUnknown ***/
- IDirectDrawPaletteImpl_QueryInterface,
- IDirectDrawPaletteImpl_AddRef,
- IDirectDrawPaletteImpl_Release,
+ ddraw_palette_QueryInterface,
+ ddraw_palette_AddRef,
+ ddraw_palette_Release,
/*** IDirectDrawPalette ***/
- IDirectDrawPaletteImpl_GetCaps,
- IDirectDrawPaletteImpl_GetEntries,
- IDirectDrawPaletteImpl_Initialize,
- IDirectDrawPaletteImpl_SetEntries
+ ddraw_palette_GetCaps,
+ ddraw_palette_GetEntries,
+ ddraw_palette_Initialize,
+ ddraw_palette_SetEntries
};
-IDirectDrawPaletteImpl *unsafe_impl_from_IDirectDrawPalette(IDirectDrawPalette *iface)
+struct ddraw_palette *unsafe_impl_from_IDirectDrawPalette(IDirectDrawPalette *iface)
{
if (!iface) return NULL;
assert(iface->lpVtbl == &ddraw_palette_vtbl);
- return CONTAINING_RECORD(iface, IDirectDrawPaletteImpl, IDirectDrawPalette_iface);
+ return CONTAINING_RECORD(iface, struct ddraw_palette, IDirectDrawPalette_iface);
}
-HRESULT ddraw_palette_init(IDirectDrawPaletteImpl *palette,
+HRESULT ddraw_palette_init(struct ddraw_palette *palette,
struct ddraw *ddraw, DWORD flags, PALETTEENTRY *entries)
{
HRESULT hr;
diff --git a/dlls/ddraw/surface.c b/dlls/ddraw/surface.c
index e58db9d..8fc00e4 100644
--- a/dlls/ddraw/surface.c
+++ b/dlls/ddraw/surface.c
@@ -4685,9 +4685,9 @@ static HRESULT WINAPI ddraw_surface1_SetColorKey(IDirectDrawSurface *iface, DWOR
static HRESULT WINAPI ddraw_surface7_SetPalette(IDirectDrawSurface7 *iface, IDirectDrawPalette *Pal)
{
struct ddraw_surface *This = impl_from_IDirectDrawSurface7(iface);
+ struct ddraw_palette *palette_impl = unsafe_impl_from_IDirectDrawPalette(Pal);
IDirectDrawPalette *oldPal;
struct ddraw_surface *surf;
- IDirectDrawPaletteImpl *PalImpl = unsafe_impl_from_IDirectDrawPalette(Pal);
HRESULT hr;
TRACE("iface %p, palette %p.\n", iface, Pal);
@@ -4713,7 +4713,7 @@ static HRESULT WINAPI ddraw_surface7_SetPalette(IDirectDrawSurface7 *iface, IDir
if(oldPal) IDirectDrawPalette_Release(oldPal); /* For the GetPalette */
/* Set the new Palette */
- wined3d_surface_set_palette(This->wined3d_surface, PalImpl ? PalImpl->wineD3DPalette : NULL);
+ wined3d_surface_set_palette(This->wined3d_surface, palette_impl ? palette_impl->wineD3DPalette : NULL);
/* AddRef the Palette */
if(Pal) IDirectDrawPalette_AddRef(Pal);
@@ -4723,7 +4723,7 @@ static HRESULT WINAPI ddraw_surface7_SetPalette(IDirectDrawSurface7 *iface, IDir
/* Update the wined3d frontbuffer if this is the frontbuffer. */
if ((This->surface_desc.ddsCaps.dwCaps & DDSCAPS_FRONTBUFFER) && This->ddraw->wined3d_frontbuffer)
{
- hr = wined3d_surface_set_palette(This->ddraw->wined3d_frontbuffer, PalImpl ? PalImpl->wineD3DPalette : NULL);
+ hr = wined3d_surface_set_palette(This->ddraw->wined3d_frontbuffer, palette_impl ? palette_impl->wineD3DPalette : NULL);
if (FAILED(hr))
ERR("Failed to set frontbuffer palette, hr %#x.\n", hr);
}
--
1.7.3.4
More information about the wine-patches
mailing list