Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
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-winehq
Commits
87ef65ab
Commit
87ef65ab
authored
Sep 11, 2013
by
Henri Verbeet
Committed by
Alexandre Julliard
Sep 11, 2013
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ddraw: Avoid LPVOID.
parent
9ccced6f
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
123 additions
and
132 deletions
+123
-132
main.c
dlls/ddraw/main.c
+18
-39
d3d.c
dlls/ddraw/tests/d3d.c
+2
-1
ddrawmodes.c
dlls/ddraw/tests/ddrawmodes.c
+20
-23
dsurface.c
dlls/ddraw/tests/dsurface.c
+1
-1
overlay.c
dlls/ddraw/tests/overlay.c
+2
-1
refcount.c
dlls/ddraw/tests/refcount.c
+2
-1
visual.c
dlls/ddraw/tests/visual.c
+2
-1
d3d.h
include/d3d.h
+32
-24
d3dcaps.h
include/d3dcaps.h
+1
-1
d3dtypes.h
include/d3dtypes.h
+7
-6
ddraw.h
include/ddraw.h
+36
-34
No files found.
dlls/ddraw/main.c
View file @
87ef65ab
...
...
@@ -296,28 +296,25 @@ HRESULT WINAPI DECLSPEC_HOTPATCH DirectDrawCreate(GUID *driver_guid, IDirectDraw
* Arguments, return values: See DDRAW_Create
*
***********************************************************************/
HRESULT
WINAPI
DECLSPEC_HOTPATCH
DirectDrawCreateEx
(
GUID
*
guid
,
LPVOID
*
dd
,
REFIID
iid
,
IUnknown
*
UnkOuter
)
HRESULT
WINAPI
DECLSPEC_HOTPATCH
DirectDrawCreateEx
(
GUID
*
driver_guid
,
void
**
ddraw
,
REFIID
interface_iid
,
IUnknown
*
outer
)
{
HRESULT
hr
;
TRACE
(
"driver_guid %s, ddraw %p, interface_iid %s, outer
_unknown
%p.
\n
"
,
debugstr_guid
(
guid
),
dd
,
debugstr_guid
(
iid
),
UnkO
uter
);
TRACE
(
"driver_guid %s, ddraw %p, interface_iid %s, outer %p.
\n
"
,
debugstr_guid
(
driver_guid
),
ddraw
,
debugstr_guid
(
interface_iid
),
o
uter
);
if
(
!
IsEqualGUID
(
iid
,
&
IID_IDirectDraw7
))
if
(
!
IsEqualGUID
(
i
nterface_i
id
,
&
IID_IDirectDraw7
))
return
DDERR_INVALIDPARAMS
;
wined3d_mutex_lock
();
hr
=
DDRAW_Create
(
guid
,
dd
,
UnkOuter
,
iid
);
hr
=
DDRAW_Create
(
driver_guid
,
ddraw
,
outer
,
interface_
iid
);
wined3d_mutex_unlock
();
if
(
SUCCEEDED
(
hr
))
{
IDirectDraw7
*
ddraw7
=
*
(
IDirectDraw7
**
)
dd
;
hr
=
IDirectDraw7_Initialize
(
ddraw7
,
guid
);
IDirectDraw7
*
ddraw7
=
*
(
IDirectDraw7
**
)
dd
raw
;
hr
=
IDirectDraw7_Initialize
(
ddraw7
,
driver_
guid
);
if
(
FAILED
(
hr
))
IDirectDraw7_Release
(
ddraw7
);
}
...
...
@@ -551,7 +548,7 @@ struct ddraw_class_factory
IClassFactory
IClassFactory_iface
;
LONG
ref
;
HRESULT
(
*
pfnCreateInstance
)(
IUnknown
*
pUnkOuter
,
REFIID
iid
,
LPVOID
*
ppObj
);
HRESULT
(
*
pfnCreateInstance
)(
IUnknown
*
outer
,
REFIID
iid
,
void
**
out
);
};
static
inline
struct
ddraw_class_factory
*
impl_from_IClassFactory
(
IClassFactory
*
iface
)
...
...
@@ -687,30 +684,13 @@ static const IClassFactoryVtbl IClassFactory_Vtbl =
ddraw_class_factory_LockServer
};
/*******************************************************************************
* DllGetClassObject [DDRAW.@]
* Retrieves class object from a DLL object
*
* NOTES
* Docs say returns STDAPI
*
* PARAMS
* rclsid [I] CLSID for the class object
* riid [I] Reference to identifier of interface for class object
* ppv [O] Address of variable to receive interface pointer for riid
*
* RETURNS
* Success: S_OK
* Failure: CLASS_E_CLASSNOTAVAILABLE, E_OUTOFMEMORY, E_INVALIDARG,
* E_UNEXPECTED
*/
HRESULT
WINAPI
DllGetClassObject
(
REFCLSID
rclsid
,
REFIID
riid
,
LPVOID
*
ppv
)
HRESULT
WINAPI
DllGetClassObject
(
REFCLSID
rclsid
,
REFIID
riid
,
void
**
out
)
{
struct
ddraw_class_factory
*
factory
;
unsigned
int
i
;
TRACE
(
"rclsid %s, riid %s, o
bjec
t %p.
\n
"
,
debugstr_guid
(
rclsid
),
debugstr_guid
(
riid
),
ppv
);
TRACE
(
"rclsid %s, riid %s, o
u
t %p.
\n
"
,
debugstr_guid
(
rclsid
),
debugstr_guid
(
riid
),
out
);
if
(
!
IsEqualGUID
(
&
IID_IClassFactory
,
riid
)
&&
!
IsEqualGUID
(
&
IID_IUnknown
,
riid
))
...
...
@@ -736,7 +716,7 @@ HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv)
factory
->
pfnCreateInstance
=
object_creation
[
i
].
pfnCreateInstance
;
*
ppv
=
factory
;
*
out
=
factory
;
return
S_OK
;
}
...
...
@@ -826,9 +806,8 @@ DestroyCallback(IDirectDrawSurface7 *surf,
* app didn't release them properly(Gothic 2, Diablo 2, Moto racer, ...)
*
***********************************************************************/
BOOL
WINAPI
DllMain
(
HINSTANCE
hInstDLL
,
DWORD
reason
,
LPVOID
reserved
)
BOOL
WINAPI
DllMain
(
HINSTANCE
inst
,
DWORD
reason
,
void
*
reserved
)
{
TRACE
(
"(%p,%x,%p)
\n
"
,
hInstDLL
,
reason
,
reserved
);
switch
(
reason
)
{
case
DLL_PROCESS_ATTACH
:
...
...
@@ -844,7 +823,7 @@ BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD reason, LPVOID reserved)
wc
.
lpfnWndProc
=
DefWindowProcA
;
wc
.
cbClsExtra
=
0
;
wc
.
cbWndExtra
=
0
;
wc
.
hInstance
=
hInstDLL
;
wc
.
hInstance
=
inst
;
wc
.
hIcon
=
0
;
wc
.
hCursor
=
0
;
wc
.
hbrBackground
=
GetStockObject
(
BLACK_BRUSH
);
...
...
@@ -899,8 +878,8 @@ BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD reason, LPVOID reserved)
if
(
!
GetModuleHandleExW
(
GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS
,
(
const
WCHAR
*
)
&
ddraw_self
,
&
ddraw_self
))
ERR
(
"Failed to get own module handle.
\n
"
);
instance
=
hInstDLL
;
DisableThreadLibraryCalls
(
hInstDLL
);
instance
=
inst
;
DisableThreadLibraryCalls
(
inst
);
break
;
}
...
...
@@ -969,7 +948,7 @@ BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD reason, LPVOID reserved)
}
if
(
reserved
)
break
;
UnregisterClassA
(
DDRAW_WINDOW_CLASS_NAME
,
hInstDLL
);
UnregisterClassA
(
DDRAW_WINDOW_CLASS_NAME
,
inst
);
}
return
TRUE
;
...
...
dlls/ddraw/tests/d3d.c
View file @
87ef65ab
...
...
@@ -67,7 +67,8 @@ typedef struct
char
callback_name_strings
[
MAX_ENUMERATION_COUNT
][
100
];
}
D3D7ELifetimeTest
;
static
HRESULT
(
WINAPI
*
pDirectDrawCreateEx
)(
LPGUID
,
LPVOID
*
,
REFIID
,
LPUNKNOWN
);
static
HRESULT
(
WINAPI
*
pDirectDrawCreateEx
)(
GUID
*
driver_guid
,
void
**
ddraw
,
REFIID
interface_iid
,
IUnknown
*
outer
);
static
void
init_function_pointers
(
void
)
{
...
...
dlls/ddraw/tests/ddrawmodes.c
View file @
87ef65ab
...
...
@@ -43,10 +43,10 @@ static int modes16bpp_cnt;
static
int
refresh_rate
;
static
int
refresh_rate_cnt
;
static
HRESULT
(
WINAPI
*
pDirectDrawEnumerateA
)(
LPDDENUMCALLBACKA
,
LPVOID
);
static
HRESULT
(
WINAPI
*
pDirectDrawEnumerateW
)(
LPDDENUMCALLBACKW
,
LPVOID
);
static
HRESULT
(
WINAPI
*
pDirectDrawEnumerateExA
)(
LPDDENUMCALLBACKEXA
,
LPVOID
,
DWORD
);
static
HRESULT
(
WINAPI
*
pDirectDrawEnumerateExW
)(
LPDDENUMCALLBACKEXW
,
LPVOID
,
DWORD
);
static
HRESULT
(
WINAPI
*
pDirectDrawEnumerateA
)(
LPDDENUMCALLBACKA
cb
,
void
*
ctx
);
static
HRESULT
(
WINAPI
*
pDirectDrawEnumerateW
)(
LPDDENUMCALLBACKW
cb
,
void
*
ctx
);
static
HRESULT
(
WINAPI
*
pDirectDrawEnumerateExA
)(
LPDDENUMCALLBACKEXA
cb
,
void
*
ctx
,
DWORD
flags
);
static
HRESULT
(
WINAPI
*
pDirectDrawEnumerateExW
)(
LPDDENUMCALLBACKEXW
cb
,
void
*
ctx
,
DWORD
flags
);
static
void
init_function_pointers
(
void
)
{
...
...
@@ -104,8 +104,8 @@ static void releasedirectdraw(void)
}
}
static
BOOL
WINAPI
test_nullcontext_callbackA
(
GUID
*
lpGUID
,
LPSTR
lpDriverDescription
,
LPSTR
lpDriverName
,
LPVOID
lpContext
)
static
BOOL
WINAPI
test_nullcontext_callbackA
(
GUID
*
lpGUID
,
char
*
lpDriverDescription
,
char
*
lpDriverName
,
void
*
lpContext
)
{
trace
(
"test_nullcontext_callbackA: %p %s %s %p
\n
"
,
lpGUID
,
lpDriverDescription
,
lpDriverName
,
lpContext
);
...
...
@@ -115,13 +115,13 @@ static BOOL WINAPI test_nullcontext_callbackA(GUID *lpGUID, LPSTR lpDriverDescri
return
TRUE
;
}
static
BOOL
WINAPI
test_context_callbackA
(
GUID
*
lpGUID
,
LPSTR
lpDriverDescription
,
LPSTR
lpDriverName
,
LPVOID
lpContext
)
static
BOOL
WINAPI
test_context_callbackA
(
GUID
*
lpGUID
,
char
*
lpDriverDescription
,
char
*
lpDriverName
,
void
*
lpContext
)
{
trace
(
"test_context_callbackA: %p %s %s %p
\n
"
,
lpGUID
,
lpDriverDescription
,
lpDriverName
,
lpContext
);
ok
(
lpContext
==
(
LPVOID
)
0xdeadbeef
,
"Expected non-NULL lpContext
\n
"
);
ok
(
lpContext
==
(
void
*
)
0xdeadbeef
,
"Expected non-NULL lpContext
\n
"
);
return
TRUE
;
}
...
...
@@ -147,12 +147,12 @@ static void test_DirectDrawEnumerateA(void)
/* Test with valid callback parameter and valid context parameter. */
trace
(
"Calling DirectDrawEnumerateA with test_context_callbackA callback and non-NULL context.
\n
"
);
ret
=
pDirectDrawEnumerateA
(
test_context_callbackA
,
(
LPVOID
)
0xdeadbeef
);
ret
=
pDirectDrawEnumerateA
(
test_context_callbackA
,
(
void
*
)
0xdeadbeef
);
ok
(
ret
==
DD_OK
,
"Expected DD_OK, got %d
\n
"
,
ret
);
}
static
BOOL
WINAPI
test_callbackW
(
GUID
*
lpGUID
,
LPWSTR
lpDriverDescription
,
LPWSTR
lpDriverName
,
LPVOID
lpContext
)
static
BOOL
WINAPI
test_callbackW
(
GUID
*
lpGUID
,
WCHAR
*
lpDriverDescription
,
WCHAR
*
lpDriverName
,
void
*
lpContext
)
{
ok
(
0
,
"The callback should not be invoked by DirectDrawEnumerateW
\n
"
);
return
TRUE
;
...
...
@@ -187,9 +187,8 @@ static void test_DirectDrawEnumerateW(void)
ok
(
ret
==
DDERR_UNSUPPORTED
,
"Expected DDERR_UNSUPPORTED, got %d
\n
"
,
ret
);
}
static
BOOL
WINAPI
test_nullcontext_callbackExA
(
GUID
*
lpGUID
,
LPSTR
lpDriverDescription
,
LPSTR
lpDriverName
,
LPVOID
lpContext
,
HMONITOR
hm
)
static
BOOL
WINAPI
test_nullcontext_callbackExA
(
GUID
*
lpGUID
,
char
*
lpDriverDescription
,
char
*
lpDriverName
,
void
*
lpContext
,
HMONITOR
hm
)
{
trace
(
"test_nullcontext_callbackExA: %p %s %s %p %p
\n
"
,
lpGUID
,
lpDriverDescription
,
lpDriverName
,
lpContext
,
hm
);
...
...
@@ -199,14 +198,13 @@ static BOOL WINAPI test_nullcontext_callbackExA(GUID *lpGUID, LPSTR lpDriverDesc
return
TRUE
;
}
static
BOOL
WINAPI
test_context_callbackExA
(
GUID
*
lpGUID
,
LPSTR
lpDriverDescription
,
LPSTR
lpDriverName
,
LPVOID
lpContext
,
HMONITOR
hm
)
static
BOOL
WINAPI
test_context_callbackExA
(
GUID
*
lpGUID
,
char
*
lpDriverDescription
,
char
*
lpDriverName
,
void
*
lpContext
,
HMONITOR
hm
)
{
trace
(
"test_context_callbackExA: %p %s %s %p %p
\n
"
,
lpGUID
,
lpDriverDescription
,
lpDriverName
,
lpContext
,
hm
);
ok
(
lpContext
==
(
LPVOID
)
0xdeadbeef
,
"Expected non-NULL lpContext
\n
"
);
ok
(
lpContext
==
(
void
*
)
0xdeadbeef
,
"Expected non-NULL lpContext
\n
"
);
return
TRUE
;
}
...
...
@@ -236,7 +234,7 @@ static void test_DirectDrawEnumerateExA(void)
/* Test with valid callback parameter and non-NULL context parameter. */
trace
(
"Calling DirectDrawEnumerateExA with empty flags and non-NULL context.
\n
"
);
ret
=
pDirectDrawEnumerateExA
(
test_context_callbackExA
,
(
LPVOID
)
0xdeadbeef
,
0
);
ret
=
pDirectDrawEnumerateExA
(
test_context_callbackExA
,
(
void
*
)
0xdeadbeef
,
0
);
ok
(
ret
==
DD_OK
,
"Expected DD_OK, got %d
\n
"
,
ret
);
/* Test with valid callback parameter, NULL context parameter, and all flags set. */
...
...
@@ -248,9 +246,8 @@ static void test_DirectDrawEnumerateExA(void)
ok
(
ret
==
DD_OK
,
"Expected DD_OK, got %d
\n
"
,
ret
);
}
static
BOOL
WINAPI
test_callbackExW
(
GUID
*
lpGUID
,
LPWSTR
lpDriverDescription
,
LPWSTR
lpDriverName
,
LPVOID
lpContext
,
HMONITOR
hm
)
static
BOOL
WINAPI
test_callbackExW
(
GUID
*
lpGUID
,
WCHAR
*
lpDriverDescription
,
WCHAR
*
lpDriverName
,
void
*
lpContext
,
HMONITOR
hm
)
{
ok
(
0
,
"The callback should not be invoked by DirectDrawEnumerateExW.
\n
"
);
return
TRUE
;
...
...
dlls/ddraw/tests/dsurface.c
View file @
87ef65ab
...
...
@@ -740,7 +740,7 @@ static void QueryInterface(void)
{
IDirectDrawSurface
*
dsurface
;
DDSURFACEDESC
surface
;
LPVOID
object
;
void
*
object
;
HRESULT
ret
;
/* Create a surface */
...
...
dlls/ddraw/tests/overlay.c
View file @
87ef65ab
...
...
@@ -23,7 +23,8 @@
#include "ddraw.h"
#include "unknwn.h"
static
HRESULT
(
WINAPI
*
pDirectDrawCreateEx
)(
LPGUID
,
LPVOID
*
,
REFIID
,
LPUNKNOWN
);
static
HRESULT
(
WINAPI
*
pDirectDrawCreateEx
)(
GUID
*
driver_guid
,
void
**
ddraw
,
REFIID
interface_iid
,
IUnknown
*
outer
);
static
IDirectDraw7
*
ddraw
=
NULL
;
static
IDirectDrawSurface7
*
primary
=
NULL
;
...
...
dlls/ddraw/tests/refcount.c
View file @
87ef65ab
...
...
@@ -24,7 +24,8 @@
#include "d3d.h"
#include "unknwn.h"
static
HRESULT
(
WINAPI
*
pDirectDrawCreateEx
)(
LPGUID
,
LPVOID
*
,
REFIID
,
LPUNKNOWN
);
static
HRESULT
(
WINAPI
*
pDirectDrawCreateEx
)(
GUID
*
driver_guid
,
void
**
ddraw
,
REFIID
interface_iid
,
IUnknown
*
outer
);
static
void
init_function_pointers
(
void
)
{
...
...
dlls/ddraw/tests/visual.c
View file @
87ef65ab
...
...
@@ -39,7 +39,8 @@ static IDirect3DViewport *Viewport;
static
BOOL
refdevice
=
FALSE
;
static
HRESULT
(
WINAPI
*
pDirectDrawCreateEx
)(
LPGUID
,
LPVOID
*
,
REFIID
,
LPUNKNOWN
);
static
HRESULT
(
WINAPI
*
pDirectDrawCreateEx
)(
GUID
*
driver_guid
,
void
**
ddraw
,
REFIID
interface_iid
,
IUnknown
*
outer
);
static
BOOL
color_match
(
D3DCOLOR
c1
,
D3DCOLOR
c2
,
BYTE
max_diff
)
{
...
...
include/d3d.h
View file @
87ef65ab
...
...
@@ -212,7 +212,7 @@ DECLARE_INTERFACE_(IDirect3D,IUnknown)
STDMETHOD_
(
ULONG
,
Release
)(
THIS
)
PURE
;
/*** IDirect3D methods ***/
STDMETHOD
(
Initialize
)(
THIS_
REFIID
riid
)
PURE
;
STDMETHOD
(
EnumDevices
)(
THIS_
LPD3DENUMDEVICESCALLBACK
lpEnumDevicesCallback
,
LPVOID
lpUserArg
)
PURE
;
STDMETHOD
(
EnumDevices
)(
THIS_
LPD3DENUMDEVICESCALLBACK
cb
,
void
*
ctx
)
PURE
;
STDMETHOD
(
CreateLight
)(
THIS_
struct
IDirect3DLight
**
light
,
IUnknown
*
outer
)
PURE
;
STDMETHOD
(
CreateMaterial
)(
THIS_
struct
IDirect3DMaterial
**
material
,
IUnknown
*
outer
)
PURE
;
STDMETHOD
(
CreateViewport
)(
THIS_
struct
IDirect3DViewport
**
viewport
,
IUnknown
*
outer
)
PURE
;
...
...
@@ -258,7 +258,7 @@ DECLARE_INTERFACE_(IDirect3D2,IUnknown)
STDMETHOD_
(
ULONG
,
AddRef
)(
THIS
)
PURE
;
STDMETHOD_
(
ULONG
,
Release
)(
THIS
)
PURE
;
/*** IDirect3D2 methods ***/
STDMETHOD
(
EnumDevices
)(
THIS_
LPD3DENUMDEVICESCALLBACK
lpEnumDevicesCallback
,
LPVOID
lpUserArg
)
PURE
;
STDMETHOD
(
EnumDevices
)(
THIS_
LPD3DENUMDEVICESCALLBACK
cb
,
void
*
ctx
)
PURE
;
STDMETHOD
(
CreateLight
)(
THIS_
struct
IDirect3DLight
**
light
,
IUnknown
*
outer
)
PURE
;
STDMETHOD
(
CreateMaterial
)(
THIS_
struct
IDirect3DMaterial2
**
material
,
IUnknown
*
outer
)
PURE
;
STDMETHOD
(
CreateViewport
)(
THIS_
struct
IDirect3DViewport2
**
viewport
,
IUnknown
*
outer
)
PURE
;
...
...
@@ -306,7 +306,7 @@ DECLARE_INTERFACE_(IDirect3D3,IUnknown)
STDMETHOD_
(
ULONG
,
AddRef
)(
THIS
)
PURE
;
STDMETHOD_
(
ULONG
,
Release
)(
THIS
)
PURE
;
/*** IDirect3D3 methods ***/
STDMETHOD
(
EnumDevices
)(
THIS_
LPD3DENUMDEVICESCALLBACK
lpEnumDevicesCallback
,
LPVOID
lpUserArg
)
PURE
;
STDMETHOD
(
EnumDevices
)(
THIS_
LPD3DENUMDEVICESCALLBACK
cb
,
void
*
ctx
)
PURE
;
STDMETHOD
(
CreateLight
)(
THIS_
struct
IDirect3DLight
**
light
,
IUnknown
*
outer
)
PURE
;
STDMETHOD
(
CreateMaterial
)(
THIS_
struct
IDirect3DMaterial3
**
material
,
IUnknown
*
outer
)
PURE
;
STDMETHOD
(
CreateViewport
)(
THIS_
struct
IDirect3DViewport3
**
viewport
,
IUnknown
*
outer
)
PURE
;
...
...
@@ -315,7 +315,7 @@ DECLARE_INTERFACE_(IDirect3D3,IUnknown)
struct
IDirect3DDevice3
**
device
,
IUnknown
*
outer
)
PURE
;
STDMETHOD
(
CreateVertexBuffer
)(
THIS_
D3DVERTEXBUFFERDESC
*
desc
,
struct
IDirect3DVertexBuffer
**
buffer
,
DWORD
flags
,
IUnknown
*
outer
)
PURE
;
STDMETHOD
(
EnumZBufferFormats
)(
THIS_
REFCLSID
riidDevice
,
LPD3DENUMPIXELFORMATSCALLBACK
lpEnumCallback
,
LPVOID
lpContext
)
PURE
;
STDMETHOD
(
EnumZBufferFormats
)(
THIS_
REFCLSID
device_iid
,
LPD3DENUMPIXELFORMATSCALLBACK
cb
,
void
*
ctx
)
PURE
;
STDMETHOD
(
EvictManagedTextures
)(
THIS
)
PURE
;
};
#undef INTERFACE
...
...
@@ -363,12 +363,12 @@ DECLARE_INTERFACE_(IDirect3D7,IUnknown)
STDMETHOD_
(
ULONG
,
AddRef
)(
THIS
)
PURE
;
STDMETHOD_
(
ULONG
,
Release
)(
THIS
)
PURE
;
/*** IDirect3D7 methods ***/
STDMETHOD
(
EnumDevices
)(
THIS_
LPD3DENUMDEVICESCALLBACK7
lpEnumDevicesCallback
,
LPVOID
lpUserArg
)
PURE
;
STDMETHOD
(
EnumDevices
)(
THIS_
LPD3DENUMDEVICESCALLBACK7
cb
,
void
*
ctx
)
PURE
;
STDMETHOD
(
CreateDevice
)(
THIS_
REFCLSID
rclsid
,
IDirectDrawSurface7
*
surface
,
struct
IDirect3DDevice7
**
device
)
PURE
;
STDMETHOD
(
CreateVertexBuffer
)(
THIS_
D3DVERTEXBUFFERDESC
*
desc
,
struct
IDirect3DVertexBuffer7
**
buffer
,
DWORD
flags
)
PURE
;
STDMETHOD
(
EnumZBufferFormats
)(
THIS_
REFCLSID
riidDevice
,
LPD3DENUMPIXELFORMATSCALLBACK
lpEnumCallback
,
LPVOID
lpContext
)
PURE
;
STDMETHOD
(
EnumZBufferFormats
)(
THIS_
REFCLSID
device_iid
,
LPD3DENUMPIXELFORMATSCALLBACK
cb
,
void
*
ctx
)
PURE
;
STDMETHOD
(
EvictManagedTextures
)(
THIS
)
PURE
;
};
#undef INTERFACE
...
...
@@ -891,7 +891,7 @@ DECLARE_INTERFACE_(IDirect3DExecuteBuffer,IUnknown)
STDMETHOD
(
Unlock
)(
THIS
)
PURE
;
STDMETHOD
(
SetExecuteData
)(
THIS_
D3DEXECUTEDATA
*
data
)
PURE
;
STDMETHOD
(
GetExecuteData
)(
THIS_
D3DEXECUTEDATA
*
data
)
PURE
;
STDMETHOD
(
Validate
)(
THIS_
LPDWORD
lpdwOffset
,
LPD3DVALIDATECALLBACK
lpFunc
,
LPVOID
lpUserArg
,
DWORD
dwR
eserved
)
PURE
;
STDMETHOD
(
Validate
)(
THIS_
DWORD
*
offset
,
LPD3DVALIDATECALLBACK
cb
,
void
*
ctx
,
DWORD
r
eserved
)
PURE
;
STDMETHOD
(
Optimize
)(
THIS_
DWORD
dwDummy
)
PURE
;
};
#undef INTERFACE
...
...
@@ -951,7 +951,7 @@ DECLARE_INTERFACE_(IDirect3DDevice,IUnknown)
STDMETHOD
(
Pick
)(
THIS_
IDirect3DExecuteBuffer
*
buffer
,
IDirect3DViewport
*
viewport
,
DWORD
flags
,
D3DRECT
*
rect
)
PURE
;
STDMETHOD
(
GetPickRecords
)(
THIS_
DWORD
*
count
,
D3DPICKRECORD
*
records
)
PURE
;
STDMETHOD
(
EnumTextureFormats
)(
THIS_
LPD3DENUMTEXTUREFORMATSCALLBACK
lpD3DEnumTextureProc
,
LPVOID
lpArg
)
PURE
;
STDMETHOD
(
EnumTextureFormats
)(
THIS_
LPD3DENUMTEXTUREFORMATSCALLBACK
cb
,
void
*
ctx
)
PURE
;
STDMETHOD
(
CreateMatrix
)(
THIS_
D3DMATRIXHANDLE
*
matrix
)
PURE
;
STDMETHOD
(
SetMatrix
)(
THIS_
D3DMATRIXHANDLE
handle
,
D3DMATRIX
*
matrix
)
PURE
;
STDMETHOD
(
GetMatrix
)(
THIS_
D3DMATRIXHANDLE
handle
,
D3DMATRIX
*
matrix
)
PURE
;
...
...
@@ -1033,7 +1033,7 @@ DECLARE_INTERFACE_(IDirect3DDevice2,IUnknown)
STDMETHOD
(
DeleteViewport
)(
THIS_
IDirect3DViewport2
*
viewport
)
PURE
;
STDMETHOD
(
NextViewport
)(
THIS_
IDirect3DViewport2
*
ref
,
IDirect3DViewport2
**
viewport
,
DWORD
flags
)
PURE
;
STDMETHOD
(
EnumTextureFormats
)(
THIS_
LPD3DENUMTEXTUREFORMATSCALLBACK
lpD3DEnumTextureProc
,
LPVOID
lpArg
)
PURE
;
STDMETHOD
(
EnumTextureFormats
)(
THIS_
LPD3DENUMTEXTUREFORMATSCALLBACK
cb
,
void
*
ctx
)
PURE
;
STDMETHOD
(
BeginScene
)(
THIS
)
PURE
;
STDMETHOD
(
EndScene
)(
THIS
)
PURE
;
STDMETHOD
(
GetDirect3D
)(
THIS_
IDirect3D2
**
d3d
)
PURE
;
...
...
@@ -1043,8 +1043,9 @@ DECLARE_INTERFACE_(IDirect3DDevice2,IUnknown)
STDMETHOD
(
SetRenderTarget
)(
THIS_
IDirectDrawSurface
*
surface
,
DWORD
flags
)
PURE
;
STDMETHOD
(
GetRenderTarget
)(
THIS_
IDirectDrawSurface
**
surface
)
PURE
;
STDMETHOD
(
Begin
)(
THIS_
D3DPRIMITIVETYPE
d3dpt
,
D3DVERTEXTYPE
dwVertexTypeDesc
,
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
BeginIndexed
)(
THIS_
D3DPRIMITIVETYPE
d3dptPrimitiveType
,
D3DVERTEXTYPE
d3dvtVertexType
,
LPVOID
lpvVertices
,
DWORD
dwNumVertices
,
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
Vertex
)(
THIS_
LPVOID
lpVertexType
)
PURE
;
STDMETHOD
(
BeginIndexed
)(
THIS_
D3DPRIMITIVETYPE
primitive_type
,
D3DVERTEXTYPE
vertex_type
,
void
*
vertices
,
DWORD
vertex_count
,
DWORD
flags
)
PURE
;
STDMETHOD
(
Vertex
)(
THIS_
void
*
vertex
)
PURE
;
STDMETHOD
(
Index
)(
THIS_
WORD
wVertexIndex
)
PURE
;
STDMETHOD
(
End
)(
THIS_
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
GetRenderState
)(
THIS_
D3DRENDERSTATETYPE
dwRenderStateType
,
LPDWORD
lpdwRenderState
)
PURE
;
...
...
@@ -1054,8 +1055,10 @@ DECLARE_INTERFACE_(IDirect3DDevice2,IUnknown)
STDMETHOD
(
SetTransform
)(
THIS_
D3DTRANSFORMSTATETYPE
state
,
D3DMATRIX
*
matrix
)
PURE
;
STDMETHOD
(
GetTransform
)(
THIS_
D3DTRANSFORMSTATETYPE
state
,
D3DMATRIX
*
matrix
)
PURE
;
STDMETHOD
(
MultiplyTransform
)(
THIS_
D3DTRANSFORMSTATETYPE
state
,
D3DMATRIX
*
matrix
)
PURE
;
STDMETHOD
(
DrawPrimitive
)(
THIS_
D3DPRIMITIVETYPE
d3dptPrimitiveType
,
D3DVERTEXTYPE
d3dvtVertexType
,
LPVOID
lpvVertices
,
DWORD
dwVertexCount
,
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
DrawIndexedPrimitive
)(
THIS_
D3DPRIMITIVETYPE
d3dptPrimitiveType
,
D3DVERTEXTYPE
d3dvtVertexType
,
LPVOID
lpvVertices
,
DWORD
dwVertexCount
,
LPWORD
dwIndices
,
DWORD
dwIndexCount
,
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
DrawPrimitive
)(
THIS_
D3DPRIMITIVETYPE
primitive_type
,
D3DVERTEXTYPE
vertex_type
,
void
*
vertices
,
DWORD
vertex_count
,
DWORD
flags
)
PURE
;
STDMETHOD
(
DrawIndexedPrimitive
)(
THIS_
D3DPRIMITIVETYPE
primitive_type
,
D3DVERTEXTYPE
vertex_type
,
void
*
vertices
,
DWORD
vertex_count
,
WORD
*
indices
,
DWORD
index_count
,
DWORD
flags
)
PURE
;
STDMETHOD
(
SetClipStatus
)(
THIS_
D3DCLIPSTATUS
*
clip_status
)
PURE
;
STDMETHOD
(
GetClipStatus
)(
THIS_
D3DCLIPSTATUS
*
clip_status
)
PURE
;
};
...
...
@@ -1152,7 +1155,7 @@ DECLARE_INTERFACE_(IDirect3DDevice3,IUnknown)
STDMETHOD
(
DeleteViewport
)(
THIS_
IDirect3DViewport3
*
viewport
)
PURE
;
STDMETHOD
(
NextViewport
)(
THIS_
IDirect3DViewport3
*
ref
,
IDirect3DViewport3
**
viewport
,
DWORD
flags
)
PURE
;
STDMETHOD
(
EnumTextureFormats
)(
THIS_
LPD3DENUMPIXELFORMATSCALLBACK
lpD3DEnumPixelProc
,
LPVOID
lpArg
)
PURE
;
STDMETHOD
(
EnumTextureFormats
)(
THIS_
LPD3DENUMPIXELFORMATSCALLBACK
cb
,
void
*
ctx
)
PURE
;
STDMETHOD
(
BeginScene
)(
THIS
)
PURE
;
STDMETHOD
(
EndScene
)(
THIS
)
PURE
;
STDMETHOD
(
GetDirect3D
)(
THIS_
IDirect3D3
**
d3d
)
PURE
;
...
...
@@ -1162,8 +1165,9 @@ DECLARE_INTERFACE_(IDirect3DDevice3,IUnknown)
STDMETHOD
(
SetRenderTarget
)(
THIS_
IDirectDrawSurface4
*
surface
,
DWORD
flags
)
PURE
;
STDMETHOD
(
GetRenderTarget
)(
THIS_
IDirectDrawSurface4
**
surface
)
PURE
;
STDMETHOD
(
Begin
)(
THIS_
D3DPRIMITIVETYPE
d3dptPrimitiveType
,
DWORD
dwVertexTypeDesc
,
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
BeginIndexed
)(
THIS_
D3DPRIMITIVETYPE
d3dptPrimitiveType
,
DWORD
d3dvtVertexType
,
LPVOID
lpvVertices
,
DWORD
dwNumVertices
,
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
Vertex
)(
THIS_
LPVOID
lpVertexType
)
PURE
;
STDMETHOD
(
BeginIndexed
)(
THIS_
D3DPRIMITIVETYPE
primitive_type
,
DWORD
fvf
,
void
*
vertices
,
DWORD
vertex_count
,
DWORD
flags
)
PURE
;
STDMETHOD
(
Vertex
)(
THIS_
void
*
vertex
)
PURE
;
STDMETHOD
(
Index
)(
THIS_
WORD
wVertexIndex
)
PURE
;
STDMETHOD
(
End
)(
THIS_
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
GetRenderState
)(
THIS_
D3DRENDERSTATETYPE
dwRenderStateType
,
LPDWORD
lpdwRenderState
)
PURE
;
...
...
@@ -1173,8 +1177,10 @@ DECLARE_INTERFACE_(IDirect3DDevice3,IUnknown)
STDMETHOD
(
SetTransform
)(
THIS_
D3DTRANSFORMSTATETYPE
state
,
D3DMATRIX
*
matrix
)
PURE
;
STDMETHOD
(
GetTransform
)(
THIS_
D3DTRANSFORMSTATETYPE
state
,
D3DMATRIX
*
matrix
)
PURE
;
STDMETHOD
(
MultiplyTransform
)(
THIS_
D3DTRANSFORMSTATETYPE
state
,
D3DMATRIX
*
matrix
)
PURE
;
STDMETHOD
(
DrawPrimitive
)(
THIS_
D3DPRIMITIVETYPE
d3dptPrimitiveType
,
DWORD
d3dvtVertexType
,
LPVOID
lpvVertices
,
DWORD
dwVertexCount
,
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
DrawIndexedPrimitive
)(
THIS_
D3DPRIMITIVETYPE
d3dptPrimitiveType
,
DWORD
d3dvtVertexType
,
LPVOID
lpvVertices
,
DWORD
dwVertexCount
,
LPWORD
dwIndices
,
DWORD
dwIndexCount
,
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
DrawPrimitive
)(
THIS_
D3DPRIMITIVETYPE
primitive_type
,
DWORD
vertex_type
,
void
*
vertices
,
DWORD
vertex_count
,
DWORD
flags
)
PURE
;
STDMETHOD
(
DrawIndexedPrimitive
)(
THIS_
D3DPRIMITIVETYPE
primitive_type
,
DWORD
fvf
,
void
*
vertices
,
DWORD
vertex_count
,
WORD
*
indices
,
DWORD
index_count
,
DWORD
flags
)
PURE
;
STDMETHOD
(
SetClipStatus
)(
THIS_
D3DCLIPSTATUS
*
clip_status
)
PURE
;
STDMETHOD
(
GetClipStatus
)(
THIS_
D3DCLIPSTATUS
*
clip_status
)
PURE
;
STDMETHOD
(
DrawPrimitiveStrided
)(
THIS_
D3DPRIMITIVETYPE
primitive_type
,
DWORD
fvf
,
...
...
@@ -1300,7 +1306,7 @@ DECLARE_INTERFACE_(IDirect3DDevice7,IUnknown)
STDMETHOD_
(
ULONG
,
Release
)(
THIS
)
PURE
;
/*** IDirect3DDevice7 methods ***/
STDMETHOD
(
GetCaps
)(
THIS_
D3DDEVICEDESC7
*
desc
)
PURE
;
STDMETHOD
(
EnumTextureFormats
)(
THIS_
LPD3DENUMPIXELFORMATSCALLBACK
lpD3DEnumPixelProc
,
LPVOID
lpArg
)
PURE
;
STDMETHOD
(
EnumTextureFormats
)(
THIS_
LPD3DENUMPIXELFORMATSCALLBACK
cb
,
void
*
ctx
)
PURE
;
STDMETHOD
(
BeginScene
)(
THIS
)
PURE
;
STDMETHOD
(
EndScene
)(
THIS
)
PURE
;
STDMETHOD
(
GetDirect3D
)(
THIS_
IDirect3D7
**
d3d
)
PURE
;
...
...
@@ -1321,8 +1327,10 @@ DECLARE_INTERFACE_(IDirect3DDevice7,IUnknown)
STDMETHOD
(
BeginStateBlock
)(
THIS
)
PURE
;
STDMETHOD
(
EndStateBlock
)(
THIS_
LPDWORD
lpdwBlockHandle
)
PURE
;
STDMETHOD
(
PreLoad
)(
THIS_
IDirectDrawSurface7
*
surface
)
PURE
;
STDMETHOD
(
DrawPrimitive
)(
THIS_
D3DPRIMITIVETYPE
d3dptPrimitiveType
,
DWORD
d3dvtVertexType
,
LPVOID
lpvVertices
,
DWORD
dwVertexCount
,
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
DrawIndexedPrimitive
)(
THIS_
D3DPRIMITIVETYPE
d3dptPrimitiveType
,
DWORD
d3dvtVertexType
,
LPVOID
lpvVertices
,
DWORD
dwVertexCount
,
LPWORD
dwIndices
,
DWORD
dwIndexCount
,
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
DrawPrimitive
)(
THIS_
D3DPRIMITIVETYPE
primitive_type
,
DWORD
fvf
,
void
*
vertices
,
DWORD
vertex_count
,
DWORD
flags
)
PURE
;
STDMETHOD
(
DrawIndexedPrimitive
)(
THIS_
D3DPRIMITIVETYPE
primitive_type
,
DWORD
fvf
,
void
*
vertices
,
DWORD
vertex_count
,
WORD
*
indices
,
DWORD
index_count
,
DWORD
flags
)
PURE
;
STDMETHOD
(
SetClipStatus
)(
THIS_
D3DCLIPSTATUS
*
clip_status
)
PURE
;
STDMETHOD
(
GetClipStatus
)(
THIS_
D3DCLIPSTATUS
*
clip_status
)
PURE
;
STDMETHOD
(
DrawPrimitiveStrided
)(
THIS_
D3DPRIMITIVETYPE
primitive_type
,
DWORD
fvf
,
...
...
@@ -1351,7 +1359,7 @@ DECLARE_INTERFACE_(IDirect3DDevice7,IUnknown)
STDMETHOD
(
GetLightEnable
)(
THIS_
DWORD
dwLightIndex
,
BOOL
*
pbEnable
)
PURE
;
STDMETHOD
(
SetClipPlane
)(
THIS_
DWORD
dwIndex
,
D3DVALUE
*
pPlaneEquation
)
PURE
;
STDMETHOD
(
GetClipPlane
)(
THIS_
DWORD
dwIndex
,
D3DVALUE
*
pPlaneEquation
)
PURE
;
STDMETHOD
(
GetInfo
)(
THIS_
DWORD
dwDevInfoID
,
LPVOID
pDevInfoStruct
,
DWORD
dwS
ize
)
PURE
;
STDMETHOD
(
GetInfo
)(
THIS_
DWORD
info_id
,
void
*
info
,
DWORD
info_s
ize
)
PURE
;
};
#undef INTERFACE
...
...
@@ -1474,7 +1482,7 @@ DECLARE_INTERFACE_(IDirect3DVertexBuffer,IUnknown)
STDMETHOD_
(
ULONG
,
AddRef
)(
THIS
)
PURE
;
STDMETHOD_
(
ULONG
,
Release
)(
THIS
)
PURE
;
/*** IDirect3DVertexBuffer methods ***/
STDMETHOD
(
Lock
)(
THIS_
DWORD
dwFlags
,
LPVOID
*
lplpData
,
LPDWORD
lpdwS
ize
)
PURE
;
STDMETHOD
(
Lock
)(
THIS_
DWORD
flags
,
void
**
data
,
DWORD
*
data_s
ize
)
PURE
;
STDMETHOD
(
Unlock
)(
THIS
)
PURE
;
STDMETHOD
(
ProcessVertices
)(
THIS_
DWORD
vertex_op
,
DWORD
dst_idx
,
DWORD
count
,
IDirect3DVertexBuffer
*
src_buffer
,
DWORD
src_idx
,
...
...
@@ -1519,7 +1527,7 @@ DECLARE_INTERFACE_(IDirect3DVertexBuffer7,IUnknown)
STDMETHOD_
(
ULONG
,
AddRef
)(
THIS
)
PURE
;
STDMETHOD_
(
ULONG
,
Release
)(
THIS
)
PURE
;
/*** IDirect3DVertexBuffer7 methods ***/
STDMETHOD
(
Lock
)(
THIS_
DWORD
dwFlags
,
LPVOID
*
lplpData
,
LPDWORD
lpdwS
ize
)
PURE
;
STDMETHOD
(
Lock
)(
THIS_
DWORD
flags
,
void
**
data
,
DWORD
*
data_s
ize
)
PURE
;
STDMETHOD
(
Unlock
)(
THIS
)
PURE
;
STDMETHOD
(
ProcessVertices
)(
THIS_
DWORD
vertex_op
,
DWORD
dst_idx
,
DWORD
count
,
IDirect3DVertexBuffer7
*
src_buffer
,
DWORD
src_idx
,
...
...
include/d3dcaps.h
View file @
87ef65ab
...
...
@@ -390,7 +390,7 @@ typedef struct _D3DExecuteBufferDesc {
DWORD
dwFlags
;
DWORD
dwCaps
;
DWORD
dwBufferSize
;
LPVOID
lpData
;
void
*
lpData
;
}
D3DEXECUTEBUFFERDESC
,
*
LPD3DEXECUTEBUFFERDESC
;
#define D3DDEB_BUFSIZE 0x00000001
...
...
include/d3dtypes.h
View file @
87ef65ab
...
...
@@ -71,7 +71,7 @@ typedef LONG D3DFIXED;
#define D3DENUMRET_CANCEL DDENUMRET_CANCEL
#define D3DENUMRET_OK DDENUMRET_OK
typedef
HRESULT
(
CALLBACK
*
LPD3DVALIDATECALLBACK
)(
LPVOID
lpUserArg
,
DWORD
dwO
ffset
);
typedef
HRESULT
(
CALLBACK
*
LPD3DVALIDATECALLBACK
)(
void
*
ctx
,
DWORD
o
ffset
);
typedef
HRESULT
(
CALLBACK
*
LPD3DENUMTEXTUREFORMATSCALLBACK
)(
DDSURFACEDESC
*
surface_desc
,
void
*
ctx
);
typedef
HRESULT
(
CALLBACK
*
LPD3DENUMPIXELFORMATSCALLBACK
)(
DDPIXELFORMAT
*
format
,
void
*
ctx
);
...
...
@@ -468,9 +468,9 @@ typedef struct _D3DVIEWPORT7 {
typedef
struct
_D3DTRANSFORMDATA
{
DWORD
dwSize
;
LPVOID
lpIn
;
void
*
lpIn
;
DWORD
dwInSize
;
LPVOID
lpOut
;
void
*
lpOut
;
DWORD
dwOutSize
;
D3DHVERTEX
*
lpHOut
;
DWORD
dwClip
;
...
...
@@ -1270,9 +1270,10 @@ typedef struct _D3DVERTEXBUFFERDESC {
#define D3DFVF_TLVERTEX ( D3DFVF_XYZRHW | D3DFVF_DIFFUSE | D3DFVF_SPECULAR | \
D3DFVF_TEX1 )
typedef
struct
_D3DDP_PTRSTRIDE
{
LPVOID
lpvData
;
DWORD
dwStride
;
typedef
struct
_D3DDP_PTRSTRIDE
{
void
*
lpvData
;
DWORD
dwStride
;
}
D3DDP_PTRSTRIDE
;
#define D3DDP_MAXTEXCOORD 8
...
...
include/ddraw.h
View file @
87ef65ab
...
...
@@ -982,7 +982,7 @@ typedef struct _DDSURFACEDESC
}
DUMMYUNIONNAME2
;
DWORD
dwAlphaBitDepth
;
/* 1C:depth of alpha buffer requested*/
DWORD
dwReserved
;
/* 20:reserved*/
LPVOID
lpSurface
;
/* 24:pointer to the associated surface memory*/
void
*
lpSurface
;
/* 24:pointer to the associated surface memory*/
DDCOLORKEY
ddckCKDestOverlay
;
/* 28: CK for dest overlay use*/
DDCOLORKEY
ddckCKDestBlt
;
/* 30: CK for destination blt use*/
DDCOLORKEY
ddckCKSrcOverlay
;
/* 38: CK for source overlay use*/
...
...
@@ -1009,7 +1009,7 @@ typedef struct _DDSURFACEDESC2
}
DUMMYUNIONNAME2
;
DWORD
dwAlphaBitDepth
;
/* 1C:depth of alpha buffer requested*/
DWORD
dwReserved
;
/* 20:reserved*/
LPVOID
lpSurface
;
/* 24:pointer to the associated surface memory*/
void
*
lpSurface
;
/* 24:pointer to the associated surface memory*/
union
{
DDCOLORKEY
ddckCKDestOverlay
;
/* 28: CK for dest overlay use*/
DWORD
dwEmptyFaceColor
;
/* 28: color for empty cubemap faces */
...
...
@@ -1054,8 +1054,8 @@ typedef struct {
WORD
blue
[
256
];
}
DDGAMMARAMP
,
*
LPDDGAMMARAMP
;
typedef
BOOL
(
CALLBACK
*
LPDDENUMCALLBACKA
)(
GUID
*
,
LPSTR
,
LPSTR
,
LPVOID
);
typedef
BOOL
(
CALLBACK
*
LPDDENUMCALLBACKW
)(
GUID
*
,
LPWSTR
,
LPWSTR
,
LPVOID
);
typedef
BOOL
(
CALLBACK
*
LPDDENUMCALLBACKA
)(
GUID
*
guid
,
char
*
driver_description
,
char
*
driver_name
,
void
*
ctx
);
typedef
BOOL
(
CALLBACK
*
LPDDENUMCALLBACKW
)(
GUID
*
guid
,
WCHAR
*
driver_description
,
WCHAR
*
driver_name
,
void
*
ctx
);
DECL_WINELIB_TYPE_AW
(
LPDDENUMCALLBACK
)
typedef
HRESULT
(
CALLBACK
*
LPDDENUMMODESCALLBACK
)(
DDSURFACEDESC
*
desc
,
void
*
ctx
);
...
...
@@ -1067,20 +1067,22 @@ typedef HRESULT (CALLBACK *LPDDENUMSURFACESCALLBACK2)(struct IDirectDrawSurface4
typedef
HRESULT
(
CALLBACK
*
LPDDENUMSURFACESCALLBACK7
)(
struct
IDirectDrawSurface7
*
surface
,
DDSURFACEDESC2
*
surface_desc
,
void
*
ctx
);
typedef
BOOL
(
CALLBACK
*
LPDDENUMCALLBACKEXA
)(
GUID
*
,
LPSTR
,
LPSTR
,
LPVOID
,
HMONITOR
);
typedef
BOOL
(
CALLBACK
*
LPDDENUMCALLBACKEXW
)(
GUID
*
,
LPWSTR
,
LPWSTR
,
LPVOID
,
HMONITOR
);
typedef
BOOL
(
CALLBACK
*
LPDDENUMCALLBACKEXA
)(
GUID
*
guid
,
char
*
driver_description
,
char
*
driver_name
,
void
*
ctx
,
HMONITOR
monitor
);
typedef
BOOL
(
CALLBACK
*
LPDDENUMCALLBACKEXW
)(
GUID
*
guid
,
WCHAR
*
driver_description
,
WCHAR
*
driver_name
,
void
*
ctx
,
HMONITOR
monitor
);
DECL_WINELIB_TYPE_AW
(
LPDDENUMCALLBACKEX
)
HRESULT
WINAPI
DirectDrawEnumerateA
(
LPDDENUMCALLBACKA
,
LPVOID
);
HRESULT
WINAPI
DirectDrawEnumerateW
(
LPDDENUMCALLBACKW
,
LPVOID
);
HRESULT
WINAPI
DirectDrawEnumerateA
(
LPDDENUMCALLBACKA
cb
,
void
*
ctx
);
HRESULT
WINAPI
DirectDrawEnumerateW
(
LPDDENUMCALLBACKW
cb
,
void
*
ctx
);
#define DirectDrawEnumerate WINELIB_NAME_AW(DirectDrawEnumerate)
HRESULT
WINAPI
DirectDrawEnumerateExA
(
LPDDENUMCALLBACKEXA
lpCallback
,
LPVOID
lpContext
,
DWORD
dwF
lags
);
HRESULT
WINAPI
DirectDrawEnumerateExW
(
LPDDENUMCALLBACKEXW
lpCallback
,
LPVOID
lpContext
,
DWORD
dwF
lags
);
HRESULT
WINAPI
DirectDrawEnumerateExA
(
LPDDENUMCALLBACKEXA
cb
,
void
*
ctx
,
DWORD
f
lags
);
HRESULT
WINAPI
DirectDrawEnumerateExW
(
LPDDENUMCALLBACKEXW
cb
,
void
*
ctx
,
DWORD
f
lags
);
#define DirectDrawEnumerateEx WINELIB_NAME_AW(DirectDrawEnumerateEx)
typedef
HRESULT
(
WINAPI
*
LPDIRECTDRAWENUMERATEEXA
)(
LPDDENUMCALLBACKEXA
lpCallback
,
LPVOID
lpContext
,
DWORD
dwF
lags
);
typedef
HRESULT
(
WINAPI
*
LPDIRECTDRAWENUMERATEEXW
)(
LPDDENUMCALLBACKEXW
lpCallback
,
LPVOID
lpContext
,
DWORD
dwF
lags
);
typedef
HRESULT
(
WINAPI
*
LPDIRECTDRAWENUMERATEEXA
)(
LPDDENUMCALLBACKEXA
cb
,
void
*
ctx
,
DWORD
f
lags
);
typedef
HRESULT
(
WINAPI
*
LPDIRECTDRAWENUMERATEEXW
)(
LPDDENUMCALLBACKEXW
cb
,
void
*
ctx
,
DWORD
f
lags
);
DECL_WINELIB_TYPE_AW
(
LPDIRECTDRAWENUMERATEEX
)
/* flags for DirectDrawEnumerateEx */
...
...
@@ -1889,8 +1891,8 @@ DECLARE_INTERFACE_(IDirectDrawSurface,IUnknown)
/*1c*/
STDMETHOD
(
BltFast
)(
THIS_
DWORD
x
,
DWORD
y
,
IDirectDrawSurface
*
src_surface
,
RECT
*
src_rect
,
DWORD
flags
)
PURE
;
/*20*/
STDMETHOD
(
DeleteAttachedSurface
)(
THIS_
DWORD
flags
,
IDirectDrawSurface
*
attachment
)
PURE
;
/*24*/
STDMETHOD
(
EnumAttachedSurfaces
)(
THIS_
LPVOID
lpContext
,
LPDDENUMSURFACESCALLBACK
lpEnumSurfacesCallback
)
PURE
;
/*28*/
STDMETHOD
(
EnumOverlayZOrders
)(
THIS_
DWORD
dwFlags
,
LPVOID
lpContext
,
LPDDENUMSURFACESCALLBACK
lpfnCallback
)
PURE
;
/*24*/
STDMETHOD
(
EnumAttachedSurfaces
)(
THIS_
void
*
ctx
,
LPDDENUMSURFACESCALLBACK
cb
)
PURE
;
/*28*/
STDMETHOD
(
EnumOverlayZOrders
)(
THIS_
DWORD
flags
,
void
*
ctx
,
LPDDENUMSURFACESCALLBACK
cb
)
PURE
;
/*2c*/
STDMETHOD
(
Flip
)(
THIS_
IDirectDrawSurface
*
dst_surface
,
DWORD
flags
)
PURE
;
/*30*/
STDMETHOD
(
GetAttachedSurface
)(
THIS_
DDSCAPS
*
caps
,
IDirectDrawSurface
**
attachment
)
PURE
;
/*34*/
STDMETHOD
(
GetBltStatus
)(
THIS_
DWORD
dwFlags
)
PURE
;
...
...
@@ -1912,7 +1914,7 @@ DECLARE_INTERFACE_(IDirectDrawSurface,IUnknown)
/*74*/
STDMETHOD
(
SetColorKey
)(
THIS_
DWORD
flags
,
DDCOLORKEY
*
color_key
)
PURE
;
/*78*/
STDMETHOD
(
SetOverlayPosition
)(
THIS_
LONG
lX
,
LONG
lY
)
PURE
;
/*7c*/
STDMETHOD
(
SetPalette
)(
THIS_
IDirectDrawPalette
*
palette
)
PURE
;
/*80*/
STDMETHOD
(
Unlock
)(
THIS_
LPVOID
lpSurfaceD
ata
)
PURE
;
/*80*/
STDMETHOD
(
Unlock
)(
THIS_
void
*
d
ata
)
PURE
;
/*84*/
STDMETHOD
(
UpdateOverlay
)(
THIS_
RECT
*
src_rect
,
IDirectDrawSurface
*
dst_surface
,
RECT
*
dst_rect
,
DWORD
flags
,
DDOVERLAYFX
*
fx
)
PURE
;
/*88*/
STDMETHOD
(
UpdateOverlayDisplay
)(
THIS_
DWORD
dwFlags
)
PURE
;
...
...
@@ -2023,8 +2025,8 @@ DECLARE_INTERFACE_(IDirectDrawSurface2,IUnknown)
STDMETHOD
(
BltFast
)(
THIS_
DWORD
x
,
DWORD
y
,
IDirectDrawSurface2
*
src_surface
,
RECT
*
src_rect
,
DWORD
flags
)
PURE
;
STDMETHOD
(
DeleteAttachedSurface
)(
THIS_
DWORD
flags
,
IDirectDrawSurface2
*
attachment
)
PURE
;
STDMETHOD
(
EnumAttachedSurfaces
)(
THIS_
LPVOID
lpContext
,
LPDDENUMSURFACESCALLBACK
lpEnumSurfacesCallback
)
PURE
;
STDMETHOD
(
EnumOverlayZOrders
)(
THIS_
DWORD
dwFlags
,
LPVOID
lpContext
,
LPDDENUMSURFACESCALLBACK
lpfnCallback
)
PURE
;
STDMETHOD
(
EnumAttachedSurfaces
)(
THIS_
void
*
ctx
,
LPDDENUMSURFACESCALLBACK
cb
)
PURE
;
STDMETHOD
(
EnumOverlayZOrders
)(
THIS_
DWORD
flags
,
void
*
ctx
,
LPDDENUMSURFACESCALLBACK
cb
)
PURE
;
STDMETHOD
(
Flip
)(
THIS_
IDirectDrawSurface2
*
dst_surface
,
DWORD
flags
)
PURE
;
STDMETHOD
(
GetAttachedSurface
)(
THIS_
DDSCAPS
*
caps
,
IDirectDrawSurface2
**
attachment
)
PURE
;
STDMETHOD
(
GetBltStatus
)(
THIS_
DWORD
dwFlags
)
PURE
;
...
...
@@ -2046,13 +2048,13 @@ DECLARE_INTERFACE_(IDirectDrawSurface2,IUnknown)
STDMETHOD
(
SetColorKey
)(
THIS_
DWORD
flags
,
DDCOLORKEY
*
color_key
)
PURE
;
STDMETHOD
(
SetOverlayPosition
)(
THIS_
LONG
lX
,
LONG
lY
)
PURE
;
STDMETHOD
(
SetPalette
)(
THIS_
IDirectDrawPalette
*
palette
)
PURE
;
STDMETHOD
(
Unlock
)(
THIS_
LPVOID
lpSurfaceD
ata
)
PURE
;
STDMETHOD
(
Unlock
)(
THIS_
void
*
d
ata
)
PURE
;
STDMETHOD
(
UpdateOverlay
)(
THIS_
RECT
*
src_rect
,
IDirectDrawSurface2
*
dst_surface
,
RECT
*
dst_rect
,
DWORD
flags
,
DDOVERLAYFX
*
fx
)
PURE
;
STDMETHOD
(
UpdateOverlayDisplay
)(
THIS_
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
UpdateOverlayZOrder
)(
THIS_
DWORD
flags
,
IDirectDrawSurface2
*
reference_surface
)
PURE
;
/* added in v2 */
STDMETHOD
(
GetDDInterface
)(
THIS_
LPVOID
*
lplpDD
)
PURE
;
STDMETHOD
(
GetDDInterface
)(
THIS_
void
**
ddraw
)
PURE
;
STDMETHOD
(
PageLock
)(
THIS_
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
PageUnlock
)(
THIS_
DWORD
dwFlags
)
PURE
;
};
...
...
@@ -2169,8 +2171,8 @@ DECLARE_INTERFACE_(IDirectDrawSurface3,IUnknown)
STDMETHOD
(
BltFast
)(
THIS_
DWORD
x
,
DWORD
y
,
IDirectDrawSurface3
*
src_surface
,
RECT
*
src_rect
,
DWORD
flags
)
PURE
;
STDMETHOD
(
DeleteAttachedSurface
)(
THIS_
DWORD
flags
,
IDirectDrawSurface3
*
attachment
)
PURE
;
STDMETHOD
(
EnumAttachedSurfaces
)(
THIS_
LPVOID
lpContext
,
LPDDENUMSURFACESCALLBACK
lpEnumSurfacesCallback
)
PURE
;
STDMETHOD
(
EnumOverlayZOrders
)(
THIS_
DWORD
dwFlags
,
LPVOID
lpContext
,
LPDDENUMSURFACESCALLBACK
lpfnCallback
)
PURE
;
STDMETHOD
(
EnumAttachedSurfaces
)(
THIS_
void
*
ctx
,
LPDDENUMSURFACESCALLBACK
cb
)
PURE
;
STDMETHOD
(
EnumOverlayZOrders
)(
THIS_
DWORD
flags
,
void
*
ctx
,
LPDDENUMSURFACESCALLBACK
cb
)
PURE
;
STDMETHOD
(
Flip
)(
THIS_
IDirectDrawSurface3
*
dst_surface
,
DWORD
flags
)
PURE
;
STDMETHOD
(
GetAttachedSurface
)(
THIS_
DDSCAPS
*
caps
,
IDirectDrawSurface3
**
attachment
)
PURE
;
STDMETHOD
(
GetBltStatus
)(
THIS_
DWORD
dwFlags
)
PURE
;
...
...
@@ -2192,13 +2194,13 @@ DECLARE_INTERFACE_(IDirectDrawSurface3,IUnknown)
STDMETHOD
(
SetColorKey
)(
THIS_
DWORD
flags
,
DDCOLORKEY
*
color_key
)
PURE
;
STDMETHOD
(
SetOverlayPosition
)(
THIS_
LONG
lX
,
LONG
lY
)
PURE
;
STDMETHOD
(
SetPalette
)(
THIS_
IDirectDrawPalette
*
palette
)
PURE
;
STDMETHOD
(
Unlock
)(
THIS_
LPVOID
lpSurfaceD
ata
)
PURE
;
STDMETHOD
(
Unlock
)(
THIS_
void
*
d
ata
)
PURE
;
STDMETHOD
(
UpdateOverlay
)(
THIS_
RECT
*
src_rect
,
IDirectDrawSurface3
*
dst_surface
,
RECT
*
dst_rect
,
DWORD
flags
,
DDOVERLAYFX
*
fx
)
PURE
;
STDMETHOD
(
UpdateOverlayDisplay
)(
THIS_
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
UpdateOverlayZOrder
)(
THIS_
DWORD
flags
,
IDirectDrawSurface3
*
reference_surface
)
PURE
;
/* added in v2 */
STDMETHOD
(
GetDDInterface
)(
THIS_
LPVOID
*
lplpDD
)
PURE
;
STDMETHOD
(
GetDDInterface
)(
THIS_
void
**
ddraw
)
PURE
;
STDMETHOD
(
PageLock
)(
THIS_
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
PageUnlock
)(
THIS_
DWORD
dwFlags
)
PURE
;
/* added in v3 */
...
...
@@ -2320,8 +2322,8 @@ DECLARE_INTERFACE_(IDirectDrawSurface4,IUnknown)
STDMETHOD
(
BltFast
)(
THIS_
DWORD
x
,
DWORD
y
,
IDirectDrawSurface4
*
src_surface
,
RECT
*
src_rect
,
DWORD
flags
)
PURE
;
STDMETHOD
(
DeleteAttachedSurface
)(
THIS_
DWORD
flags
,
IDirectDrawSurface4
*
attachment
)
PURE
;
STDMETHOD
(
EnumAttachedSurfaces
)(
THIS_
LPVOID
lpContext
,
LPDDENUMSURFACESCALLBACK2
lpEnumSurfacesCallback
)
PURE
;
STDMETHOD
(
EnumOverlayZOrders
)(
THIS_
DWORD
dwFlags
,
LPVOID
lpContext
,
LPDDENUMSURFACESCALLBACK2
lpfnCallback
)
PURE
;
STDMETHOD
(
EnumAttachedSurfaces
)(
THIS_
void
*
ctx
,
LPDDENUMSURFACESCALLBACK2
cb
)
PURE
;
STDMETHOD
(
EnumOverlayZOrders
)(
THIS_
DWORD
flags
,
void
*
ctx
,
LPDDENUMSURFACESCALLBACK2
cb
)
PURE
;
STDMETHOD
(
Flip
)(
THIS_
IDirectDrawSurface4
*
dst_surface
,
DWORD
flags
)
PURE
;
STDMETHOD
(
GetAttachedSurface
)(
THIS_
DDSCAPS2
*
caps
,
IDirectDrawSurface4
**
attachment
)
PURE
;
STDMETHOD
(
GetBltStatus
)(
THIS_
DWORD
dwFlags
)
PURE
;
...
...
@@ -2349,14 +2351,14 @@ DECLARE_INTERFACE_(IDirectDrawSurface4,IUnknown)
STDMETHOD
(
UpdateOverlayDisplay
)(
THIS_
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
UpdateOverlayZOrder
)(
THIS_
DWORD
flags
,
IDirectDrawSurface4
*
reference_surface
)
PURE
;
/* added in v2 */
STDMETHOD
(
GetDDInterface
)(
THIS_
LPVOID
*
lplpDD
)
PURE
;
STDMETHOD
(
GetDDInterface
)(
THIS_
void
**
ddraw
)
PURE
;
STDMETHOD
(
PageLock
)(
THIS_
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
PageUnlock
)(
THIS_
DWORD
dwFlags
)
PURE
;
/* added in v3 */
STDMETHOD
(
SetSurfaceDesc
)(
THIS_
DDSURFACEDESC2
*
surface_desc
,
DWORD
flags
)
PURE
;
/* added in v4 */
STDMETHOD
(
SetPrivateData
)(
THIS_
REFGUID
tag
,
LPVOID
pData
,
DWORD
cbSize
,
DWORD
dwF
lags
)
PURE
;
STDMETHOD
(
GetPrivateData
)(
THIS_
REFGUID
tag
,
LPVOID
pBuffer
,
LPDWORD
pcbBufferS
ize
)
PURE
;
STDMETHOD
(
SetPrivateData
)(
THIS_
REFGUID
tag
,
void
*
data
,
DWORD
size
,
DWORD
f
lags
)
PURE
;
STDMETHOD
(
GetPrivateData
)(
THIS_
REFGUID
tag
,
void
*
data
,
DWORD
*
s
ize
)
PURE
;
STDMETHOD
(
FreePrivateData
)(
THIS_
REFGUID
tag
)
PURE
;
STDMETHOD
(
GetUniquenessValue
)(
THIS_
LPDWORD
pValue
)
PURE
;
STDMETHOD
(
ChangeUniquenessValue
)(
THIS
)
PURE
;
...
...
@@ -2487,8 +2489,8 @@ DECLARE_INTERFACE_(IDirectDrawSurface7,IUnknown)
STDMETHOD
(
BltFast
)(
THIS_
DWORD
x
,
DWORD
y
,
IDirectDrawSurface7
*
src_surface
,
RECT
*
src_rect
,
DWORD
flags
)
PURE
;
STDMETHOD
(
DeleteAttachedSurface
)(
THIS_
DWORD
flags
,
IDirectDrawSurface7
*
attachment
)
PURE
;
STDMETHOD
(
EnumAttachedSurfaces
)(
THIS_
LPVOID
lpContext
,
LPDDENUMSURFACESCALLBACK7
lpEnumSurfacesCallback
)
PURE
;
STDMETHOD
(
EnumOverlayZOrders
)(
THIS_
DWORD
dwFlags
,
LPVOID
lpContext
,
LPDDENUMSURFACESCALLBACK7
lpfnCallback
)
PURE
;
STDMETHOD
(
EnumAttachedSurfaces
)(
THIS_
void
*
ctx
,
LPDDENUMSURFACESCALLBACK7
cb
)
PURE
;
STDMETHOD
(
EnumOverlayZOrders
)(
THIS_
DWORD
flags
,
void
*
ctx
,
LPDDENUMSURFACESCALLBACK7
cb
)
PURE
;
STDMETHOD
(
Flip
)(
THIS_
IDirectDrawSurface7
*
dst_surface
,
DWORD
flags
)
PURE
;
STDMETHOD
(
GetAttachedSurface
)(
THIS_
DDSCAPS2
*
caps
,
IDirectDrawSurface7
**
attachment
)
PURE
;
STDMETHOD
(
GetBltStatus
)(
THIS_
DWORD
dwFlags
)
PURE
;
...
...
@@ -2516,14 +2518,14 @@ DECLARE_INTERFACE_(IDirectDrawSurface7,IUnknown)
STDMETHOD
(
UpdateOverlayDisplay
)(
THIS_
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
UpdateOverlayZOrder
)(
THIS_
DWORD
flags
,
IDirectDrawSurface7
*
reference_surface
)
PURE
;
/* added in v2 */
STDMETHOD
(
GetDDInterface
)(
THIS_
LPVOID
*
lplpDD
)
PURE
;
STDMETHOD
(
GetDDInterface
)(
THIS_
void
**
ddraw
)
PURE
;
STDMETHOD
(
PageLock
)(
THIS_
DWORD
dwFlags
)
PURE
;
STDMETHOD
(
PageUnlock
)(
THIS_
DWORD
dwFlags
)
PURE
;
/* added in v3 */
STDMETHOD
(
SetSurfaceDesc
)(
THIS_
DDSURFACEDESC2
*
surface_desc
,
DWORD
flags
)
PURE
;
/* added in v4 */
STDMETHOD
(
SetPrivateData
)(
THIS_
REFGUID
tag
,
LPVOID
pData
,
DWORD
cbSize
,
DWORD
dwF
lags
)
PURE
;
STDMETHOD
(
GetPrivateData
)(
THIS_
REFGUID
tag
,
LPVOID
pBuffer
,
LPDWORD
pcbBufferS
ize
)
PURE
;
STDMETHOD
(
SetPrivateData
)(
THIS_
REFGUID
tag
,
void
*
data
,
DWORD
size
,
DWORD
f
lags
)
PURE
;
STDMETHOD
(
GetPrivateData
)(
THIS_
REFGUID
tag
,
void
*
data
,
DWORD
*
s
ize
)
PURE
;
STDMETHOD
(
FreePrivateData
)(
THIS_
REFGUID
tag
)
PURE
;
STDMETHOD
(
GetUniquenessValue
)(
THIS_
LPDWORD
pValue
)
PURE
;
STDMETHOD
(
ChangeUniquenessValue
)(
THIS
)
PURE
;
...
...
@@ -2719,7 +2721,7 @@ DECLARE_INTERFACE_(IDirectDrawGammaControl,IUnknown)
HRESULT
WINAPI
DirectDrawCreate
(
GUID
*
driver_guid
,
IDirectDraw
**
ddraw
,
IUnknown
*
outer
);
HRESULT
WINAPI
DirectDrawCreateEx
(
GUID
*
,
LPVOID
*
,
REFIID
,
IUnknown
*
);
HRESULT
WINAPI
DirectDrawCreateEx
(
GUID
*
driver_guid
,
void
**
ddraw
,
REFIID
interface_iid
,
IUnknown
*
outer
);
HRESULT
WINAPI
DirectDrawCreateClipper
(
DWORD
flags
,
IDirectDrawClipper
**
clipper
,
IUnknown
*
outer
);
#ifdef __cplusplus
...
...
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