ddraw: Merge the surface thunks into surface.c.
This commit is contained in:
parent
6fb9ee0ee7
commit
ce8f6ecf6e
|
@ -20,7 +20,6 @@ C_SRCS = \
|
|||
parent.c \
|
||||
regsvr.c \
|
||||
surface.c \
|
||||
surface_thunks.c \
|
||||
texture.c \
|
||||
utils.c \
|
||||
vertexbuffer.c \
|
||||
|
|
|
@ -3324,7 +3324,7 @@ static HRESULT WINAPI ddraw7_CreateSurface(IDirectDraw7 *iface,
|
|||
{
|
||||
release_surf = object;
|
||||
object = object->complex_array[0];
|
||||
IDirectDrawSurfaceImpl_Destroy(release_surf);
|
||||
ddraw_surface_destroy(release_surf);
|
||||
}
|
||||
LeaveCriticalSection(&ddraw_cs);
|
||||
return hr;
|
||||
|
|
|
@ -282,9 +282,7 @@ extern const IDirectDrawGammaControlVtbl IDirectDrawGammaControl_Vtbl DECLSPEC_H
|
|||
extern const IDirect3DTexture2Vtbl IDirect3DTexture2_Vtbl DECLSPEC_HIDDEN;
|
||||
extern const IDirect3DTextureVtbl IDirect3DTexture1_Vtbl DECLSPEC_HIDDEN;
|
||||
|
||||
HRESULT WINAPI IDirectDrawSurfaceImpl_AddAttachedSurface(IDirectDrawSurfaceImpl *This,
|
||||
IDirectDrawSurfaceImpl *Surf) DECLSPEC_HIDDEN;
|
||||
void IDirectDrawSurfaceImpl_Destroy(IDirectDrawSurfaceImpl *This) DECLSPEC_HIDDEN;
|
||||
void ddraw_surface_destroy(IDirectDrawSurfaceImpl *surface) DECLSPEC_HIDDEN;
|
||||
|
||||
static inline IDirectDrawSurfaceImpl *surface_from_texture1(IDirect3DTexture *iface)
|
||||
{
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,473 +0,0 @@
|
|||
/* IDirectDrawSurface3 -> IDirectDrawSurface7 thunks
|
||||
* 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
#include "wine/port.h"
|
||||
#include "wine/debug.h"
|
||||
#include <stdarg.h>
|
||||
#include <assert.h>
|
||||
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#include "wingdi.h"
|
||||
#include "ddraw.h"
|
||||
#include "winerror.h"
|
||||
|
||||
#include "ddraw_private.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(ddraw_thunk);
|
||||
WINE_DECLARE_DEBUG_CHANNEL(ddraw);
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_QueryInterface(LPDIRECTDRAWSURFACE3 This, REFIID iid,
|
||||
LPVOID *ppObj)
|
||||
{
|
||||
return IDirectDrawSurface7_QueryInterface((IDirectDrawSurface7 *)surface_from_surface3(This), iid, ppObj);
|
||||
}
|
||||
|
||||
static ULONG WINAPI
|
||||
IDirectDrawSurface3Impl_AddRef(LPDIRECTDRAWSURFACE3 This)
|
||||
{
|
||||
return IDirectDrawSurface7_AddRef((IDirectDrawSurface7 *)surface_from_surface3(This));
|
||||
}
|
||||
|
||||
static ULONG WINAPI
|
||||
IDirectDrawSurface3Impl_Release(LPDIRECTDRAWSURFACE3 iface)
|
||||
{
|
||||
IDirectDrawSurfaceImpl *This = surface_from_surface3(iface);
|
||||
TRACE("(%p)\n", This);
|
||||
return IDirectDrawSurface7_Release((IDirectDrawSurface7 *)surface_from_surface3(iface));
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_AddAttachedSurface(LPDIRECTDRAWSURFACE3 iface,
|
||||
LPDIRECTDRAWSURFACE3 pAttach)
|
||||
{
|
||||
IDirectDrawSurfaceImpl *This = surface_from_surface3(iface);
|
||||
IDirectDrawSurfaceImpl *Surf = surface_from_surface3(pAttach);
|
||||
TRACE("(%p)->(%p)\n", This, Surf);
|
||||
|
||||
/* Tests suggest that
|
||||
* -> offscreen plain surfaces can be attached to other offscreen plain surfaces
|
||||
* -> offscreen plain surfaces can be attached to primaries
|
||||
* -> primaries can be attached to offscreen plain surfaces
|
||||
* -> z buffers can be attached to primaries
|
||||
*
|
||||
*/
|
||||
if(This->surface_desc.ddsCaps.dwCaps & (DDSCAPS_PRIMARYSURFACE | DDSCAPS_OFFSCREENPLAIN) &&
|
||||
Surf->surface_desc.ddsCaps.dwCaps & (DDSCAPS_PRIMARYSURFACE | DDSCAPS_OFFSCREENPLAIN))
|
||||
{
|
||||
/* Sizes have to match */
|
||||
if(Surf->surface_desc.dwWidth != This->surface_desc.dwWidth ||
|
||||
Surf->surface_desc.dwHeight != This->surface_desc.dwHeight)
|
||||
{
|
||||
WARN("Surface sizes do not match\n");
|
||||
return DDERR_CANNOTATTACHSURFACE;
|
||||
}
|
||||
/* OK */
|
||||
}
|
||||
else if(This->surface_desc.ddsCaps.dwCaps & (DDSCAPS_PRIMARYSURFACE | DDSCAPS_3DDEVICE) &&
|
||||
Surf->surface_desc.ddsCaps.dwCaps & (DDSCAPS_ZBUFFER))
|
||||
{
|
||||
/* OK */
|
||||
}
|
||||
else
|
||||
{
|
||||
WARN("Invalid attachment combination\n");
|
||||
return DDERR_CANNOTATTACHSURFACE;
|
||||
}
|
||||
|
||||
return IDirectDrawSurfaceImpl_AddAttachedSurface(This,
|
||||
Surf);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_AddOverlayDirtyRect(LPDIRECTDRAWSURFACE3 This,
|
||||
LPRECT pRect)
|
||||
{
|
||||
return IDirectDrawSurface7_AddOverlayDirtyRect((IDirectDrawSurface7 *)surface_from_surface3(This), pRect);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_Blt(LPDIRECTDRAWSURFACE3 This, LPRECT prcDst,
|
||||
LPDIRECTDRAWSURFACE3 pSrcSurf, LPRECT prcSrc,
|
||||
DWORD dwFlags, LPDDBLTFX pFX)
|
||||
{
|
||||
return IDirectDrawSurface7_Blt((IDirectDrawSurface7 *)surface_from_surface3(This), prcDst,
|
||||
pSrcSurf ? (IDirectDrawSurface7 *)surface_from_surface3(pSrcSurf) : NULL, prcSrc, dwFlags, pFX);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_BltBatch(LPDIRECTDRAWSURFACE3 This,
|
||||
LPDDBLTBATCH pBatch, DWORD dwCount,
|
||||
DWORD dwFlags)
|
||||
{
|
||||
return IDirectDrawSurface7_BltBatch((IDirectDrawSurface7 *)surface_from_surface3(This), pBatch, dwCount, dwFlags);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_BltFast(LPDIRECTDRAWSURFACE3 This, DWORD x, DWORD y,
|
||||
LPDIRECTDRAWSURFACE3 pSrcSurf, LPRECT prcSrc,
|
||||
DWORD dwTrans)
|
||||
{
|
||||
return IDirectDrawSurface7_BltFast((IDirectDrawSurface7 *)surface_from_surface3(This), x, y,
|
||||
pSrcSurf ? (IDirectDrawSurface7 *)surface_from_surface3(pSrcSurf) : NULL, prcSrc, dwTrans);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_DeleteAttachedSurface(LPDIRECTDRAWSURFACE3 This,
|
||||
DWORD dwFlags,
|
||||
LPDIRECTDRAWSURFACE3 pAttached)
|
||||
{
|
||||
return IDirectDrawSurface7_DeleteAttachedSurface((IDirectDrawSurface7 *)surface_from_surface3(This), dwFlags,
|
||||
pAttached ? (IDirectDrawSurface7 *)surface_from_surface3(pAttached) : NULL);
|
||||
}
|
||||
|
||||
struct callback_info
|
||||
{
|
||||
LPDDENUMSURFACESCALLBACK callback;
|
||||
LPVOID context;
|
||||
};
|
||||
|
||||
static HRESULT CALLBACK
|
||||
EnumCallback(LPDIRECTDRAWSURFACE7 iface, LPDDSURFACEDESC2 pDDSD,
|
||||
LPVOID context)
|
||||
{
|
||||
const struct callback_info* info = context;
|
||||
|
||||
return info->callback((IDirectDrawSurface *)&((IDirectDrawSurfaceImpl *)iface)->IDirectDrawSurface3_vtbl,
|
||||
(DDSURFACEDESC *)pDDSD, info->context);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_EnumAttachedSurfaces(LPDIRECTDRAWSURFACE3 This,
|
||||
LPVOID context,
|
||||
LPDDENUMSURFACESCALLBACK callback)
|
||||
{
|
||||
struct callback_info info;
|
||||
|
||||
info.callback = callback;
|
||||
info.context = context;
|
||||
|
||||
return IDirectDrawSurface7_EnumAttachedSurfaces((IDirectDrawSurface7 *)surface_from_surface3(This),
|
||||
&info, EnumCallback);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_EnumOverlayZOrders(LPDIRECTDRAWSURFACE3 This,
|
||||
DWORD dwFlags, LPVOID context,
|
||||
LPDDENUMSURFACESCALLBACK callback)
|
||||
{
|
||||
struct callback_info info;
|
||||
|
||||
info.callback = callback;
|
||||
info.context = context;
|
||||
|
||||
return IDirectDrawSurface7_EnumOverlayZOrders((IDirectDrawSurface7 *)surface_from_surface3(This),
|
||||
dwFlags, &info, EnumCallback);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_Flip(LPDIRECTDRAWSURFACE3 This,
|
||||
LPDIRECTDRAWSURFACE3 pOverride, DWORD dwFlags)
|
||||
{
|
||||
return IDirectDrawSurface7_Flip((IDirectDrawSurface7 *)surface_from_surface3(This),
|
||||
pOverride ? (IDirectDrawSurface7 *)surface_from_surface3(pOverride) : NULL, dwFlags);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_GetAttachedSurface(LPDIRECTDRAWSURFACE3 This,
|
||||
LPDDSCAPS pCaps,
|
||||
LPDIRECTDRAWSURFACE3* ppAttached)
|
||||
{
|
||||
DDSCAPS2 caps;
|
||||
LPDIRECTDRAWSURFACE7 pAttached7;
|
||||
HRESULT hr;
|
||||
|
||||
caps.dwCaps = pCaps->dwCaps;
|
||||
caps.dwCaps2 = 0;
|
||||
caps.dwCaps3 = 0;
|
||||
caps.dwCaps4 = 0;
|
||||
|
||||
hr = IDirectDrawSurface7_GetAttachedSurface((IDirectDrawSurface7 *)surface_from_surface3(This), &caps, &pAttached7);
|
||||
if (FAILED(hr)) *ppAttached = NULL;
|
||||
else *ppAttached = pAttached7 ?
|
||||
(IDirectDrawSurface3 *)&((IDirectDrawSurfaceImpl *)pAttached7)->IDirectDrawSurface3_vtbl : NULL;
|
||||
return hr;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_GetBltStatus(LPDIRECTDRAWSURFACE3 This, DWORD dwFlags)
|
||||
{
|
||||
return IDirectDrawSurface7_GetBltStatus((IDirectDrawSurface7 *)surface_from_surface3(This), dwFlags);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_GetCaps(LPDIRECTDRAWSURFACE3 This, LPDDSCAPS pCaps)
|
||||
{
|
||||
DDSCAPS2 caps;
|
||||
HRESULT hr;
|
||||
|
||||
hr = IDirectDrawSurface7_GetCaps((IDirectDrawSurface7 *)surface_from_surface3(This), &caps);
|
||||
if (FAILED(hr)) return hr;
|
||||
|
||||
pCaps->dwCaps = caps.dwCaps;
|
||||
return hr;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_GetClipper(LPDIRECTDRAWSURFACE3 This,
|
||||
LPDIRECTDRAWCLIPPER* ppClipper)
|
||||
{
|
||||
return IDirectDrawSurface7_GetClipper((IDirectDrawSurface7 *)surface_from_surface3(This), ppClipper);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_GetColorKey(LPDIRECTDRAWSURFACE3 This, DWORD dwFlags,
|
||||
LPDDCOLORKEY pCKey)
|
||||
{
|
||||
return IDirectDrawSurface7_GetColorKey((IDirectDrawSurface7 *)surface_from_surface3(This), dwFlags, pCKey);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_GetDC(LPDIRECTDRAWSURFACE3 This, HDC* phDC)
|
||||
{
|
||||
return IDirectDrawSurface7_GetDC((IDirectDrawSurface7 *)surface_from_surface3(This), phDC);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_GetFlipStatus(LPDIRECTDRAWSURFACE3 This, DWORD dwFlags)
|
||||
{
|
||||
return IDirectDrawSurface7_GetFlipStatus((IDirectDrawSurface7 *)surface_from_surface3(This), dwFlags);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_GetOverlayPosition(LPDIRECTDRAWSURFACE3 This, LPLONG pX,
|
||||
LPLONG pY)
|
||||
{
|
||||
return IDirectDrawSurface7_GetOverlayPosition((IDirectDrawSurface7 *)surface_from_surface3(This), pX, pY);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_GetPalette(LPDIRECTDRAWSURFACE3 This,
|
||||
LPDIRECTDRAWPALETTE* ppPalette)
|
||||
{
|
||||
return IDirectDrawSurface7_GetPalette((IDirectDrawSurface7 *)surface_from_surface3(This), ppPalette);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_GetPixelFormat(LPDIRECTDRAWSURFACE3 This,
|
||||
LPDDPIXELFORMAT pPixelFormat)
|
||||
{
|
||||
return IDirectDrawSurface7_GetPixelFormat((IDirectDrawSurface7 *)surface_from_surface3(This), pPixelFormat);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_GetSurfaceDesc(LPDIRECTDRAWSURFACE3 iface,
|
||||
LPDDSURFACEDESC pDDSD)
|
||||
{
|
||||
IDirectDrawSurfaceImpl *This = surface_from_surface3(iface);
|
||||
|
||||
TRACE_(ddraw)("(%p)->(%p)\n",This,pDDSD);
|
||||
|
||||
if(!pDDSD)
|
||||
return DDERR_INVALIDPARAMS;
|
||||
|
||||
if (pDDSD->dwSize != sizeof(DDSURFACEDESC))
|
||||
{
|
||||
WARN("Incorrect struct size %d, returning DDERR_INVALIDPARAMS\n",pDDSD->dwSize);
|
||||
return DDERR_INVALIDPARAMS;
|
||||
}
|
||||
|
||||
EnterCriticalSection(&ddraw_cs);
|
||||
DD_STRUCT_COPY_BYSIZE(pDDSD,(DDSURFACEDESC *) &This->surface_desc);
|
||||
TRACE("Returning surface desc:\n");
|
||||
if (TRACE_ON(ddraw))
|
||||
{
|
||||
/* DDRAW_dump_surface_desc handles the smaller size */
|
||||
DDRAW_dump_surface_desc((DDSURFACEDESC2 *) pDDSD);
|
||||
}
|
||||
|
||||
LeaveCriticalSection(&ddraw_cs);
|
||||
return DD_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_Initialize(LPDIRECTDRAWSURFACE3 This, LPDIRECTDRAW pDD,
|
||||
LPDDSURFACEDESC pDDSD)
|
||||
{
|
||||
return IDirectDrawSurface7_Initialize((IDirectDrawSurface7 *)surface_from_surface3(This),
|
||||
pDD, (LPDDSURFACEDESC2)pDDSD);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_IsLost(LPDIRECTDRAWSURFACE3 This)
|
||||
{
|
||||
return IDirectDrawSurface7_IsLost((IDirectDrawSurface7 *)surface_from_surface3(This));
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_Lock(LPDIRECTDRAWSURFACE3 This, LPRECT pRect,
|
||||
LPDDSURFACEDESC pDDSD, DWORD dwFlags, HANDLE h)
|
||||
{
|
||||
return IDirectDrawSurface7_Lock((IDirectDrawSurface7 *)surface_from_surface3(This),
|
||||
pRect, (LPDDSURFACEDESC2)pDDSD, dwFlags, h);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_ReleaseDC(LPDIRECTDRAWSURFACE3 This, HDC hDC)
|
||||
{
|
||||
return IDirectDrawSurface7_ReleaseDC((IDirectDrawSurface7 *)surface_from_surface3(This), hDC);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_Restore(LPDIRECTDRAWSURFACE3 This)
|
||||
{
|
||||
return IDirectDrawSurface7_Restore((IDirectDrawSurface7 *)surface_from_surface3(This));
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_SetClipper(LPDIRECTDRAWSURFACE3 This,
|
||||
LPDIRECTDRAWCLIPPER pClipper)
|
||||
{
|
||||
return IDirectDrawSurface7_SetClipper((IDirectDrawSurface7 *)surface_from_surface3(This), pClipper);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_SetColorKey(LPDIRECTDRAWSURFACE3 This, DWORD dwFlags,
|
||||
LPDDCOLORKEY pCKey)
|
||||
{
|
||||
return IDirectDrawSurface7_SetColorKey((IDirectDrawSurface7 *)surface_from_surface3(This), dwFlags, pCKey);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_SetOverlayPosition(LPDIRECTDRAWSURFACE3 This, LONG x,
|
||||
LONG y)
|
||||
{
|
||||
return IDirectDrawSurface7_SetOverlayPosition((IDirectDrawSurface7 *)surface_from_surface3(This), x, y);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_SetPalette(LPDIRECTDRAWSURFACE3 This,
|
||||
LPDIRECTDRAWPALETTE pPalette)
|
||||
{
|
||||
return IDirectDrawSurface7_SetPalette((IDirectDrawSurface7 *)surface_from_surface3(This), pPalette);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_Unlock(LPDIRECTDRAWSURFACE3 This, LPVOID data)
|
||||
{
|
||||
/* data might not be the LPRECT of later versions, so drop it. */
|
||||
return IDirectDrawSurface7_Unlock((IDirectDrawSurface7 *)surface_from_surface3(This), NULL);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_UpdateOverlay(LPDIRECTDRAWSURFACE3 This, LPRECT prcSrc,
|
||||
LPDIRECTDRAWSURFACE3 pDstSurf,
|
||||
LPRECT prcDst, DWORD dwFlags,
|
||||
LPDDOVERLAYFX pFX)
|
||||
{
|
||||
return IDirectDrawSurface7_UpdateOverlay((IDirectDrawSurface7 *)surface_from_surface3(This), prcSrc,
|
||||
pDstSurf ? (IDirectDrawSurface7 *)surface_from_surface3(pDstSurf) : NULL, prcDst, dwFlags, pFX);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_UpdateOverlayDisplay(LPDIRECTDRAWSURFACE3 This,
|
||||
DWORD dwFlags)
|
||||
{
|
||||
return IDirectDrawSurface7_UpdateOverlayDisplay((IDirectDrawSurface7 *)surface_from_surface3(This), dwFlags);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_UpdateOverlayZOrder(LPDIRECTDRAWSURFACE3 This,
|
||||
DWORD dwFlags,
|
||||
LPDIRECTDRAWSURFACE3 pSurfReference)
|
||||
{
|
||||
return IDirectDrawSurface7_UpdateOverlayZOrder((IDirectDrawSurface7 *)surface_from_surface3(This), dwFlags,
|
||||
pSurfReference ? (IDirectDrawSurface7 *)surface_from_surface3(pSurfReference) : NULL);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_GetDDInterface(LPDIRECTDRAWSURFACE3 This, LPVOID* ppDD)
|
||||
{
|
||||
return IDirectDrawSurface7_GetDDInterface((IDirectDrawSurface7 *)surface_from_surface3(This), ppDD);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_PageLock(LPDIRECTDRAWSURFACE3 This, DWORD dwFlags)
|
||||
{
|
||||
return IDirectDrawSurface7_PageLock((IDirectDrawSurface7 *)surface_from_surface3(This), dwFlags);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_PageUnlock(LPDIRECTDRAWSURFACE3 This, DWORD dwFlags)
|
||||
{
|
||||
return IDirectDrawSurface7_PageUnlock((IDirectDrawSurface7 *)surface_from_surface3(This), dwFlags);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI
|
||||
IDirectDrawSurface3Impl_SetSurfaceDesc(LPDIRECTDRAWSURFACE3 This,
|
||||
LPDDSURFACEDESC pDDSD, DWORD dwFlags)
|
||||
{
|
||||
return IDirectDrawSurface7_SetSurfaceDesc((IDirectDrawSurface7 *)surface_from_surface3(This),
|
||||
(LPDDSURFACEDESC2)pDDSD, dwFlags);
|
||||
}
|
||||
|
||||
const IDirectDrawSurface3Vtbl IDirectDrawSurface3_Vtbl =
|
||||
{
|
||||
IDirectDrawSurface3Impl_QueryInterface,
|
||||
IDirectDrawSurface3Impl_AddRef,
|
||||
IDirectDrawSurface3Impl_Release,
|
||||
IDirectDrawSurface3Impl_AddAttachedSurface,
|
||||
IDirectDrawSurface3Impl_AddOverlayDirtyRect,
|
||||
IDirectDrawSurface3Impl_Blt,
|
||||
IDirectDrawSurface3Impl_BltBatch,
|
||||
IDirectDrawSurface3Impl_BltFast,
|
||||
IDirectDrawSurface3Impl_DeleteAttachedSurface,
|
||||
IDirectDrawSurface3Impl_EnumAttachedSurfaces,
|
||||
IDirectDrawSurface3Impl_EnumOverlayZOrders,
|
||||
IDirectDrawSurface3Impl_Flip,
|
||||
IDirectDrawSurface3Impl_GetAttachedSurface,
|
||||
IDirectDrawSurface3Impl_GetBltStatus,
|
||||
IDirectDrawSurface3Impl_GetCaps,
|
||||
IDirectDrawSurface3Impl_GetClipper,
|
||||
IDirectDrawSurface3Impl_GetColorKey,
|
||||
IDirectDrawSurface3Impl_GetDC,
|
||||
IDirectDrawSurface3Impl_GetFlipStatus,
|
||||
IDirectDrawSurface3Impl_GetOverlayPosition,
|
||||
IDirectDrawSurface3Impl_GetPalette,
|
||||
IDirectDrawSurface3Impl_GetPixelFormat,
|
||||
IDirectDrawSurface3Impl_GetSurfaceDesc,
|
||||
IDirectDrawSurface3Impl_Initialize,
|
||||
IDirectDrawSurface3Impl_IsLost,
|
||||
IDirectDrawSurface3Impl_Lock,
|
||||
IDirectDrawSurface3Impl_ReleaseDC,
|
||||
IDirectDrawSurface3Impl_Restore,
|
||||
IDirectDrawSurface3Impl_SetClipper,
|
||||
IDirectDrawSurface3Impl_SetColorKey,
|
||||
IDirectDrawSurface3Impl_SetOverlayPosition,
|
||||
IDirectDrawSurface3Impl_SetPalette,
|
||||
IDirectDrawSurface3Impl_Unlock,
|
||||
IDirectDrawSurface3Impl_UpdateOverlay,
|
||||
IDirectDrawSurface3Impl_UpdateOverlayDisplay,
|
||||
IDirectDrawSurface3Impl_UpdateOverlayZOrder,
|
||||
IDirectDrawSurface3Impl_GetDDInterface,
|
||||
IDirectDrawSurface3Impl_PageLock,
|
||||
IDirectDrawSurface3Impl_PageUnlock,
|
||||
IDirectDrawSurface3Impl_SetSurfaceDesc
|
||||
};
|
Loading…
Reference in New Issue