Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
03f7a2d8
Commit
03f7a2d8
authored
Nov 18, 2010
by
Henri Verbeet
Committed by
Alexandre Julliard
Nov 23, 2010
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wined3d: Get rid of the remaining "Flags".
parent
b459b917
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
255 additions
and
206 deletions
+255
-206
clipper.c
dlls/wined3d/clipper.c
+6
-6
cubetexture.c
dlls/wined3d/cubetexture.c
+5
-3
device.c
dlls/wined3d/device.c
+22
-18
directx.c
dlls/wined3d/directx.c
+5
-4
palette.c
dlls/wined3d/palette.c
+13
-8
query.c
dlls/wined3d/query.c
+24
-18
resource.c
dlls/wined3d/resource.c
+10
-6
surface.c
dlls/wined3d/surface.c
+50
-47
surface_base.c
dlls/wined3d/surface_base.c
+78
-63
surface_gdi.c
dlls/wined3d/surface_gdi.c
+3
-6
swapchain.c
dlls/wined3d/swapchain.c
+4
-1
swapchain_base.c
dlls/wined3d/swapchain_base.c
+6
-3
swapchain_gdi.c
dlls/wined3d/swapchain_gdi.c
+4
-1
texture.c
dlls/wined3d/texture.c
+5
-3
volume.c
dlls/wined3d/volume.c
+7
-8
volumetexture.c
dlls/wined3d/volumetexture.c
+5
-3
wined3d_private.h
dlls/wined3d/wined3d_private.h
+8
-8
No files found.
dlls/wined3d/clipper.c
View file @
03f7a2d8
...
...
@@ -68,14 +68,14 @@ static ULONG WINAPI IWineD3DClipperImpl_Release(IWineD3DClipper *iface)
return
ref
;
}
static
HRESULT
WINAPI
IWineD3DClipperImpl_SetHwnd
(
IWineD3DClipper
*
iface
,
DWORD
F
lags
,
HWND
hWnd
)
static
HRESULT
WINAPI
IWineD3DClipperImpl_SetHwnd
(
IWineD3DClipper
*
iface
,
DWORD
f
lags
,
HWND
hWnd
)
{
IWineD3DClipperImpl
*
This
=
(
IWineD3DClipperImpl
*
)
iface
;
TRACE
(
"
(%p)->(0x%08x,%p)
\n
"
,
This
,
F
lags
,
hWnd
);
if
(
Flags
)
TRACE
(
"
iface %p, flags %#x, window %p.
\n
"
,
iface
,
f
lags
,
hWnd
);
if
(
flags
)
{
FIXME
(
"
Flags = 0x%08x, not supported.
\n
"
,
F
lags
);
FIXME
(
"
flags %#x, not supported.
\n
"
,
f
lags
);
return
WINED3DERR_INVALIDCALL
;
}
...
...
@@ -128,12 +128,12 @@ static HRESULT WINAPI IWineD3DClipperImpl_GetClipList(IWineD3DClipper *iface, co
}
}
static
HRESULT
WINAPI
IWineD3DClipperImpl_SetClipList
(
IWineD3DClipper
*
iface
,
const
RGNDATA
*
rgn
,
DWORD
F
lags
)
static
HRESULT
WINAPI
IWineD3DClipperImpl_SetClipList
(
IWineD3DClipper
*
iface
,
const
RGNDATA
*
rgn
,
DWORD
f
lags
)
{
static
int
warned
=
0
;
if
(
warned
++
<
10
||
!
rgn
)
FIXME
(
"iface %p, region %p, flags %#x stub!
\n
"
,
iface
,
rgn
,
F
lags
);
FIXME
(
"iface %p, region %p, flags %#x stub!
\n
"
,
iface
,
rgn
,
f
lags
);
return
WINED3D_OK
;
}
...
...
dlls/wined3d/cubetexture.c
View file @
03f7a2d8
...
...
@@ -5,7 +5,7 @@
* Copyright 2002-2005 Raphael Junqueira
* Copyright 2005 Oliver Stieber
* Copyright 2007-2008 Stefan Dösinger for CodeWeavers
* Copyright 2009 Henri Verbeet for CodeWeavers
* Copyright 2009
-2010
Henri Verbeet for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
...
...
@@ -180,8 +180,10 @@ static ULONG WINAPI IWineD3DCubeTextureImpl_Release(IWineD3DCubeTexture *iface)
/* ****************************************************
IWineD3DCubeTexture IWineD3DResource parts follow
**************************************************** */
static
HRESULT
WINAPI
IWineD3DCubeTextureImpl_SetPrivateData
(
IWineD3DCubeTexture
*
iface
,
REFGUID
refguid
,
CONST
void
*
pData
,
DWORD
SizeOfData
,
DWORD
Flags
)
{
return
resource_set_private_data
((
IWineD3DResource
*
)
iface
,
refguid
,
pData
,
SizeOfData
,
Flags
);
static
HRESULT
WINAPI
IWineD3DCubeTextureImpl_SetPrivateData
(
IWineD3DCubeTexture
*
iface
,
REFGUID
riid
,
const
void
*
data
,
DWORD
data_size
,
DWORD
flags
)
{
return
resource_set_private_data
((
IWineD3DResource
*
)
iface
,
riid
,
data
,
data_size
,
flags
);
}
static
HRESULT
WINAPI
IWineD3DCubeTextureImpl_GetPrivateData
(
IWineD3DCubeTexture
*
iface
,
REFGUID
refguid
,
void
*
pData
,
DWORD
*
pSizeOfData
)
{
...
...
dlls/wined3d/device.c
View file @
03f7a2d8
...
...
@@ -1601,7 +1601,7 @@ static HRESULT WINAPI IWineD3DDeviceImpl_CreatePixelShader(IWineD3DDevice *iface
return
WINED3D_OK
;
}
static
HRESULT
WINAPI
IWineD3DDeviceImpl_CreatePalette
(
IWineD3DDevice
*
iface
,
DWORD
F
lags
,
static
HRESULT
WINAPI
IWineD3DDeviceImpl_CreatePalette
(
IWineD3DDevice
*
iface
,
DWORD
f
lags
,
const
PALETTEENTRY
*
PalEnt
,
void
*
parent
,
IWineD3DPalette
**
Palette
)
{
IWineD3DDeviceImpl
*
This
=
(
IWineD3DDeviceImpl
*
)
iface
;
...
...
@@ -1609,7 +1609,7 @@ static HRESULT WINAPI IWineD3DDeviceImpl_CreatePalette(IWineD3DDevice *iface, DW
HRESULT
hr
;
TRACE
(
"iface %p, flags %#x, entries %p, palette %p, parent %p.
\n
"
,
iface
,
F
lags
,
PalEnt
,
Palette
,
parent
);
iface
,
f
lags
,
PalEnt
,
Palette
,
parent
);
object
=
HeapAlloc
(
GetProcessHeap
(),
HEAP_ZERO_MEMORY
,
sizeof
(
*
object
));
if
(
!
object
)
...
...
@@ -1618,7 +1618,7 @@ static HRESULT WINAPI IWineD3DDeviceImpl_CreatePalette(IWineD3DDevice *iface, DW
return
E_OUTOFMEMORY
;
}
hr
=
wined3d_palette_init
(
object
,
This
,
F
lags
,
PalEnt
,
parent
);
hr
=
wined3d_palette_init
(
object
,
This
,
f
lags
,
PalEnt
,
parent
);
if
(
FAILED
(
hr
))
{
WARN
(
"Failed to initialize palette, hr %#x.
\n
"
,
hr
);
...
...
@@ -2451,7 +2451,7 @@ static HRESULT WINAPI IWineD3DDeviceImpl_GetStreamSource(IWineD3DDevice *iface,
static
HRESULT
WINAPI
IWineD3DDeviceImpl_SetStreamSourceFreq
(
IWineD3DDevice
*
iface
,
UINT
StreamNumber
,
UINT
Divider
)
{
IWineD3DDeviceImpl
*
This
=
(
IWineD3DDeviceImpl
*
)
iface
;
struct
wined3d_stream_state
*
stream
;
UINT
old
F
lags
,
oldFreq
;
UINT
old
_f
lags
,
oldFreq
;
TRACE
(
"iface %p, stream_idx %u, divider %#x.
\n
"
,
iface
,
StreamNumber
,
Divider
);
...
...
@@ -2473,7 +2473,7 @@ static HRESULT WINAPI IWineD3DDeviceImpl_SetStreamSourceFreq(IWineD3DDevice *ifa
}
stream
=
&
This
->
updateStateBlock
->
state
.
streams
[
StreamNumber
];
old
F
lags
=
stream
->
flags
;
old
_f
lags
=
stream
->
flags
;
oldFreq
=
stream
->
frequency
;
stream
->
flags
=
Divider
&
(
WINED3DSTREAMSOURCE_INSTANCEDATA
|
WINED3DSTREAMSOURCE_INDEXEDDATA
);
...
...
@@ -2481,7 +2481,7 @@ static HRESULT WINAPI IWineD3DDeviceImpl_SetStreamSourceFreq(IWineD3DDevice *ifa
This
->
updateStateBlock
->
changed
.
streamFreq
|=
1
<<
StreamNumber
;
if
(
stream
->
frequency
!=
oldFreq
||
stream
->
flags
!=
old
F
lags
)
if
(
stream
->
frequency
!=
oldFreq
||
stream
->
flags
!=
old
_f
lags
)
IWineD3DDeviceImpl_MarkStateDirty
(
This
,
STATE_STREAMSRC
);
return
WINED3D_OK
;
...
...
@@ -3894,7 +3894,7 @@ static HRESULT WINAPI IWineD3DDeviceImpl_GetPixelShaderConstantF(
/* Do not call while under the GL lock. */
#define copy_and_next(dest, src, size) memcpy(dest, src, size); dest += (size)
static
HRESULT
process_vertices_strided
(
IWineD3DDeviceImpl
*
This
,
DWORD
dwDestIndex
,
DWORD
dwCount
,
const
struct
wined3d_stream_info
*
stream_info
,
struct
wined3d_buffer
*
dest
,
DWORD
dwF
lags
,
const
struct
wined3d_stream_info
*
stream_info
,
struct
wined3d_buffer
*
dest
,
DWORD
f
lags
,
DWORD
DestFVF
)
{
const
struct
wined3d_gl_info
*
gl_info
=
&
This
->
adapter
->
gl_info
;
...
...
@@ -4237,7 +4237,7 @@ static HRESULT process_vertices_strided(IWineD3DDeviceImpl *This, DWORD dwDestIn
/* Do not call while under the GL lock. */
static
HRESULT
WINAPI
IWineD3DDeviceImpl_ProcessVertices
(
IWineD3DDevice
*
iface
,
UINT
SrcStartIndex
,
UINT
DestIndex
,
UINT
VertexCount
,
IWineD3DBuffer
*
pDestBuffer
,
IWineD3DVertexDeclaration
*
pVertexDecl
,
DWORD
F
lags
,
UINT
VertexCount
,
IWineD3DBuffer
*
pDestBuffer
,
IWineD3DVertexDeclaration
*
pVertexDecl
,
DWORD
f
lags
,
DWORD
DestFVF
)
{
IWineD3DDeviceImpl
*
This
=
(
IWineD3DDeviceImpl
*
)
iface
;
...
...
@@ -4247,7 +4247,7 @@ static HRESULT WINAPI IWineD3DDeviceImpl_ProcessVertices(IWineD3DDevice *iface,
BOOL
vbo
=
FALSE
,
streamWasUP
=
This
->
stateBlock
->
state
.
user_stream
;
HRESULT
hr
;
TRACE
(
"(%p)->(%d,%d,%d,%p,%p,%d
\n
"
,
This
,
SrcStartIndex
,
DestIndex
,
VertexCount
,
pDestBuffer
,
pVertexDecl
,
F
lags
);
TRACE
(
"(%p)->(%d,%d,%d,%p,%p,%d
\n
"
,
This
,
SrcStartIndex
,
DestIndex
,
VertexCount
,
pDestBuffer
,
pVertexDecl
,
f
lags
);
if
(
pVertexDecl
)
{
ERR
(
"Output vertex declaration not implemented yet
\n
"
);
...
...
@@ -4293,7 +4293,7 @@ static HRESULT WINAPI IWineD3DDeviceImpl_ProcessVertices(IWineD3DDevice *iface,
}
hr
=
process_vertices_strided
(
This
,
DestIndex
,
VertexCount
,
&
stream_info
,
(
struct
wined3d_buffer
*
)
pDestBuffer
,
F
lags
,
DestFVF
);
(
struct
wined3d_buffer
*
)
pDestBuffer
,
f
lags
,
DestFVF
);
context_release
(
context
);
...
...
@@ -6008,15 +6008,16 @@ static HRESULT WINAPI IWineD3DDeviceImpl_SetCursorProperties(IWineD3DDevice *ifa
return
WINED3D_OK
;
}
static
void
WINAPI
IWineD3DDeviceImpl_SetCursorPosition
(
IWineD3DDevice
*
iface
,
int
XScreenSpace
,
int
YScreenSpace
,
DWORD
Flags
)
{
static
void
WINAPI
IWineD3DDeviceImpl_SetCursorPosition
(
IWineD3DDevice
*
iface
,
int
XScreenSpace
,
int
YScreenSpace
,
DWORD
flags
)
{
IWineD3DDeviceImpl
*
This
=
(
IWineD3DDeviceImpl
*
)
iface
;
TRACE
(
"(%p) : SetPos to (%u,%u)
\n
"
,
This
,
XScreenSpace
,
YScreenSpace
);
TRACE
(
"iface %p, x %d, y %d, flags %#x.
\n
"
,
iface
,
XScreenSpace
,
YScreenSpace
,
flags
);
This
->
xScreenSpace
=
XScreenSpace
;
This
->
yScreenSpace
=
YScreenSpace
;
return
;
}
static
BOOL
WINAPI
IWineD3DDeviceImpl_ShowCursor
(
IWineD3DDevice
*
iface
,
BOOL
bShow
)
{
...
...
@@ -6560,13 +6561,16 @@ static HRESULT WINAPI IWineD3DDeviceImpl_GetCreationParameters(IWineD3DDevice
return
WINED3D_OK
;
}
static
void
WINAPI
IWineD3DDeviceImpl_SetGammaRamp
(
IWineD3DDevice
*
iface
,
UINT
iSwapChain
,
DWORD
Flags
,
CONST
WINED3DGAMMARAMP
*
pRamp
)
{
static
void
WINAPI
IWineD3DDeviceImpl_SetGammaRamp
(
IWineD3DDevice
*
iface
,
UINT
iSwapChain
,
DWORD
flags
,
const
WINED3DGAMMARAMP
*
pRamp
)
{
IWineD3DSwapChain
*
swapchain
;
TRACE
(
"Relaying to swapchain
\n
"
);
if
(
IWineD3DDeviceImpl_GetSwapChain
(
iface
,
iSwapChain
,
&
swapchain
)
==
WINED3D_OK
)
{
IWineD3DSwapChain_SetGammaRamp
(
swapchain
,
Flags
,
pRamp
);
if
(
IWineD3DDeviceImpl_GetSwapChain
(
iface
,
iSwapChain
,
&
swapchain
)
==
WINED3D_OK
)
{
IWineD3DSwapChain_SetGammaRamp
(
swapchain
,
flags
,
pRamp
);
IWineD3DSwapChain_Release
(
swapchain
);
}
}
...
...
dlls/wined3d/directx.c
View file @
03f7a2d8
...
...
@@ -2782,13 +2782,14 @@ static HRESULT WINAPI IWineD3DImpl_GetAdapterDisplayMode(IWineD3D *iface, UINT A
/* NOTE: due to structure differences between dx8 and dx9 D3DADAPTER_IDENTIFIER,
and fields being inserted in the middle, a new structure is used in place */
static
HRESULT
WINAPI
IWineD3DImpl_GetAdapterIdentifier
(
IWineD3D
*
iface
,
UINT
Adapter
,
DWORD
Flags
,
WINED3DADAPTER_IDENTIFIER
*
pIdentifier
)
{
static
HRESULT
WINAPI
IWineD3DImpl_GetAdapterIdentifier
(
IWineD3D
*
iface
,
UINT
Adapter
,
DWORD
flags
,
WINED3DADAPTER_IDENTIFIER
*
pIdentifier
)
{
IWineD3DImpl
*
This
=
(
IWineD3DImpl
*
)
iface
;
struct
wined3d_adapter
*
adapter
;
size_t
len
;
TRACE_
(
d3d_caps
)(
"(%p}->(Adapter: %d,
Flags: %x, pId=%p)
\n
"
,
This
,
Adapter
,
F
lags
,
pIdentifier
);
TRACE_
(
d3d_caps
)(
"(%p}->(Adapter: %d,
flags: %x, pId=%p)
\n
"
,
This
,
Adapter
,
f
lags
,
pIdentifier
);
if
(
Adapter
>=
IWineD3D_GetAdapterCount
(
iface
))
{
return
WINED3DERR_INVALIDCALL
;
...
...
@@ -2838,7 +2839,7 @@ static HRESULT WINAPI IWineD3DImpl_GetAdapterIdentifier(IWineD3D *iface, UINT Ad
pIdentifier
->
subsystem_id
=
0
;
pIdentifier
->
revision
=
0
;
memcpy
(
&
pIdentifier
->
device_identifier
,
&
IID_D3DDEVICE_D3DUID
,
sizeof
(
pIdentifier
->
device_identifier
));
pIdentifier
->
whql_level
=
(
F
lags
&
WINED3DENUM_NO_WHQL_LEVEL
)
?
0
:
1
;
pIdentifier
->
whql_level
=
(
f
lags
&
WINED3DENUM_NO_WHQL_LEVEL
)
?
0
:
1
;
memcpy
(
&
pIdentifier
->
adapter_luid
,
&
adapter
->
luid
,
sizeof
(
pIdentifier
->
adapter_luid
));
pIdentifier
->
video_memory
=
adapter
->
TextureRam
;
...
...
dlls/wined3d/palette.c
View file @
03f7a2d8
...
...
@@ -74,25 +74,29 @@ static ULONG WINAPI IWineD3DPaletteImpl_Release(IWineD3DPalette *iface) {
}
/* Not called from the vtable */
static
WORD
IWineD3DPaletteImpl_Size
(
DWORD
dwF
lags
)
static
WORD
IWineD3DPaletteImpl_Size
(
DWORD
f
lags
)
{
switch
(
dwFlags
&
SIZE_BITS
)
{
switch
(
flags
&
SIZE_BITS
)
{
case
WINEDDPCAPS_1BIT
:
return
2
;
case
WINEDDPCAPS_2BIT
:
return
4
;
case
WINEDDPCAPS_4BIT
:
return
16
;
case
WINEDDPCAPS_8BIT
:
return
256
;
default:
FIXME
(
"Unhandled size bits %#x.
\n
"
,
dwF
lags
&
SIZE_BITS
);
FIXME
(
"Unhandled size bits %#x.
\n
"
,
f
lags
&
SIZE_BITS
);
return
256
;
}
}
static
HRESULT
WINAPI
IWineD3DPaletteImpl_GetEntries
(
IWineD3DPalette
*
iface
,
DWORD
Flags
,
DWORD
Start
,
DWORD
Count
,
PALETTEENTRY
*
PalEnt
)
{
static
HRESULT
WINAPI
IWineD3DPaletteImpl_GetEntries
(
IWineD3DPalette
*
iface
,
DWORD
flags
,
DWORD
Start
,
DWORD
Count
,
PALETTEENTRY
*
PalEnt
)
{
IWineD3DPaletteImpl
*
This
=
(
IWineD3DPaletteImpl
*
)
iface
;
TRACE
(
"(%p)->(%08x,%d,%d,%p)
\n
"
,
This
,
Flags
,
Start
,
Count
,
PalEnt
);
TRACE
(
"iface %p, flags %#x, start %u, count %u, entries %p.
\n
"
,
iface
,
flags
,
Start
,
Count
,
PalEnt
);
if
(
F
lags
)
return
WINED3DERR_INVALIDCALL
;
/* unchecked */
if
(
f
lags
)
return
WINED3DERR_INVALIDCALL
;
/* unchecked */
if
(
Start
+
Count
>
IWineD3DPaletteImpl_Size
(
This
->
flags
))
return
WINED3DERR_INVALIDCALL
;
...
...
@@ -111,12 +115,13 @@ static HRESULT WINAPI IWineD3DPaletteImpl_GetEntries(IWineD3DPalette *iface, DW
}
static
HRESULT
WINAPI
IWineD3DPaletteImpl_SetEntries
(
IWineD3DPalette
*
iface
,
DWORD
F
lags
,
DWORD
Start
,
DWORD
Count
,
const
PALETTEENTRY
*
PalEnt
)
DWORD
f
lags
,
DWORD
Start
,
DWORD
Count
,
const
PALETTEENTRY
*
PalEnt
)
{
IWineD3DPaletteImpl
*
This
=
(
IWineD3DPaletteImpl
*
)
iface
;
IWineD3DResourceImpl
*
res
;
TRACE
(
"(%p)->(%08x,%d,%d,%p)
\n
"
,
This
,
Flags
,
Start
,
Count
,
PalEnt
);
TRACE
(
"iface %p, flags %#x, start %u, count %u, entries %p.
\n
"
,
iface
,
flags
,
Start
,
Count
,
PalEnt
);
TRACE
(
"Palette flags: %#x.
\n
"
,
This
->
flags
);
if
(
This
->
flags
&
WINEDDPCAPS_8BITENTRIES
)
...
...
dlls/wined3d/query.c
View file @
03f7a2d8
...
...
@@ -3,7 +3,7 @@
*
* Copyright 2005 Oliver Stieber
* Copyright 2007-2008 Stefan Dösinger for CodeWeavers
* Copyright 2009 Henri Verbeet for CodeWeavers.
* Copyright 2009
-2010
Henri Verbeet for CodeWeavers.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
...
...
@@ -284,7 +284,9 @@ static ULONG WINAPI IWineD3DQueryImpl_Release(IWineD3DQuery *iface) {
return
ref
;
}
static
HRESULT
WINAPI
IWineD3DOcclusionQueryImpl_GetData
(
IWineD3DQuery
*
iface
,
void
*
pData
,
DWORD
dwSize
,
DWORD
dwGetDataFlags
)
{
static
HRESULT
WINAPI
IWineD3DOcclusionQueryImpl_GetData
(
IWineD3DQuery
*
iface
,
void
*
pData
,
DWORD
dwSize
,
DWORD
flags
)
{
IWineD3DQueryImpl
*
This
=
(
IWineD3DQueryImpl
*
)
iface
;
struct
wined3d_occlusion_query
*
query
=
This
->
extendedData
;
IWineD3DDeviceImpl
*
device
=
This
->
device
;
...
...
@@ -295,7 +297,7 @@ static HRESULT WINAPI IWineD3DOcclusionQueryImpl_GetData(IWineD3DQuery* iface,
GLuint
samples
;
HRESULT
res
;
TRACE
(
"(%p) : type D3DQUERY_OCCLUSION, pData %p, dwSize %#x,
dwGetDataFlags %#x
\n
"
,
This
,
pData
,
dwSize
,
dwGetDataF
lags
);
TRACE
(
"(%p) : type D3DQUERY_OCCLUSION, pData %p, dwSize %#x,
flags %#x.
\n
"
,
This
,
pData
,
dwSize
,
f
lags
);
if
(
!
query
->
context
)
This
->
state
=
QUERY_CREATED
;
...
...
@@ -359,13 +361,15 @@ static HRESULT WINAPI IWineD3DOcclusionQueryImpl_GetData(IWineD3DQuery* iface,
return
res
;
}
static
HRESULT
WINAPI
IWineD3DEventQueryImpl_GetData
(
IWineD3DQuery
*
iface
,
void
*
pData
,
DWORD
dwSize
,
DWORD
dwGetDataFlags
)
{
static
HRESULT
WINAPI
IWineD3DEventQueryImpl_GetData
(
IWineD3DQuery
*
iface
,
void
*
pData
,
DWORD
dwSize
,
DWORD
flags
)
{
IWineD3DQueryImpl
*
This
=
(
IWineD3DQueryImpl
*
)
iface
;
struct
wined3d_event_query
*
query
=
This
->
extendedData
;
BOOL
*
data
=
pData
;
enum
wined3d_event_query_result
ret
;
TRACE
(
"(%p) : type D3DQUERY_EVENT, pData %p, dwSize %#x,
dwGetDataFlags %#x
\n
"
,
This
,
pData
,
dwSize
,
dwGetDataF
lags
);
TRACE
(
"(%p) : type D3DQUERY_EVENT, pData %p, dwSize %#x,
flags %#x.
\n
"
,
This
,
pData
,
dwSize
,
f
lags
);
if
(
!
pData
||
!
dwSize
)
return
S_OK
;
if
(
!
query
)
...
...
@@ -417,11 +421,12 @@ static WINED3DQUERYTYPE WINAPI IWineD3DQueryImpl_GetType(IWineD3DQuery* iface){
return
This
->
type
;
}
static
HRESULT
WINAPI
IWineD3DEventQueryImpl_Issue
(
IWineD3DQuery
*
iface
,
DWORD
dwIssueFlags
)
{
static
HRESULT
WINAPI
IWineD3DEventQueryImpl_Issue
(
IWineD3DQuery
*
iface
,
DWORD
flags
)
{
IWineD3DQueryImpl
*
This
=
(
IWineD3DQueryImpl
*
)
iface
;
TRACE
(
"(%p) :
dwIssueFlags %#x, type D3DQUERY_EVENT
\n
"
,
This
,
dwIssueF
lags
);
if
(
dwIssueF
lags
&
WINED3DISSUE_END
)
TRACE
(
"(%p) :
flags %#x, type D3DQUERY_EVENT
\n
"
,
This
,
f
lags
);
if
(
f
lags
&
WINED3DISSUE_END
)
{
struct
wined3d_event_query
*
query
=
This
->
extendedData
;
...
...
@@ -430,22 +435,22 @@ static HRESULT WINAPI IWineD3DEventQueryImpl_Issue(IWineD3DQuery* iface, DWORD
wined3d_event_query_issue
(
query
,
This
->
device
);
}
else
if
(
dwIssueF
lags
&
WINED3DISSUE_BEGIN
)
else
if
(
f
lags
&
WINED3DISSUE_BEGIN
)
{
/* Started implicitly at device creation */
ERR
(
"Event query issued with START flag - what to do?
\n
"
);
}
if
(
dwIssueFlags
&
WINED3DISSUE_BEGIN
)
{
if
(
flags
&
WINED3DISSUE_BEGIN
)
This
->
state
=
QUERY_BUILDING
;
}
else
{
else
This
->
state
=
QUERY_SIGNALLED
;
}
return
WINED3D_OK
;
}
static
HRESULT
WINAPI
IWineD3DOcclusionQueryImpl_Issue
(
IWineD3DQuery
*
iface
,
DWORD
dwIssueFlags
)
{
static
HRESULT
WINAPI
IWineD3DOcclusionQueryImpl_Issue
(
IWineD3DQuery
*
iface
,
DWORD
flags
)
{
IWineD3DQueryImpl
*
This
=
(
IWineD3DQueryImpl
*
)
iface
;
IWineD3DDeviceImpl
*
device
=
This
->
device
;
const
struct
wined3d_gl_info
*
gl_info
=
&
device
->
adapter
->
gl_info
;
...
...
@@ -456,7 +461,7 @@ static HRESULT WINAPI IWineD3DOcclusionQueryImpl_Issue(IWineD3DQuery* iface, D
struct
wined3d_context
*
context
;
/* This is allowed according to msdn and our tests. Reset the query and restart */
if
(
dwIssueF
lags
&
WINED3DISSUE_BEGIN
)
if
(
f
lags
&
WINED3DISSUE_BEGIN
)
{
if
(
This
->
state
==
QUERY_BUILDING
)
{
...
...
@@ -492,7 +497,8 @@ static HRESULT WINAPI IWineD3DOcclusionQueryImpl_Issue(IWineD3DQuery* iface, D
context_release
(
context
);
}
if
(
dwIssueFlags
&
WINED3DISSUE_END
)
{
if
(
flags
&
WINED3DISSUE_END
)
{
/* Msdn says _END on a non-building occlusion query returns an error, but
* our tests show that it returns OK. But OpenGL doesn't like it, so avoid
* generating an error
...
...
@@ -520,11 +526,11 @@ static HRESULT WINAPI IWineD3DOcclusionQueryImpl_Issue(IWineD3DQuery* iface, D
FIXME
(
"(%p) : Occlusion queries not supported
\n
"
,
This
);
}
if
(
dwIssueFlags
&
WINED3DISSUE_BEGIN
)
{
if
(
flags
&
WINED3DISSUE_BEGIN
)
This
->
state
=
QUERY_BUILDING
;
}
else
{
else
This
->
state
=
QUERY_SIGNALLED
;
}
return
WINED3D_OK
;
/* can be WINED3DERR_INVALIDCALL. */
}
...
...
dlls/wined3d/resource.c
View file @
03f7a2d8
...
...
@@ -5,7 +5,7 @@
* Copyright 2003-2004 Raphael Junqueira
* Copyright 2004 Christian Costa
* Copyright 2005 Oliver Stieber
* Copyright 2009 Henri Verbeet for CodeWeavers
* Copyright 2009
-2010
Henri Verbeet for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
...
...
@@ -130,22 +130,26 @@ static PrivateData* resource_find_private_data(IWineD3DResourceImpl *This, REFGU
}
HRESULT
resource_set_private_data
(
IWineD3DResource
*
iface
,
REFGUID
refguid
,
const
void
*
pData
,
DWORD
SizeOfData
,
DWORD
F
lags
)
const
void
*
pData
,
DWORD
SizeOfData
,
DWORD
f
lags
)
{
IWineD3DResourceImpl
*
This
=
(
IWineD3DResourceImpl
*
)
iface
;
PrivateData
*
data
;
TRACE
(
"(%p) : %s %p %d %d
\n
"
,
This
,
debugstr_guid
(
refguid
),
pData
,
SizeOfData
,
Flags
);
TRACE
(
"iface %p, riid %s, data %p, data_size %u, flags %#x.
\n
"
,
iface
,
debugstr_guid
(
refguid
),
pData
,
SizeOfData
,
flags
);
resource_free_private_data
(
iface
,
refguid
);
data
=
HeapAlloc
(
GetProcessHeap
(),
HEAP_ZERO_MEMORY
,
sizeof
(
*
data
));
if
(
!
data
)
return
E_OUTOFMEMORY
;
data
->
tag
=
*
refguid
;
data
->
flags
=
F
lags
;
data
->
flags
=
f
lags
;
if
(
Flags
&
WINED3DSPD_IUNKNOWN
)
{
if
(
SizeOfData
!=
sizeof
(
IUnknown
*
))
{
if
(
flags
&
WINED3DSPD_IUNKNOWN
)
{
if
(
SizeOfData
!=
sizeof
(
IUnknown
*
))
{
WARN
(
"IUnknown data with size %d, returning WINED3DERR_INVALIDCALL
\n
"
,
SizeOfData
);
HeapFree
(
GetProcessHeap
(),
0
,
data
);
return
WINED3DERR_INVALIDCALL
;
...
...
dlls/wined3d/surface.c
View file @
03f7a2d8
...
...
@@ -1643,14 +1643,14 @@ static void surface_prepare_system_memory(IWineD3DSurfaceImpl *This)
}
static
HRESULT
WINAPI
IWineD3DSurfaceImpl_Map
(
IWineD3DSurface
*
iface
,
WINED3DLOCKED_RECT
*
pLockedRect
,
const
RECT
*
pRect
,
DWORD
F
lags
)
WINED3DLOCKED_RECT
*
pLockedRect
,
const
RECT
*
pRect
,
DWORD
f
lags
)
{
IWineD3DSurfaceImpl
*
This
=
(
IWineD3DSurfaceImpl
*
)
iface
;
IWineD3DDeviceImpl
*
device
=
This
->
resource
.
device
;
const
RECT
*
pass_rect
=
pRect
;
TRACE
(
"iface %p, locked_rect %p, rect %s, flags %#x.
\n
"
,
iface
,
pLockedRect
,
wine_dbgstr_rect
(
pRect
),
F
lags
);
iface
,
pLockedRect
,
wine_dbgstr_rect
(
pRect
),
f
lags
);
/* This is also done in the base class, but we have to verify this before loading any data from
* gl into the sysmem copy. The PBO may be mapped, a different rectangle locked, the discard flag
...
...
@@ -1668,7 +1668,7 @@ static HRESULT WINAPI IWineD3DSurfaceImpl_Map(IWineD3DSurface *iface,
TRACE
(
"Warning: trying to lock unlockable surf@%p
\n
"
,
This
);
}
if
(
F
lags
&
WINED3DLOCK_DISCARD
)
if
(
f
lags
&
WINED3DLOCK_DISCARD
)
{
TRACE
(
"WINED3DLOCK_DISCARD flag passed, marking SYSMEM as up to date.
\n
"
);
surface_prepare_system_memory
(
This
);
...
...
@@ -1720,10 +1720,7 @@ lock_end:
context_release
(
context
);
}
if
(
Flags
&
(
WINED3DLOCK_NO_DIRTY_UPDATE
|
WINED3DLOCK_READONLY
))
{
/* Don't dirtify */
}
else
if
(
!
(
flags
&
(
WINED3DLOCK_NO_DIRTY_UPDATE
|
WINED3DLOCK_READONLY
)))
{
surface_add_dirty_rect
(
This
,
pRect
);
...
...
@@ -1738,7 +1735,7 @@ lock_end:
}
}
return
IWineD3DBaseSurfaceImpl_Map
(
iface
,
pLockedRect
,
pRect
,
F
lags
);
return
IWineD3DBaseSurfaceImpl_Map
(
iface
,
pLockedRect
,
pRect
,
f
lags
);
}
static
void
flush_to_framebuffer_drawpixels
(
IWineD3DSurfaceImpl
*
This
,
...
...
@@ -2723,11 +2720,12 @@ void flip_surface(IWineD3DSurfaceImpl *front, IWineD3DSurfaceImpl *back) {
}
}
static
HRESULT
WINAPI
IWineD3DSurfaceImpl_Flip
(
IWineD3DSurface
*
iface
,
IWineD3DSurface
*
override
,
DWORD
Flags
)
{
static
HRESULT
WINAPI
IWineD3DSurfaceImpl_Flip
(
IWineD3DSurface
*
iface
,
IWineD3DSurface
*
override
,
DWORD
flags
)
{
IWineD3DSurfaceImpl
*
This
=
(
IWineD3DSurfaceImpl
*
)
iface
;
IWineD3DSwapChainImpl
*
swapchain
=
NULL
;
TRACE
(
"
(%p)->(%p,%x)
\n
"
,
This
,
override
,
F
lags
);
TRACE
(
"
iface %p, override %p, flags %#x.
\n
"
,
iface
,
override
,
f
lags
);
/* Flipping is only supported on RenderTargets and overlays*/
if
(
!
(
This
->
resource
.
usage
&
(
WINED3DUSAGE_RENDERTARGET
|
WINED3DUSAGE_OVERLAY
))
)
{
...
...
@@ -2764,19 +2762,17 @@ static HRESULT WINAPI IWineD3DSurfaceImpl_Flip(IWineD3DSurface *iface, IWineD3DS
/* Just overwrite the swapchain presentation interval. This is ok because only ddraw apps can call Flip,
* and only d3d8 and d3d9 apps specify the presentation interval
*/
if
(
!
(
Flags
&
(
WINEDDFLIP_NOVSYNC
|
WINEDDFLIP_INTERVAL2
|
WINEDDFLIP_INTERVAL3
|
WINEDDFLIP_INTERVAL4
)))
{
if
(
!
(
flags
&
(
WINEDDFLIP_NOVSYNC
|
WINEDDFLIP_INTERVAL2
|
WINEDDFLIP_INTERVAL3
|
WINEDDFLIP_INTERVAL4
)))
/* Most common case first to avoid wasting time on all the other cases */
swapchain
->
presentParms
.
PresentationInterval
=
WINED3DPRESENT_INTERVAL_ONE
;
}
else
if
(
Flags
&
WINEDDFLIP_NOVSYNC
)
{
else
if
(
flags
&
WINEDDFLIP_NOVSYNC
)
swapchain
->
presentParms
.
PresentationInterval
=
WINED3DPRESENT_INTERVAL_IMMEDIATE
;
}
else
if
(
Flags
&
WINEDDFLIP_INTERVAL2
)
{
else
if
(
flags
&
WINEDDFLIP_INTERVAL2
)
swapchain
->
presentParms
.
PresentationInterval
=
WINED3DPRESENT_INTERVAL_TWO
;
}
else
if
(
Flags
&
WINEDDFLIP_INTERVAL3
)
{
else
if
(
flags
&
WINEDDFLIP_INTERVAL3
)
swapchain
->
presentParms
.
PresentationInterval
=
WINED3DPRESENT_INTERVAL_THREE
;
}
else
{
else
swapchain
->
presentParms
.
PresentationInterval
=
WINED3DPRESENT_INTERVAL_FOUR
;
}
/* Flipping a OpenGL surface -> Use WineD3DDevice::Present */
return
IWineD3DSwapChain_Present
((
IWineD3DSwapChain
*
)
swapchain
,
...
...
@@ -3436,7 +3432,7 @@ HRESULT surface_color_fill(IWineD3DSurfaceImpl *s, const RECT *rect, const WINED
/* Not called from the VTable */
/* Do not call while under the GL lock. */
static
HRESULT
IWineD3DSurfaceImpl_BltOverride
(
IWineD3DSurfaceImpl
*
dst_surface
,
const
RECT
*
DestRect
,
IWineD3DSurfaceImpl
*
src_surface
,
const
RECT
*
SrcRect
,
DWORD
F
lags
,
const
WINEDDBLTFX
*
DDBltFx
,
IWineD3DSurfaceImpl
*
src_surface
,
const
RECT
*
SrcRect
,
DWORD
f
lags
,
const
WINEDDBLTFX
*
DDBltFx
,
WINED3DTEXTUREFILTERTYPE
Filter
)
{
IWineD3DDeviceImpl
*
device
=
dst_surface
->
resource
.
device
;
...
...
@@ -3446,7 +3442,7 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *dst_surface,
TRACE
(
"dst_surface %p, dst_rect %s, src_surface %p, src_rect %s, flags %#x, blt_fx %p, filter %s.
\n
"
,
dst_surface
,
wine_dbgstr_rect
(
DestRect
),
src_surface
,
wine_dbgstr_rect
(
SrcRect
),
F
lags
,
DDBltFx
,
debug_d3dtexturefiltertype
(
Filter
));
f
lags
,
DDBltFx
,
debug_d3dtexturefiltertype
(
Filter
));
/* Get the swapchain. One of the surfaces has to be a primary surface */
if
(
dst_surface
->
resource
.
pool
==
WINED3DPOOL_SYSTEMMEM
)
...
...
@@ -3480,7 +3476,8 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *dst_surface,
}
/* No destination color keying supported */
if
(
Flags
&
(
WINEDDBLT_KEYDEST
|
WINEDDBLT_KEYDESTOVERRIDE
))
{
if
(
flags
&
(
WINEDDBLT_KEYDEST
|
WINEDDBLT_KEYDESTOVERRIDE
))
{
/* Can we support that with glBlendFunc if blitting to the frame buffer? */
TRACE
(
"Destination color key not supported in accelerated Blit, falling back to software
\n
"
);
return
WINED3DERR_INVALIDCALL
;
...
...
@@ -3552,7 +3549,7 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *dst_surface,
TRACE
(
"Yes
\n
"
);
/* These flags are unimportant for the flag check, remove them */
if
(
!
(
F
lags
&
~
(
WINEDDBLT_DONOTWAIT
|
WINEDDBLT_WAIT
)))
if
(
!
(
f
lags
&
~
(
WINEDDBLT_DONOTWAIT
|
WINEDDBLT_WAIT
)))
{
WINED3DSWAPEFFECT
orig_swap
=
dstSwapchain
->
presentParms
.
SwapEffect
;
...
...
@@ -3619,7 +3616,8 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *dst_surface,
return
WINED3DERR_INVALIDCALL
;
}
if
(
Flags
&
(
WINEDDBLT_KEYSRC
|
WINEDDBLT_KEYSRCOVERRIDE
))
{
if
(
flags
&
(
WINEDDBLT_KEYSRC
|
WINEDDBLT_KEYSRCOVERRIDE
))
{
TRACE
(
"Color keying not supported by frame buffer to texture blit
\n
"
);
return
WINED3DERR_INVALIDCALL
;
/* Destination color key is checked above */
...
...
@@ -3686,7 +3684,7 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *dst_surface,
TRACE
(
"Blt from surface %p to rendertarget %p
\n
"
,
src_surface
,
dst_surface
);
if
(
!
(
F
lags
&
(
WINEDDBLT_KEYSRC
|
WINEDDBLT_KEYSRCOVERRIDE
))
if
(
!
(
f
lags
&
(
WINEDDBLT_KEYSRC
|
WINEDDBLT_KEYSRCOVERRIDE
))
&&
fbo_blit_supported
(
gl_info
,
BLIT_OP_BLIT
,
&
src_rect
,
src_surface
->
resource
.
usage
,
src_surface
->
resource
.
pool
,
src_surface
->
resource
.
format
,
...
...
@@ -3703,7 +3701,7 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *dst_surface,
return
WINED3D_OK
;
}
if
(
!
(
F
lags
&
(
WINEDDBLT_KEYSRC
|
WINEDDBLT_KEYSRCOVERRIDE
))
if
(
!
(
f
lags
&
(
WINEDDBLT_KEYSRC
|
WINEDDBLT_KEYSRCOVERRIDE
))
&&
arbfp_blit
.
blit_supported
(
gl_info
,
BLIT_OP_BLIT
,
&
src_rect
,
src_surface
->
resource
.
usage
,
src_surface
->
resource
.
pool
,
src_surface
->
resource
.
format
,
...
...
@@ -3728,18 +3726,23 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *dst_surface,
* The surface keeps track of the color key last used to load the opengl surface.
* PreLoad will catch the change to the flags and color key and reload if necessary.
*/
if
(
Flags
&
WINEDDBLT_KEYSRC
)
{
if
(
flags
&
WINEDDBLT_KEYSRC
)
{
/* Use color key from surface */
}
else
if
(
Flags
&
WINEDDBLT_KEYSRCOVERRIDE
)
{
}
else
if
(
flags
&
WINEDDBLT_KEYSRCOVERRIDE
)
{
/* Use color key from DDBltFx */
src_surface
->
CKeyFlags
|=
WINEDDSD_CKSRCBLT
;
src_surface
->
SrcBltCKey
=
DDBltFx
->
ddckSrcColorkey
;
}
else
{
}
else
{
/* Do not use color key */
src_surface
->
CKeyFlags
&=
~
WINEDDSD_CKSRCBLT
;
}
surface_blt_to_drawable
(
device
,
Filter
,
F
lags
&
(
WINEDDBLT_KEYSRC
|
WINEDDBLT_KEYSRCOVERRIDE
),
surface_blt_to_drawable
(
device
,
Filter
,
f
lags
&
(
WINEDDBLT_KEYSRC
|
WINEDDBLT_KEYSRCOVERRIDE
),
src_surface
,
&
src_rect
,
dst_surface
,
&
dst_rect
);
/* Restore the color key parameters */
...
...
@@ -3753,7 +3756,7 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *dst_surface,
else
{
/* Source-Less Blit to render target */
if
(
F
lags
&
WINEDDBLT_COLORFILL
)
if
(
f
lags
&
WINEDDBLT_COLORFILL
)
{
WINED3DCOLORVALUE
color
;
...
...
@@ -3773,12 +3776,12 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *dst_surface,
}
static
HRESULT
IWineD3DSurfaceImpl_BltZ
(
IWineD3DSurfaceImpl
*
This
,
const
RECT
*
DestRect
,
IWineD3DSurface
*
src_surface
,
const
RECT
*
src_rect
,
DWORD
F
lags
,
const
WINEDDBLTFX
*
DDBltFx
)
IWineD3DSurface
*
src_surface
,
const
RECT
*
src_rect
,
DWORD
f
lags
,
const
WINEDDBLTFX
*
DDBltFx
)
{
IWineD3DDeviceImpl
*
device
=
This
->
resource
.
device
;
float
depth
;
if
(
F
lags
&
WINEDDBLT_DEPTHFILL
)
if
(
f
lags
&
WINEDDBLT_DEPTHFILL
)
{
switch
(
This
->
resource
.
format
->
id
)
{
...
...
@@ -3809,7 +3812,7 @@ static HRESULT IWineD3DSurfaceImpl_BltZ(IWineD3DSurfaceImpl *This, const RECT *D
}
static
HRESULT
WINAPI
IWineD3DSurfaceImpl_Blt
(
IWineD3DSurface
*
iface
,
const
RECT
*
DestRect
,
IWineD3DSurface
*
src_surface
,
const
RECT
*
SrcRect
,
DWORD
F
lags
,
IWineD3DSurface
*
src_surface
,
const
RECT
*
SrcRect
,
DWORD
f
lags
,
const
WINEDDBLTFX
*
DDBltFx
,
WINED3DTEXTUREFILTERTYPE
Filter
)
{
IWineD3DSurfaceImpl
*
This
=
(
IWineD3DSurfaceImpl
*
)
iface
;
...
...
@@ -3818,7 +3821,7 @@ static HRESULT WINAPI IWineD3DSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT
TRACE
(
"iface %p, dst_rect %s, src_surface %p, src_rect %s, flags %#x, fx %p, filter %s.
\n
"
,
iface
,
wine_dbgstr_rect
(
DestRect
),
src_surface
,
wine_dbgstr_rect
(
SrcRect
),
F
lags
,
DDBltFx
,
debug_d3dtexturefiltertype
(
Filter
));
f
lags
,
DDBltFx
,
debug_d3dtexturefiltertype
(
Filter
));
TRACE
(
"Usage is %s.
\n
"
,
debug_d3dusage
(
This
->
resource
.
usage
));
if
((
This
->
flags
&
SFLAG_LOCKED
)
||
(
src
&&
(
src
->
flags
&
SFLAG_LOCKED
)))
...
...
@@ -3832,12 +3835,12 @@ static HRESULT WINAPI IWineD3DSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT
*/
if
(
This
==
device
->
depth_stencil
||
(
src
&&
src
==
device
->
depth_stencil
))
{
if
(
device
->
inScene
&&
!
(
F
lags
&
WINEDDBLT_DEPTHFILL
))
if
(
device
->
inScene
&&
!
(
f
lags
&
WINEDDBLT_DEPTHFILL
))
{
TRACE
(
"Attempt to access the depth stencil surface in a BeginScene / EndScene pair, returning WINED3DERR_INVALIDCALL
\n
"
);
return
WINED3DERR_INVALIDCALL
;
}
else
if
(
SUCCEEDED
(
IWineD3DSurfaceImpl_BltZ
(
This
,
DestRect
,
src_surface
,
SrcRect
,
F
lags
,
DDBltFx
)))
else
if
(
SUCCEEDED
(
IWineD3DSurfaceImpl_BltZ
(
This
,
DestRect
,
src_surface
,
SrcRect
,
f
lags
,
DDBltFx
)))
{
TRACE
(
"Z Blit override handled the blit
\n
"
);
return
WINED3D_OK
;
...
...
@@ -3848,14 +3851,14 @@ static HRESULT WINAPI IWineD3DSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT
if
((
This
->
resource
.
usage
&
WINED3DUSAGE_RENDERTARGET
)
||
(
src
&&
(
src
->
resource
.
usage
&
WINED3DUSAGE_RENDERTARGET
)))
{
if
(
SUCCEEDED
(
IWineD3DSurfaceImpl_BltOverride
(
This
,
DestRect
,
src
,
SrcRect
,
F
lags
,
DDBltFx
,
Filter
)))
if
(
SUCCEEDED
(
IWineD3DSurfaceImpl_BltOverride
(
This
,
DestRect
,
src
,
SrcRect
,
f
lags
,
DDBltFx
,
Filter
)))
return
WINED3D_OK
;
}
/* For the rest call the X11 surface implementation.
* For RenderTargets this should be implemented OpenGL accelerated in BltOverride,
* other Blts are rather rare. */
return
IWineD3DBaseSurfaceImpl_Blt
(
iface
,
DestRect
,
src_surface
,
SrcRect
,
F
lags
,
DDBltFx
,
Filter
);
return
IWineD3DBaseSurfaceImpl_Blt
(
iface
,
DestRect
,
src_surface
,
SrcRect
,
f
lags
,
DDBltFx
,
Filter
);
}
static
HRESULT
WINAPI
IWineD3DSurfaceImpl_BltFast
(
IWineD3DSurface
*
iface
,
DWORD
dstx
,
DWORD
dsty
,
...
...
@@ -3886,7 +3889,7 @@ static HRESULT WINAPI IWineD3DSurfaceImpl_BltFast(IWineD3DSurface *iface, DWORD
{
RECT
SrcRect
,
DstRect
;
DWORD
Flags
=
0
;
DWORD
flags
=
0
;
surface_get_rect
(
src
,
rsrc
,
&
SrcRect
);
...
...
@@ -3896,17 +3899,17 @@ static HRESULT WINAPI IWineD3DSurfaceImpl_BltFast(IWineD3DSurface *iface, DWORD
DstRect
.
bottom
=
dsty
+
SrcRect
.
bottom
-
SrcRect
.
top
;
/* Convert BltFast flags into Btl ones because it is called from SurfaceImpl_Blt as well */
if
(
trans
&
WINEDDBLTFAST_SRCCOLORKEY
)
F
lags
|=
WINEDDBLT_KEYSRC
;
if
(
trans
&
WINEDDBLTFAST_DESTCOLORKEY
)
F
lags
|=
WINEDDBLT_KEYDEST
;
if
(
trans
&
WINEDDBLTFAST_WAIT
)
F
lags
|=
WINEDDBLT_WAIT
;
if
(
trans
&
WINEDDBLTFAST_DONOTWAIT
)
F
lags
|=
WINEDDBLT_DONOTWAIT
;
if
(
trans
&
WINEDDBLTFAST_SRCCOLORKEY
)
f
lags
|=
WINEDDBLT_KEYSRC
;
if
(
trans
&
WINEDDBLTFAST_DESTCOLORKEY
)
f
lags
|=
WINEDDBLT_KEYDEST
;
if
(
trans
&
WINEDDBLTFAST_WAIT
)
f
lags
|=
WINEDDBLT_WAIT
;
if
(
trans
&
WINEDDBLTFAST_DONOTWAIT
)
f
lags
|=
WINEDDBLT_DONOTWAIT
;
if
(
SUCCEEDED
(
IWineD3DSurfaceImpl_BltOverride
(
This
,
&
DstRect
,
src
,
&
SrcRect
,
F
lags
,
NULL
,
WINED3DTEXF_POINT
)))
&
DstRect
,
src
,
&
SrcRect
,
f
lags
,
NULL
,
WINED3DTEXF_POINT
)))
return
WINED3D_OK
;
}
...
...
dlls/wined3d/surface_base.c
View file @
03f7a2d8
...
...
@@ -10,7 +10,7 @@
* Copyright 2006-2008 Stefan Dösinger for CodeWeavers
* Copyright 2007 Henri Verbeet
* Copyright 2006-2007 Roderick Colenbrander
* Copyright 2009 Henri Verbeet for CodeWeavers
* Copyright 2009
-2010
Henri Verbeet for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
...
...
@@ -111,11 +111,10 @@ ULONG WINAPI IWineD3DBaseSurfaceImpl_AddRef(IWineD3DSurface *iface) {
return
ref
;
}
/* ****************************************************
IWineD3DSurface IWineD3DResource parts follow
**************************************************** */
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_SetPrivateData
(
IWineD3DSurface
*
iface
,
REFGUID
refguid
,
CONST
void
*
pData
,
DWORD
SizeOfData
,
DWORD
Flags
)
{
return
resource_set_private_data
((
IWineD3DResource
*
)
iface
,
refguid
,
pData
,
SizeOfData
,
Flags
);
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_SetPrivateData
(
IWineD3DSurface
*
iface
,
REFGUID
riid
,
const
void
*
data
,
DWORD
data_size
,
DWORD
flags
)
{
return
resource_set_private_data
((
IWineD3DResource
*
)
iface
,
riid
,
data
,
data_size
,
flags
);
}
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_GetPrivateData
(
IWineD3DSurface
*
iface
,
REFGUID
refguid
,
void
*
pData
,
DWORD
*
pSizeOfData
)
{
...
...
@@ -163,11 +162,11 @@ void WINAPI IWineD3DBaseSurfaceImpl_GetDesc(IWineD3DSurface *iface, WINED3DSURFA
desc
->
height
=
surface
->
currentDesc
.
Height
;
}
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_GetBltStatus
(
IWineD3DSurface
*
iface
,
DWORD
F
lags
)
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_GetBltStatus
(
IWineD3DSurface
*
iface
,
DWORD
f
lags
)
{
TRACE
(
"iface %p, flags %#x.
\n
"
,
iface
,
F
lags
);
TRACE
(
"iface %p, flags %#x.
\n
"
,
iface
,
f
lags
);
switch
(
F
lags
)
switch
(
f
lags
)
{
case
WINEDDGBS_CANBLT
:
case
WINEDDGBS_ISBLTDONE
:
...
...
@@ -178,11 +177,14 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_GetBltStatus(IWineD3DSurface *iface, DWOR
}
}
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_GetFlipStatus
(
IWineD3DSurface
*
iface
,
DWORD
Flags
)
{
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_GetFlipStatus
(
IWineD3DSurface
*
iface
,
DWORD
flags
)
{
/* XXX: DDERR_INVALIDSURFACETYPE */
TRACE
(
"(%p)->(%08x)
\n
"
,
iface
,
Flags
);
switch
(
Flags
)
{
TRACE
(
"iface %p, flags %#x.
\n
"
,
iface
,
flags
);
switch
(
flags
)
{
case
WINEDDGFS_CANFLIP
:
case
WINEDDGFS_ISFLIPDONE
:
return
WINED3D_OK
;
...
...
@@ -235,20 +237,23 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_SetPalette(IWineD3DSurface *iface, IWineD
else
return
WINED3D_OK
;
}
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_SetColorKey
(
IWineD3DSurface
*
iface
,
DWORD
F
lags
,
const
WINEDDCOLORKEY
*
CKey
)
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_SetColorKey
(
IWineD3DSurface
*
iface
,
DWORD
f
lags
,
const
WINEDDCOLORKEY
*
CKey
)
{
IWineD3DSurfaceImpl
*
This
=
(
IWineD3DSurfaceImpl
*
)
iface
;
TRACE
(
"(%p)->(%08x,%p)
\n
"
,
This
,
Flags
,
CKey
);
if
(
Flags
&
WINEDDCKEY_COLORSPACE
)
TRACE
(
"iface %p, flags %#x, color_key %p.
\n
"
,
iface
,
flags
,
CKey
);
if
(
flags
&
WINEDDCKEY_COLORSPACE
)
{
FIXME
(
" colorkey value not supported (%08x) !
\n
"
,
F
lags
);
FIXME
(
" colorkey value not supported (%08x) !
\n
"
,
f
lags
);
return
WINED3DERR_INVALIDCALL
;
}
/* Dirtify the surface, but only if a key was changed */
if
(
CKey
)
{
switch
(
Flags
&
~
WINEDDCKEY_COLORSPACE
)
{
if
(
CKey
)
{
switch
(
flags
&
~
WINEDDCKEY_COLORSPACE
)
{
case
WINEDDCKEY_DESTBLT
:
This
->
DestBltCKey
=
*
CKey
;
This
->
CKeyFlags
|=
WINEDDSD_CKDESTBLT
;
...
...
@@ -270,8 +275,10 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_SetColorKey(IWineD3DSurface *iface, DWORD
break
;
}
}
else
{
switch
(
Flags
&
~
WINEDDCKEY_COLORSPACE
)
{
else
{
switch
(
flags
&
~
WINEDDCKEY_COLORSPACE
)
{
case
WINEDDCKEY_DESTBLT
:
This
->
CKeyFlags
&=
~
WINEDDSD_CKDESTBLT
;
break
;
...
...
@@ -375,10 +382,11 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_GetOverlayPosition(IWineD3DSurface *iface
return
hr
;
}
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_UpdateOverlayZOrder
(
IWineD3DSurface
*
iface
,
DWORD
Flags
,
IWineD3DSurface
*
Ref
)
{
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_UpdateOverlayZOrder
(
IWineD3DSurface
*
iface
,
DWORD
flags
,
IWineD3DSurface
*
Ref
)
{
IWineD3DSurfaceImpl
*
This
=
(
IWineD3DSurfaceImpl
*
)
iface
;
FIXME
(
"iface %p, flags %#x, ref %p stub!
\n
"
,
iface
,
F
lags
,
Ref
);
FIXME
(
"iface %p, flags %#x, ref %p stub!
\n
"
,
iface
,
f
lags
,
Ref
);
if
(
!
(
This
->
resource
.
usage
&
WINED3DUSAGE_OVERLAY
))
{
...
...
@@ -390,11 +398,13 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_UpdateOverlayZOrder(IWineD3DSurface *ifac
}
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_UpdateOverlay
(
IWineD3DSurface
*
iface
,
const
RECT
*
SrcRect
,
IWineD3DSurface
*
DstSurface
,
const
RECT
*
DstRect
,
DWORD
F
lags
,
const
WINEDDOVERLAYFX
*
FX
)
IWineD3DSurface
*
DstSurface
,
const
RECT
*
DstRect
,
DWORD
f
lags
,
const
WINEDDOVERLAYFX
*
FX
)
{
IWineD3DSurfaceImpl
*
This
=
(
IWineD3DSurfaceImpl
*
)
iface
;
IWineD3DSurfaceImpl
*
Dst
=
(
IWineD3DSurfaceImpl
*
)
DstSurface
;
TRACE
(
"(%p)->(%p, %p, %p, %08x, %p)
\n
"
,
This
,
SrcRect
,
Dst
,
DstRect
,
Flags
,
FX
);
TRACE
(
"iface %p, src_rect %s, dst_surface %p, dst_rect %s, flags %#x, fx %p.
\n
"
,
iface
,
wine_dbgstr_rect
(
SrcRect
),
DstSurface
,
wine_dbgstr_rect
(
DstRect
),
flags
,
FX
);
if
(
!
(
This
->
resource
.
usage
&
WINED3DUSAGE_OVERLAY
))
{
...
...
@@ -423,16 +433,21 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_UpdateOverlay(IWineD3DSurface *iface, con
This
->
overlay_destrect
.
bottom
=
Dst
?
Dst
->
currentDesc
.
Height
:
0
;
}
if
(
This
->
overlay_dest
&&
(
This
->
overlay_dest
!=
Dst
||
Flags
&
WINEDDOVER_HIDE
))
{
if
(
This
->
overlay_dest
&&
(
This
->
overlay_dest
!=
Dst
||
flags
&
WINEDDOVER_HIDE
))
{
list_remove
(
&
This
->
overlay_entry
);
}
if
(
Flags
&
WINEDDOVER_SHOW
)
{
if
(
This
->
overlay_dest
!=
Dst
)
{
if
(
flags
&
WINEDDOVER_SHOW
)
{
if
(
This
->
overlay_dest
!=
Dst
)
{
This
->
overlay_dest
=
Dst
;
list_add_tail
(
&
Dst
->
overlays
,
&
This
->
overlay_entry
);
}
}
else
if
(
Flags
&
WINEDDOVER_HIDE
)
{
}
else
if
(
flags
&
WINEDDOVER_HIDE
)
{
/* tests show that the rectangles are erased on hide */
This
->
overlay_srcrect
.
left
=
0
;
This
->
overlay_srcrect
.
top
=
0
;
This
->
overlay_srcrect
.
right
=
0
;
This
->
overlay_srcrect
.
bottom
=
0
;
...
...
@@ -924,7 +939,7 @@ static HRESULT
* SrcRect: Source rectangle
*****************************************************************************/
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_Blt
(
IWineD3DSurface
*
iface
,
const
RECT
*
DestRect
,
IWineD3DSurface
*
src_surface
,
const
RECT
*
SrcRect
,
DWORD
F
lags
,
const
WINEDDBLTFX
*
DDBltFx
,
WINED3DTEXTUREFILTERTYPE
Filter
)
const
RECT
*
SrcRect
,
DWORD
f
lags
,
const
WINEDDBLTFX
*
DDBltFx
,
WINED3DTEXTUREFILTERTYPE
Filter
)
{
IWineD3DSurfaceImpl
*
This
=
(
IWineD3DSurfaceImpl
*
)
iface
;
IWineD3DSurfaceImpl
*
src
=
(
IWineD3DSurfaceImpl
*
)
src_surface
;
...
...
@@ -939,7 +954,7 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT *D
TRACE
(
"iface %p, dst_rect %s, src_surface %p, src_rect %s, flags %#x, fx %p, filter %s.
\n
"
,
iface
,
wine_dbgstr_rect
(
DestRect
),
src_surface
,
wine_dbgstr_rect
(
SrcRect
),
F
lags
,
DDBltFx
,
debug_d3dtexturefiltertype
(
Filter
));
f
lags
,
DDBltFx
,
debug_d3dtexturefiltertype
(
Filter
));
if
((
This
->
flags
&
SFLAG_LOCKED
)
||
(
src
&&
(
src
->
flags
&
SFLAG_LOCKED
)))
{
...
...
@@ -1030,7 +1045,7 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT *D
if
(
clip_vert
||
clip_horiz
)
{
/* Now check if this is a special case or not... */
if
((
F
lags
&
WINEDDBLT_DDFX
)
if
((
f
lags
&
WINEDDBLT_DDFX
)
||
(
clip_horiz
&&
xdst
.
right
-
xdst
.
left
!=
xsrc
.
right
-
xsrc
.
left
)
||
(
clip_vert
&&
xdst
.
bottom
-
xdst
.
top
!=
xsrc
.
bottom
-
xsrc
.
top
))
{
...
...
@@ -1123,7 +1138,7 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT *D
IWineD3DSurface_Map
(
iface
,
&
dlock
,
NULL
,
0
);
}
if
(
!
DDBltFx
||
!
(
DDBltFx
->
dwDDFX
))
F
lags
&=
~
WINEDDBLT_DDFX
;
if
(
!
DDBltFx
||
!
(
DDBltFx
->
dwDDFX
))
f
lags
&=
~
WINEDDBLT_DDFX
;
if
(
sEntry
->
flags
&
dEntry
->
flags
&
WINED3DFMT_FLAG_FOURCC
)
{
...
...
@@ -1146,41 +1161,41 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT *D
else
dbuf
=
(
BYTE
*
)
dlock
.
pBits
+
(
xdst
.
top
*
dlock
.
Pitch
)
+
(
xdst
.
left
*
bpp
);
if
(
F
lags
&
WINEDDBLT_WAIT
)
if
(
f
lags
&
WINEDDBLT_WAIT
)
{
F
lags
&=
~
WINEDDBLT_WAIT
;
f
lags
&=
~
WINEDDBLT_WAIT
;
}
if
(
F
lags
&
WINEDDBLT_ASYNC
)
if
(
f
lags
&
WINEDDBLT_ASYNC
)
{
static
BOOL
displayed
=
FALSE
;
if
(
!
displayed
)
FIXME
(
"Can't handle WINEDDBLT_ASYNC flag right now.
\n
"
);
displayed
=
TRUE
;
F
lags
&=
~
WINEDDBLT_ASYNC
;
f
lags
&=
~
WINEDDBLT_ASYNC
;
}
if
(
F
lags
&
WINEDDBLT_DONOTWAIT
)
if
(
f
lags
&
WINEDDBLT_DONOTWAIT
)
{
/* WINEDDBLT_DONOTWAIT appeared in DX7 */
static
BOOL
displayed
=
FALSE
;
if
(
!
displayed
)
FIXME
(
"Can't handle WINEDDBLT_DONOTWAIT flag right now.
\n
"
);
displayed
=
TRUE
;
F
lags
&=
~
WINEDDBLT_DONOTWAIT
;
f
lags
&=
~
WINEDDBLT_DONOTWAIT
;
}
/* First, all the 'source-less' blits */
if
(
F
lags
&
WINEDDBLT_COLORFILL
)
if
(
f
lags
&
WINEDDBLT_COLORFILL
)
{
ret
=
_Blt_ColorFill
(
dbuf
,
dstwidth
,
dstheight
,
bpp
,
dlock
.
Pitch
,
DDBltFx
->
u5
.
dwFillColor
);
F
lags
&=
~
WINEDDBLT_COLORFILL
;
f
lags
&=
~
WINEDDBLT_COLORFILL
;
}
if
(
F
lags
&
WINEDDBLT_DEPTHFILL
)
if
(
f
lags
&
WINEDDBLT_DEPTHFILL
)
{
FIXME
(
"DDBLT_DEPTHFILL needs to be implemented!
\n
"
);
}
if
(
F
lags
&
WINEDDBLT_ROP
)
if
(
f
lags
&
WINEDDBLT_ROP
)
{
/* Catch some degenerate cases here */
switch
(
DDBltFx
->
dwROP
)
...
...
@@ -1199,9 +1214,9 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT *D
FIXME
(
"Unsupported raster op: %08x Pattern: %p
\n
"
,
DDBltFx
->
dwROP
,
DDBltFx
->
u5
.
lpDDSPattern
);
goto
error
;
}
F
lags
&=
~
WINEDDBLT_ROP
;
f
lags
&=
~
WINEDDBLT_ROP
;
}
if
(
F
lags
&
WINEDDBLT_DDROPS
)
if
(
f
lags
&
WINEDDBLT_DDROPS
)
{
FIXME
(
"
\t
Ddraw Raster Ops: %08x Pattern: %p
\n
"
,
DDBltFx
->
dwDDROP
,
DDBltFx
->
u5
.
lpDDSPattern
);
}
...
...
@@ -1225,7 +1240,7 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT *D
xinc
=
(
srcwidth
<<
16
)
/
dstwidth
;
yinc
=
(
srcheight
<<
16
)
/
dstheight
;
if
(
!
F
lags
)
if
(
!
f
lags
)
{
/* No effects, we can cheat here */
if
(
dstwidth
==
srcwidth
)
...
...
@@ -1340,27 +1355,27 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT *D
LONG
dstyinc
=
dlock
.
Pitch
,
dstxinc
=
bpp
;
DWORD
keylow
=
0xFFFFFFFF
,
keyhigh
=
0
,
keymask
=
0xFFFFFFFF
;
DWORD
destkeylow
=
0x0
,
destkeyhigh
=
0xFFFFFFFF
,
destkeymask
=
0xFFFFFFFF
;
if
(
F
lags
&
(
WINEDDBLT_KEYSRC
|
WINEDDBLT_KEYDEST
|
WINEDDBLT_KEYSRCOVERRIDE
|
WINEDDBLT_KEYDESTOVERRIDE
))
if
(
f
lags
&
(
WINEDDBLT_KEYSRC
|
WINEDDBLT_KEYDEST
|
WINEDDBLT_KEYSRCOVERRIDE
|
WINEDDBLT_KEYDESTOVERRIDE
))
{
/* The color keying flags are checked for correctness in ddraw */
if
(
F
lags
&
WINEDDBLT_KEYSRC
)
if
(
f
lags
&
WINEDDBLT_KEYSRC
)
{
keylow
=
src
->
SrcBltCKey
.
dwColorSpaceLowValue
;
keyhigh
=
src
->
SrcBltCKey
.
dwColorSpaceHighValue
;
}
else
if
(
F
lags
&
WINEDDBLT_KEYSRCOVERRIDE
)
else
if
(
f
lags
&
WINEDDBLT_KEYSRCOVERRIDE
)
{
keylow
=
DDBltFx
->
ddckSrcColorkey
.
dwColorSpaceLowValue
;
keyhigh
=
DDBltFx
->
ddckSrcColorkey
.
dwColorSpaceHighValue
;
}
if
(
F
lags
&
WINEDDBLT_KEYDEST
)
if
(
f
lags
&
WINEDDBLT_KEYDEST
)
{
/* Destination color keys are taken from the source surface ! */
destkeylow
=
src
->
DestBltCKey
.
dwColorSpaceLowValue
;
destkeyhigh
=
src
->
DestBltCKey
.
dwColorSpaceHighValue
;
}
else
if
(
F
lags
&
WINEDDBLT_KEYDESTOVERRIDE
)
else
if
(
f
lags
&
WINEDDBLT_KEYDESTOVERRIDE
)
{
destkeylow
=
DDBltFx
->
ddckDestColorkey
.
dwColorSpaceLowValue
;
destkeyhigh
=
DDBltFx
->
ddckDestColorkey
.
dwColorSpaceHighValue
;
...
...
@@ -1376,10 +1391,10 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT *D
|
sEntry
->
green_mask
|
sEntry
->
blue_mask
;
}
F
lags
&=
~
(
WINEDDBLT_KEYSRC
|
WINEDDBLT_KEYDEST
|
WINEDDBLT_KEYSRCOVERRIDE
|
WINEDDBLT_KEYDESTOVERRIDE
);
f
lags
&=
~
(
WINEDDBLT_KEYSRC
|
WINEDDBLT_KEYDEST
|
WINEDDBLT_KEYSRCOVERRIDE
|
WINEDDBLT_KEYDESTOVERRIDE
);
}
if
(
F
lags
&
WINEDDBLT_DDFX
)
if
(
f
lags
&
WINEDDBLT_DDFX
)
{
LPBYTE
dTopLeft
,
dTopRight
,
dBottomLeft
,
dBottomRight
,
tmp
;
LONG
tmpxy
;
...
...
@@ -1391,7 +1406,7 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT *D
if
(
DDBltFx
->
dwDDFX
&
WINEDDBLTFX_ARITHSTRETCHY
)
{
/* I don't think we need to do anything about this flag */
WARN
(
"
F
lags=DDBLT_DDFX nothing done for WINEDDBLTFX_ARITHSTRETCHY
\n
"
);
WARN
(
"
f
lags=DDBLT_DDFX nothing done for WINEDDBLTFX_ARITHSTRETCHY
\n
"
);
}
if
(
DDBltFx
->
dwDDFX
&
WINEDDBLTFX_MIRRORLEFTRIGHT
)
{
...
...
@@ -1416,7 +1431,7 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT *D
if
(
DDBltFx
->
dwDDFX
&
WINEDDBLTFX_NOTEARING
)
{
/* I don't think we need to do anything about this flag */
WARN
(
"
F
lags=DDBLT_DDFX nothing done for WINEDDBLTFX_NOTEARING
\n
"
);
WARN
(
"
f
lags=DDBLT_DDFX nothing done for WINEDDBLTFX_NOTEARING
\n
"
);
}
if
(
DDBltFx
->
dwDDFX
&
WINEDDBLTFX_ROTATE180
)
{
...
...
@@ -1456,10 +1471,10 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT *D
if
(
DDBltFx
->
dwDDFX
&
WINEDDBLTFX_ZBUFFERBASEDEST
)
{
/* I don't think we need to do anything about this flag */
WARN
(
"
F
lags=WINEDDBLT_DDFX nothing done for WINEDDBLTFX_ZBUFFERBASEDEST
\n
"
);
WARN
(
"
f
lags=WINEDDBLT_DDFX nothing done for WINEDDBLTFX_ZBUFFERBASEDEST
\n
"
);
}
dbuf
=
dTopLeft
;
F
lags
&=
~
(
WINEDDBLT_DDFX
);
f
lags
&=
~
(
WINEDDBLT_DDFX
);
}
#define COPY_COLORKEY_FX(type) { \
...
...
@@ -1513,7 +1528,7 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT *D
}
default:
FIXME
(
"%s color-keyed blit not implemented for bpp %d!
\n
"
,
(
F
lags
&
WINEDDBLT_KEYSRC
)
?
"Source"
:
"Destination"
,
bpp
*
8
);
(
f
lags
&
WINEDDBLT_KEYSRC
)
?
"Source"
:
"Destination"
,
bpp
*
8
);
ret
=
WINED3DERR_NOTAVAILABLE
;
goto
error
;
#undef COPY_COLORKEY_FX
...
...
@@ -1522,9 +1537,9 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT *D
}
error:
if
(
F
lags
&&
FIXME_ON
(
d3d_surface
))
if
(
f
lags
&&
FIXME_ON
(
d3d_surface
))
{
FIXME
(
"
\t
Unsupported flags: %
08x
\n
"
,
F
lags
);
FIXME
(
"
\t
Unsupported flags: %
#x.
\n
"
,
f
lags
);
}
release:
...
...
@@ -1547,7 +1562,7 @@ release:
* dsty:
* src_surface: Source surface to copy from
* rsrc: Source rectangle
* trans: Some
F
lags
* trans: Some
f
lags
*
* Returns:
* WINED3D_OK on success
...
...
@@ -1812,12 +1827,12 @@ error:
}
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_Map
(
IWineD3DSurface
*
iface
,
WINED3DLOCKED_RECT
*
pLockedRect
,
const
RECT
*
pRect
,
DWORD
F
lags
)
WINED3DLOCKED_RECT
*
pLockedRect
,
const
RECT
*
pRect
,
DWORD
f
lags
)
{
IWineD3DSurfaceImpl
*
This
=
(
IWineD3DSurfaceImpl
*
)
iface
;
TRACE
(
"
(%p) : rect@%p flags(%08x), output lockedRect@%p, memory@%p
\n
"
,
This
,
pRect
,
Flags
,
pLockedRect
,
This
->
resource
.
allocatedMemory
);
TRACE
(
"
iface %p, locked_rect %p, rect %s, flags %#x.
\n
"
,
iface
,
pLockedRect
,
wine_dbgstr_rect
(
pRect
),
flags
);
pLockedRect
->
Pitch
=
IWineD3DSurface_GetPitch
(
iface
);
...
...
dlls/wined3d/surface_gdi.c
View file @
03f7a2d8
...
...
@@ -110,7 +110,7 @@ static void WINAPI IWineGDISurfaceImpl_UnLoad(IWineD3DSurface *iface)
}
static
HRESULT
WINAPI
IWineGDISurfaceImpl_Map
(
IWineD3DSurface
*
iface
,
WINED3DLOCKED_RECT
*
pLockedRect
,
const
RECT
*
pRect
,
DWORD
F
lags
)
WINED3DLOCKED_RECT
*
pLockedRect
,
const
RECT
*
pRect
,
DWORD
f
lags
)
{
IWineD3DSurfaceImpl
*
This
=
(
IWineD3DSurfaceImpl
*
)
iface
;
...
...
@@ -131,7 +131,7 @@ static HRESULT WINAPI IWineGDISurfaceImpl_Map(IWineD3DSurface *iface,
This
->
resource
.
allocatedMemory
=
This
->
dib
.
bitmap_data
;
}
return
IWineD3DBaseSurfaceImpl_Map
(
iface
,
pLockedRect
,
pRect
,
F
lags
);
return
IWineD3DBaseSurfaceImpl_Map
(
iface
,
pLockedRect
,
pRect
,
f
lags
);
}
static
HRESULT
WINAPI
IWineGDISurfaceImpl_Unmap
(
IWineD3DSurface
*
iface
)
...
...
@@ -174,10 +174,7 @@ static HRESULT WINAPI IWineGDISurfaceImpl_Unmap(IWineD3DSurface *iface)
* WINED3D_OK on success
*
*****************************************************************************/
static
HRESULT
WINAPI
IWineGDISurfaceImpl_Flip
(
IWineD3DSurface
*
iface
,
IWineD3DSurface
*
override
,
DWORD
Flags
)
static
HRESULT
WINAPI
IWineGDISurfaceImpl_Flip
(
IWineD3DSurface
*
iface
,
IWineD3DSurface
*
override
,
DWORD
flags
)
{
IWineD3DSurfaceImpl
*
surface
=
(
IWineD3DSurfaceImpl
*
)
iface
;
IWineD3DSwapChainImpl
*
swapchain
;
...
...
dlls/wined3d/swapchain.c
View file @
03f7a2d8
...
...
@@ -220,7 +220,10 @@ static void swapchain_blit(IWineD3DSwapChainImpl *This, struct wined3d_context *
}
}
static
HRESULT
WINAPI
IWineD3DSwapChainImpl_Present
(
IWineD3DSwapChain
*
iface
,
CONST
RECT
*
pSourceRect
,
CONST
RECT
*
pDestRect
,
HWND
hDestWindowOverride
,
CONST
RGNDATA
*
pDirtyRegion
,
DWORD
dwFlags
)
{
static
HRESULT
WINAPI
IWineD3DSwapChainImpl_Present
(
IWineD3DSwapChain
*
iface
,
const
RECT
*
pSourceRect
,
const
RECT
*
pDestRect
,
HWND
hDestWindowOverride
,
const
RGNDATA
*
pDirtyRegion
,
DWORD
flags
)
{
IWineD3DSwapChainImpl
*
This
=
(
IWineD3DSwapChainImpl
*
)
iface
;
const
struct
wined3d_gl_info
*
gl_info
;
struct
wined3d_context
*
context
;
...
...
dlls/wined3d/swapchain_base.c
View file @
03f7a2d8
...
...
@@ -169,11 +169,14 @@ HRESULT WINAPI IWineD3DBaseSwapChainImpl_GetPresentParameters(IWineD3DSwapChain
return
WINED3D_OK
;
}
HRESULT
WINAPI
IWineD3DBaseSwapChainImpl_SetGammaRamp
(
IWineD3DSwapChain
*
iface
,
DWORD
Flags
,
CONST
WINED3DGAMMARAMP
*
pRamp
){
HRESULT
WINAPI
IWineD3DBaseSwapChainImpl_SetGammaRamp
(
IWineD3DSwapChain
*
iface
,
DWORD
flags
,
const
WINED3DGAMMARAMP
*
pRamp
)
{
IWineD3DSwapChainImpl
*
This
=
(
IWineD3DSwapChainImpl
*
)
iface
;
HDC
hDC
;
TRACE
(
"(%p) : pRamp@%p flags(%d)
\n
"
,
This
,
pRamp
,
Flags
);
TRACE
(
"iface %p, flags %#x, ramp %p.
\n
"
,
iface
,
flags
,
pRamp
);
hDC
=
GetDC
(
This
->
device_window
);
SetDeviceGammaRamp
(
hDC
,
(
LPVOID
)
pRamp
);
ReleaseDC
(
This
->
device_window
,
hDC
);
...
...
dlls/wined3d/swapchain_gdi.c
View file @
03f7a2d8
...
...
@@ -172,7 +172,10 @@ static HRESULT WINAPI IWineGDISwapChainImpl_SetDestWindowOverride(IWineD3DSwapCh
return
WINED3D_OK
;
}
static
HRESULT
WINAPI
IWineGDISwapChainImpl_Present
(
IWineD3DSwapChain
*
iface
,
CONST
RECT
*
pSourceRect
,
CONST
RECT
*
pDestRect
,
HWND
hDestWindowOverride
,
CONST
RGNDATA
*
pDirtyRegion
,
DWORD
dwFlags
)
{
static
HRESULT
WINAPI
IWineGDISwapChainImpl_Present
(
IWineD3DSwapChain
*
iface
,
const
RECT
*
pSourceRect
,
const
RECT
*
pDestRect
,
HWND
hDestWindowOverride
,
const
RGNDATA
*
pDirtyRegion
,
DWORD
flags
)
{
IWineD3DSwapChainImpl
*
This
=
(
IWineD3DSwapChainImpl
*
)
iface
;
IWineD3DSurfaceImpl
*
front
,
*
back
;
...
...
dlls/wined3d/texture.c
View file @
03f7a2d8
...
...
@@ -5,7 +5,7 @@
* Copyright 2002-2005 Raphael Junqueira
* Copyright 2005 Oliver Stieber
* Copyright 2007-2008 Stefan Dösinger for CodeWeavers
* Copyright 2009 Henri Verbeet for CodeWeavers
* Copyright 2009
-2010
Henri Verbeet for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
...
...
@@ -175,8 +175,10 @@ static ULONG WINAPI IWineD3DTextureImpl_Release(IWineD3DTexture *iface) {
/* ****************************************************
IWineD3DTexture IWineD3DResource parts follow
**************************************************** */
static
HRESULT
WINAPI
IWineD3DTextureImpl_SetPrivateData
(
IWineD3DTexture
*
iface
,
REFGUID
refguid
,
CONST
void
*
pData
,
DWORD
SizeOfData
,
DWORD
Flags
)
{
return
resource_set_private_data
((
IWineD3DResource
*
)
iface
,
refguid
,
pData
,
SizeOfData
,
Flags
);
static
HRESULT
WINAPI
IWineD3DTextureImpl_SetPrivateData
(
IWineD3DTexture
*
iface
,
REFGUID
riid
,
const
void
*
data
,
DWORD
data_size
,
DWORD
flags
)
{
return
resource_set_private_data
((
IWineD3DResource
*
)
iface
,
riid
,
data
,
data_size
,
flags
);
}
static
HRESULT
WINAPI
IWineD3DTextureImpl_GetPrivateData
(
IWineD3DTexture
*
iface
,
REFGUID
refguid
,
void
*
pData
,
DWORD
*
pSizeOfData
)
{
...
...
dlls/wined3d/volume.c
View file @
03f7a2d8
...
...
@@ -4,7 +4,7 @@
* Copyright 2002-2005 Jason Edmeades
* Copyright 2002-2005 Raphael Junqueira
* Copyright 2005 Oliver Stieber
* Copyright 2009 Henri Verbeet for CodeWeavers
* Copyright 2009
-2010
Henri Verbeet for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
...
...
@@ -149,8 +149,10 @@ static void * WINAPI IWineD3DVolumeImpl_GetParent(IWineD3DVolume *iface)
return
((
IWineD3DVolumeImpl
*
)
iface
)
->
resource
.
parent
;
}
static
HRESULT
WINAPI
IWineD3DVolumeImpl_SetPrivateData
(
IWineD3DVolume
*
iface
,
REFGUID
refguid
,
CONST
void
*
pData
,
DWORD
SizeOfData
,
DWORD
Flags
)
{
return
resource_set_private_data
((
IWineD3DResource
*
)
iface
,
refguid
,
pData
,
SizeOfData
,
Flags
);
static
HRESULT
WINAPI
IWineD3DVolumeImpl_SetPrivateData
(
IWineD3DVolume
*
iface
,
REFGUID
riid
,
const
void
*
data
,
DWORD
data_size
,
DWORD
flags
)
{
return
resource_set_private_data
((
IWineD3DResource
*
)
iface
,
riid
,
data
,
data_size
,
flags
);
}
static
HRESULT
WINAPI
IWineD3DVolumeImpl_GetPrivateData
(
IWineD3DVolume
*
iface
,
REFGUID
refguid
,
void
*
pData
,
DWORD
*
pSizeOfData
)
{
...
...
@@ -206,7 +208,7 @@ static void WINAPI IWineD3DVolumeImpl_GetDesc(IWineD3DVolume *iface, WINED3DVOLU
}
static
HRESULT
WINAPI
IWineD3DVolumeImpl_Map
(
IWineD3DVolume
*
iface
,
WINED3DLOCKED_BOX
*
pLockedVolume
,
const
WINED3DBOX
*
pBox
,
DWORD
F
lags
)
WINED3DLOCKED_BOX
*
pLockedVolume
,
const
WINED3DBOX
*
pBox
,
DWORD
f
lags
)
{
IWineD3DVolumeImpl
*
This
=
(
IWineD3DVolumeImpl
*
)
iface
;
FIXME
(
"(%p) : pBox=%p stub
\n
"
,
This
,
pBox
);
...
...
@@ -244,10 +246,7 @@ static HRESULT WINAPI IWineD3DVolumeImpl_Map(IWineD3DVolume *iface,
This
->
lockedBox
.
Back
=
pBox
->
Back
;
}
if
(
Flags
&
(
WINED3DLOCK_NO_DIRTY_UPDATE
|
WINED3DLOCK_READONLY
))
{
/* Don't dirtify */
}
else
if
(
!
(
flags
&
(
WINED3DLOCK_NO_DIRTY_UPDATE
|
WINED3DLOCK_READONLY
)))
{
volume_add_dirty_box
(
iface
,
&
This
->
lockedBox
);
This
->
container
->
baseTexture
.
texture_rgb
.
dirty
=
TRUE
;
...
...
dlls/wined3d/volumetexture.c
View file @
03f7a2d8
...
...
@@ -4,7 +4,7 @@
* Copyright 2002-2005 Jason Edmeades
* Copyright 2002-2005 Raphael Junqueira
* Copyright 2005 Oliver Stieber
* Copyright 2009 Henri Verbeet for CodeWeavers
* Copyright 2009
-2010
Henri Verbeet for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
...
...
@@ -143,8 +143,10 @@ static ULONG WINAPI IWineD3DVolumeTextureImpl_Release(IWineD3DVolumeTexture *ifa
/* ****************************************************
IWineD3DVolumeTexture IWineD3DResource parts follow
**************************************************** */
static
HRESULT
WINAPI
IWineD3DVolumeTextureImpl_SetPrivateData
(
IWineD3DVolumeTexture
*
iface
,
REFGUID
refguid
,
CONST
void
*
pData
,
DWORD
SizeOfData
,
DWORD
Flags
)
{
return
resource_set_private_data
((
IWineD3DResource
*
)
iface
,
refguid
,
pData
,
SizeOfData
,
Flags
);
static
HRESULT
WINAPI
IWineD3DVolumeTextureImpl_SetPrivateData
(
IWineD3DVolumeTexture
*
iface
,
REFGUID
riid
,
const
void
*
data
,
DWORD
data_size
,
DWORD
flags
)
{
return
resource_set_private_data
((
IWineD3DResource
*
)
iface
,
riid
,
data
,
data_size
,
flags
);
}
static
HRESULT
WINAPI
IWineD3DVolumeTextureImpl_GetPrivateData
(
IWineD3DVolumeTexture
*
iface
,
REFGUID
refguid
,
void
*
pData
,
DWORD
*
pSizeOfData
)
{
...
...
dlls/wined3d/wined3d_private.h
View file @
03f7a2d8
...
...
@@ -2189,7 +2189,7 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_QueryInterface(IWineD3DSurface *iface,
ULONG
WINAPI
IWineD3DBaseSurfaceImpl_AddRef
(
IWineD3DSurface
*
iface
)
DECLSPEC_HIDDEN
;
void
*
WINAPI
IWineD3DBaseSurfaceImpl_GetParent
(
IWineD3DSurface
*
iface
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_SetPrivateData
(
IWineD3DSurface
*
iface
,
REFGUID
refguid
,
const
void
*
pData
,
DWORD
SizeOfData
,
DWORD
F
lags
)
DECLSPEC_HIDDEN
;
REFGUID
refguid
,
const
void
*
pData
,
DWORD
SizeOfData
,
DWORD
f
lags
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_GetPrivateData
(
IWineD3DSurface
*
iface
,
REFGUID
refguid
,
void
*
pData
,
DWORD
*
pSizeOfData
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_FreePrivateData
(
IWineD3DSurface
*
iface
,
REFGUID
refguid
)
DECLSPEC_HIDDEN
;
...
...
@@ -2197,21 +2197,21 @@ DWORD WINAPI IWineD3DBaseSurfaceImpl_SetPriority(IWineD3DSurface *iface, DWORD P
DWORD
WINAPI
IWineD3DBaseSurfaceImpl_GetPriority
(
IWineD3DSurface
*
iface
)
DECLSPEC_HIDDEN
;
WINED3DRESOURCETYPE
WINAPI
IWineD3DBaseSurfaceImpl_GetType
(
IWineD3DSurface
*
iface
)
DECLSPEC_HIDDEN
;
void
WINAPI
IWineD3DBaseSurfaceImpl_GetDesc
(
IWineD3DSurface
*
iface
,
WINED3DSURFACE_DESC
*
desc
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_GetBltStatus
(
IWineD3DSurface
*
iface
,
DWORD
F
lags
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_GetFlipStatus
(
IWineD3DSurface
*
iface
,
DWORD
F
lags
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_GetBltStatus
(
IWineD3DSurface
*
iface
,
DWORD
f
lags
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_GetFlipStatus
(
IWineD3DSurface
*
iface
,
DWORD
f
lags
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_IsLost
(
IWineD3DSurface
*
iface
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_Restore
(
IWineD3DSurface
*
iface
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_GetPalette
(
IWineD3DSurface
*
iface
,
IWineD3DPalette
**
Pal
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_SetPalette
(
IWineD3DSurface
*
iface
,
IWineD3DPalette
*
Pal
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_SetColorKey
(
IWineD3DSurface
*
iface
,
DWORD
F
lags
,
const
WINEDDCOLORKEY
*
CKey
)
DECLSPEC_HIDDEN
;
DWORD
f
lags
,
const
WINEDDCOLORKEY
*
CKey
)
DECLSPEC_HIDDEN
;
DWORD
WINAPI
IWineD3DBaseSurfaceImpl_GetPitch
(
IWineD3DSurface
*
iface
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_SetOverlayPosition
(
IWineD3DSurface
*
iface
,
LONG
X
,
LONG
Y
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_GetOverlayPosition
(
IWineD3DSurface
*
iface
,
LONG
*
X
,
LONG
*
Y
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_UpdateOverlayZOrder
(
IWineD3DSurface
*
iface
,
DWORD
F
lags
,
IWineD3DSurface
*
Ref
)
DECLSPEC_HIDDEN
;
DWORD
f
lags
,
IWineD3DSurface
*
Ref
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_UpdateOverlay
(
IWineD3DSurface
*
iface
,
const
RECT
*
SrcRect
,
IWineD3DSurface
*
DstSurface
,
const
RECT
*
DstRect
,
DWORD
F
lags
,
const
WINEDDOVERLAYFX
*
FX
)
DECLSPEC_HIDDEN
;
IWineD3DSurface
*
DstSurface
,
const
RECT
*
DstRect
,
DWORD
f
lags
,
const
WINEDDOVERLAYFX
*
FX
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_SetClipper
(
IWineD3DSurface
*
iface
,
IWineD3DClipper
*
clipper
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_GetClipper
(
IWineD3DSurface
*
iface
,
IWineD3DClipper
**
clipper
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_SetFormat
(
IWineD3DSurface
*
iface
,
...
...
@@ -2222,7 +2222,7 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_Blt(IWineD3DSurface *iface, const RECT *d
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_BltFast
(
IWineD3DSurface
*
iface
,
DWORD
dstx
,
DWORD
dsty
,
IWineD3DSurface
*
Source
,
const
RECT
*
rsrc
,
DWORD
trans
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSurfaceImpl_Map
(
IWineD3DSurface
*
iface
,
WINED3DLOCKED_RECT
*
pLockedRect
,
const
RECT
*
pRect
,
DWORD
F
lags
)
DECLSPEC_HIDDEN
;
const
RECT
*
pRect
,
DWORD
f
lags
)
DECLSPEC_HIDDEN
;
const
void
*
WINAPI
IWineD3DBaseSurfaceImpl_GetData
(
IWineD3DSurface
*
iface
)
DECLSPEC_HIDDEN
;
void
get_drawable_size_swapchain
(
struct
wined3d_context
*
context
,
UINT
*
width
,
UINT
*
height
)
DECLSPEC_HIDDEN
;
...
...
@@ -2634,7 +2634,7 @@ HRESULT WINAPI IWineD3DBaseSwapChainImpl_GetDevice(IWineD3DSwapChain *iface,
HRESULT
WINAPI
IWineD3DBaseSwapChainImpl_GetPresentParameters
(
IWineD3DSwapChain
*
iface
,
WINED3DPRESENT_PARAMETERS
*
pPresentationParameters
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSwapChainImpl_SetGammaRamp
(
IWineD3DSwapChain
*
iface
,
DWORD
F
lags
,
const
WINED3DGAMMARAMP
*
pRamp
)
DECLSPEC_HIDDEN
;
DWORD
f
lags
,
const
WINED3DGAMMARAMP
*
pRamp
)
DECLSPEC_HIDDEN
;
HRESULT
WINAPI
IWineD3DBaseSwapChainImpl_GetGammaRamp
(
IWineD3DSwapChain
*
iface
,
WINED3DGAMMARAMP
*
pRamp
)
DECLSPEC_HIDDEN
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment