[PATCH 3/5] d3drm: Avoid LPDIRECT3DRMFRAME3.
Henri Verbeet
hverbeet at codeweavers.com
Mon Apr 22 08:18:44 CDT 2013
---
dlls/d3drm/d3drm.c | 59 +++++++++++++++-------------------
dlls/d3drm/frame.c | 83 ++++++++++++++++--------------------------------
dlls/d3drm/meshbuilder.c | 7 ++--
dlls/d3drm/viewport.c | 21 ++++--------
include/d3drm.h | 14 ++++----
include/d3drmobj.h | 46 ++++++++++++++-------------
6 files changed, 94 insertions(+), 136 deletions(-)
diff --git a/dlls/d3drm/d3drm.c b/dlls/d3drm/d3drm.c
index 637eaef..2f16152 100644
--- a/dlls/d3drm/d3drm.c
+++ b/dlls/d3drm/d3drm.c
@@ -922,14 +922,12 @@ static HRESULT WINAPI IDirect3DRM3Impl_CreateObject(IDirect3DRM3* iface, REFCLSI
return E_NOTIMPL;
}
-static HRESULT WINAPI IDirect3DRM3Impl_CreateFrame(IDirect3DRM3* iface, LPDIRECT3DRMFRAME3 parent_frame,
- LPDIRECT3DRMFRAME3* frame)
+static HRESULT WINAPI IDirect3DRM3Impl_CreateFrame(IDirect3DRM3 *iface,
+ IDirect3DRMFrame3 *parent, IDirect3DRMFrame3 **frame)
{
- IDirect3DRMImpl *This = impl_from_IDirect3DRM3(iface);
-
- TRACE("(%p/%p)->(%p,%p)\n", iface, This, parent_frame, frame);
+ TRACE("iface %p, parent %p, frame %p.\n", iface, parent, frame);
- return Direct3DRMFrame_create(&IID_IDirect3DRMFrame3, (IUnknown*)parent_frame, (IUnknown**)frame);
+ return Direct3DRMFrame_create(&IID_IDirect3DRMFrame3, (IUnknown *)parent, (IUnknown **)frame);
}
static HRESULT WINAPI IDirect3DRM3Impl_CreateMesh(IDirect3DRM3* iface, LPDIRECT3DRMMESH* Mesh)
@@ -1118,18 +1116,14 @@ static HRESULT WINAPI IDirect3DRM3Impl_CreateViewport(IDirect3DRM3 *iface, IDire
return Direct3DRMViewport_create(&IID_IDirect3DRMViewport2, (IUnknown **)viewport);
}
-static HRESULT WINAPI IDirect3DRM3Impl_CreateWrap(IDirect3DRM3* iface, D3DRMWRAPTYPE type,
- LPDIRECT3DRMFRAME3 frame,
- D3DVALUE ox, D3DVALUE oy, D3DVALUE oz,
- D3DVALUE dx, D3DVALUE dy, D3DVALUE dz,
- D3DVALUE ux, D3DVALUE uy, D3DVALUE uz,
- D3DVALUE ou, D3DVALUE ov, D3DVALUE su,
- D3DVALUE sv, LPDIRECT3DRMWRAP* wrap)
+static HRESULT WINAPI IDirect3DRM3Impl_CreateWrap(IDirect3DRM3 *iface, D3DRMWRAPTYPE type, IDirect3DRMFrame3 *frame,
+ D3DVALUE ox, D3DVALUE oy, D3DVALUE oz, D3DVALUE dx, D3DVALUE dy, D3DVALUE dz,
+ D3DVALUE ux, D3DVALUE uy, D3DVALUE uz, D3DVALUE ou, D3DVALUE ov, D3DVALUE su, D3DVALUE sv,
+ IDirect3DRMWrap **wrap)
{
- IDirect3DRMImpl *This = impl_from_IDirect3DRM3(iface);
-
- FIXME("(%p/%p)->(%d,%p,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%p): stub\n", iface, This, type,
- frame, ox, oy, oz, dx, dy, dz, ux, uy, uz, ou, ov, su, sv, wrap);
+ FIXME("iface %p, type %#x, frame %p, ox %.8e, oy %.8e, oz %.8e, dx %.8e, dy %.8e, dz %.8e, "
+ "ux %.8e, uy %.8e, uz %.8e, ou %.8e, ov %.8e, su %.8e, sv %.8e, wrap %p stub!\n",
+ iface, type, frame, ox, oy, oz, dx, dy, dz, ux, uy, uz, ou, ov, su, sv, wrap);
return E_NOTIMPL;
}
@@ -1430,13 +1424,10 @@ end:
return ret;
}
-static HRESULT WINAPI IDirect3DRM3Impl_Load(IDirect3DRM3* iface, LPVOID ObjSource, LPVOID ObjID,
- LPIID* GUIDs, DWORD nb_GUIDs, D3DRMLOADOPTIONS LOFlags,
- D3DRMLOADCALLBACK LoadProc, LPVOID ArgLP,
- D3DRMLOADTEXTURECALLBACK LoadTextureProc, LPVOID ArgLTP,
- LPDIRECT3DRMFRAME3 ParentFrame)
+static HRESULT WINAPI IDirect3DRM3Impl_Load(IDirect3DRM3 *iface, void *source, void *object_id, IID **iids,
+ DWORD iid_count, D3DRMLOADOPTIONS flags, D3DRMLOADCALLBACK load_cb, void *load_ctx,
+ D3DRMLOADTEXTURECALLBACK load_tex_cb, void *load_tex_ctx, IDirect3DRMFrame3 *parent_frame)
{
- IDirect3DRMImpl *This = impl_from_IDirect3DRM3(iface);
DXFILELOADOPTIONS load_options;
LPDIRECTXFILE pDXFile = NULL;
LPDIRECTXFILEENUMOBJECT pEnumObject = NULL;
@@ -1448,25 +1439,27 @@ static HRESULT WINAPI IDirect3DRM3Impl_Load(IDirect3DRM3* iface, LPVOID ObjSourc
HRESULT ret = D3DRMERR_BADOBJECT;
DWORD i;
- TRACE("(%p/%p)->(%p,%p,%p,%d,%d,%p,%p,%p,%p,%p)\n", iface, This, ObjSource, ObjID, GUIDs,
- nb_GUIDs, LOFlags, LoadProc, ArgLP, LoadTextureProc, ArgLTP, ParentFrame);
+ TRACE("iface %p, source %p, object_id %p, iids %p, iid_count %u, flags %#x, "
+ "load_cb %p, load_ctx %p, load_tex_cb %p, load_tex_ctx %p, parent_frame %p.\n",
+ iface, source, object_id, iids, iid_count, flags,
+ load_cb, load_ctx, load_tex_cb, load_tex_ctx, parent_frame);
TRACE("Looking for GUIDs:\n");
- for (i = 0; i < nb_GUIDs; i++)
- TRACE("- %s (%s)\n", debugstr_guid(GUIDs[i]), get_IID_string(GUIDs[i]));
+ for (i = 0; i < iid_count; ++i)
+ TRACE("- %s (%s)\n", debugstr_guid(iids[i]), get_IID_string(iids[i]));
- if (LOFlags == D3DRMLOAD_FROMMEMORY)
+ if (flags == D3DRMLOAD_FROMMEMORY)
{
load_options = DXFILELOAD_FROMMEMORY;
}
- else if (LOFlags == D3DRMLOAD_FROMFILE)
+ else if (flags == D3DRMLOAD_FROMFILE)
{
load_options = DXFILELOAD_FROMFILE;
- TRACE("Loading from file %s\n", debugstr_a(ObjSource));
+ TRACE("Loading from file %s\n", debugstr_a(source));
}
else
{
- FIXME("Load options %d not supported yet\n", LOFlags);
+ FIXME("Load options %#x not supported yet.\n", flags);
return E_NOTIMPL;
}
@@ -1478,7 +1471,7 @@ static HRESULT WINAPI IDirect3DRM3Impl_Load(IDirect3DRM3* iface, LPVOID ObjSourc
if (hr != DXFILE_OK)
goto end;
- hr = IDirectXFile_CreateEnumObject(pDXFile, ObjSource, load_options, &pEnumObject);
+ hr = IDirectXFile_CreateEnumObject(pDXFile, source, load_options, &pEnumObject);
if (hr != DXFILE_OK)
goto end;
@@ -1528,7 +1521,7 @@ static HRESULT WINAPI IDirect3DRM3Impl_Load(IDirect3DRM3* iface, LPVOID ObjSourc
goto end;
}
- ret = load_data(iface, pData, GUIDs, nb_GUIDs, LoadProc, ArgLP, LoadTextureProc, ArgLTP, ParentFrame);
+ ret = load_data(iface, pData, iids, iid_count, load_cb, load_ctx, load_tex_cb, load_tex_ctx, parent_frame);
if (ret != D3DRM_OK)
goto end;
diff --git a/dlls/d3drm/frame.c b/dlls/d3drm/frame.c
index 58cdb69..cdfd516 100644
--- a/dlls/d3drm/frame.c
+++ b/dlls/d3drm/frame.c
@@ -1478,8 +1478,7 @@ static HRESULT WINAPI IDirect3DRMFrame3Impl_GetClassName(IDirect3DRMFrame3* ifac
}
/*** IDirect3DRMFrame methods ***/
-static HRESULT WINAPI IDirect3DRMFrame3Impl_AddChild(IDirect3DRMFrame3* iface,
- LPDIRECT3DRMFRAME3 child)
+static HRESULT WINAPI IDirect3DRMFrame3Impl_AddChild(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *child)
{
IDirect3DRMFrameImpl *This = impl_from_IDirect3DRMFrame3(iface);
IDirect3DRMFrameImpl *child_obj = unsafe_impl_from_IDirect3DRMFrame3(child);
@@ -1782,8 +1781,7 @@ static D3DRMMATERIALMODE WINAPI IDirect3DRMFrame3Impl_GetMaterialMode(IDirect3DR
return D3DRMMATERIAL_FROMPARENT;
}
-static HRESULT WINAPI IDirect3DRMFrame3Impl_GetParent(IDirect3DRMFrame3* iface,
- LPDIRECT3DRMFRAME3 * frame)
+static HRESULT WINAPI IDirect3DRMFrame3Impl_GetParent(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 **frame)
{
IDirect3DRMFrameImpl *This = impl_from_IDirect3DRMFrame3(iface);
@@ -1825,12 +1823,9 @@ static HRESULT WINAPI IDirect3DRMFrame3Impl_GetRotation(IDirect3DRMFrame3 *iface
return E_NOTIMPL;
}
-static HRESULT WINAPI IDirect3DRMFrame3Impl_GetScene(IDirect3DRMFrame3* iface,
- LPDIRECT3DRMFRAME3 * frame)
+static HRESULT WINAPI IDirect3DRMFrame3Impl_GetScene(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 **scene)
{
- IDirect3DRMFrameImpl *This = impl_from_IDirect3DRMFrame3(iface);
-
- FIXME("(%p/%p)->(%p): stub\n", iface, This, frame);
+ FIXME("iface %p, scene %p stub!\n", iface, scene);
return E_NOTIMPL;
}
@@ -1854,9 +1849,8 @@ static HRESULT WINAPI IDirect3DRMFrame3Impl_GetTexture(IDirect3DRMFrame3* iface,
return E_NOTIMPL;
}
-static HRESULT WINAPI IDirect3DRMFrame3Impl_GetTransform(IDirect3DRMFrame3* iface,
- LPDIRECT3DRMFRAME3 reference,
- D3DRMMATRIX4D return_matrix)
+static HRESULT WINAPI IDirect3DRMFrame3Impl_GetTransform(IDirect3DRMFrame3 *iface,
+ IDirect3DRMFrame3 *reference, D3DRMMATRIX4D return_matrix)
{
IDirect3DRMFrameImpl *This = impl_from_IDirect3DRMFrame3(iface);
@@ -1921,14 +1915,10 @@ static HRESULT WINAPI IDirect3DRMFrame3Impl_Load(IDirect3DRMFrame3* iface, LPVOI
return E_NOTIMPL;
}
-static HRESULT WINAPI IDirect3DRMFrame3Impl_LookAt(IDirect3DRMFrame3* iface,
- LPDIRECT3DRMFRAME3 target,
- LPDIRECT3DRMFRAME3 reference,
- D3DRMFRAMECONSTRAINT constraint)
+static HRESULT WINAPI IDirect3DRMFrame3Impl_LookAt(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *target,
+ IDirect3DRMFrame3 *reference, D3DRMFRAMECONSTRAINT constraint)
{
- IDirect3DRMFrameImpl *This = impl_from_IDirect3DRMFrame3(iface);
-
- FIXME("(%p/%p)->(%p,%p,%u): stub\n", iface, This, target, reference, constraint);
+ FIXME("iface %p, target %p, reference %p, constraint %#x stub!\n", iface, target, reference, constraint);
return E_NOTIMPL;
}
@@ -1942,8 +1932,7 @@ static HRESULT WINAPI IDirect3DRMFrame3Impl_Move(IDirect3DRMFrame3* iface, D3DVA
return E_NOTIMPL;
}
-static HRESULT WINAPI IDirect3DRMFrame3Impl_DeleteChild(IDirect3DRMFrame3* iface,
- LPDIRECT3DRMFRAME3 frame)
+static HRESULT WINAPI IDirect3DRMFrame3Impl_DeleteChild(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *frame)
{
IDirect3DRMFrameImpl *This = impl_from_IDirect3DRMFrame3(iface);
IDirect3DRMFrameImpl *frame_obj = unsafe_impl_from_IDirect3DRMFrame3(frame);
@@ -2214,38 +2203,28 @@ static HRESULT WINAPI IDirect3DRMFrame3Impl_SetMaterialMode(IDirect3DRMFrame3* i
return E_NOTIMPL;
}
-static HRESULT WINAPI IDirect3DRMFrame3Impl_SetOrientation(IDirect3DRMFrame3* iface,
- LPDIRECT3DRMFRAME3 reference,
- D3DVALUE dx, D3DVALUE dy, D3DVALUE dz,
- D3DVALUE ux, D3DVALUE uy, D3DVALUE uz )
+static HRESULT WINAPI IDirect3DRMFrame3Impl_SetOrientation(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *reference,
+ D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz)
{
- IDirect3DRMFrameImpl *This = impl_from_IDirect3DRMFrame3(iface);
-
- FIXME("(%p/%p)->(%p,%f,%f,%f,%f,%f,%f): stub\n", iface, This, reference,
- dx, dy, dz, ux, uy, uz);
+ FIXME("iface %p, reference %p, dx %.8e, dy %.8e, dz %.8e, ux %.8e, uy %.8e, uz %.8e stub!\n",
+ iface, reference, dx, dy, dz, ux, uy, uz);
return E_NOTIMPL;
}
-static HRESULT WINAPI IDirect3DRMFrame3Impl_SetPosition(IDirect3DRMFrame3* iface,
- LPDIRECT3DRMFRAME3 reference,
- D3DVALUE x, D3DVALUE y, D3DVALUE z)
+static HRESULT WINAPI IDirect3DRMFrame3Impl_SetPosition(IDirect3DRMFrame3 *iface,
+ IDirect3DRMFrame3 *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z)
{
- IDirect3DRMFrameImpl *This = impl_from_IDirect3DRMFrame3(iface);
-
- FIXME("(%p/%p)->(%p,%f,%f,%f): stub\n", iface, This, reference, x, y, z);
+ FIXME("iface %p, reference %p, x %.8e, y %.8e, z %.8e stub!\n", iface, reference, x, y, z);
return E_NOTIMPL;
}
-static HRESULT WINAPI IDirect3DRMFrame3Impl_SetRotation(IDirect3DRMFrame3* iface,
- LPDIRECT3DRMFRAME3 reference,
- D3DVALUE x, D3DVALUE y, D3DVALUE z,
- D3DVALUE theta)
+static HRESULT WINAPI IDirect3DRMFrame3Impl_SetRotation(IDirect3DRMFrame3 *iface,
+ IDirect3DRMFrame3 *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta)
{
- IDirect3DRMFrameImpl *This = impl_from_IDirect3DRMFrame3(iface);
-
- FIXME("(%p/%p)->(%p,%f,%f,%f,%f): stub\n", iface, This, reference, x, y, z, theta);
+ FIXME("iface %p, reference %p, x %.8e, y %.8e, z %.8e, theta %.8e stub!\n",
+ iface, reference, x, y, z, theta);
return E_NOTIMPL;
}
@@ -2270,14 +2249,11 @@ static HRESULT WINAPI IDirect3DRMFrame3Impl_SetTexture(IDirect3DRMFrame3* iface,
return E_NOTIMPL;
}
-static HRESULT WINAPI IDirect3DRMFrame3Impl_SetVelocity(IDirect3DRMFrame3* iface,
- LPDIRECT3DRMFRAME3 reference,
- D3DVALUE x, D3DVALUE y, D3DVALUE z,
- BOOL with_rotation)
+static HRESULT WINAPI IDirect3DRMFrame3Impl_SetVelocity(IDirect3DRMFrame3 *iface,
+ IDirect3DRMFrame3 *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, BOOL with_rotation)
{
- IDirect3DRMFrameImpl *This = impl_from_IDirect3DRMFrame3(iface);
-
- FIXME("(%p/%p)->(%p,%f,%f,%f,%d): stub\n", iface, This, reference, x, y, z, with_rotation);
+ FIXME("iface %p, reference %p, x %.8e, y %.8e, z %.8e, with_rotation %#x.\n",
+ iface, reference, x, y, z, with_rotation);
return E_NOTIMPL;
}
@@ -2406,13 +2382,10 @@ static HRESULT WINAPI IDirect3DRMFrame3Impl_SetMaterial(IDirect3DRMFrame3* iface
return E_NOTIMPL;
}
-static HRESULT WINAPI IDirect3DRMFrame3Impl_SetQuaternion(IDirect3DRMFrame3* iface,
- LPDIRECT3DRMFRAME3 reference,
- D3DRMQUATERNION *q)
+static HRESULT WINAPI IDirect3DRMFrame3Impl_SetQuaternion(IDirect3DRMFrame3 *iface,
+ IDirect3DRMFrame3 *reference, D3DRMQUATERNION *q)
{
- IDirect3DRMFrameImpl *This = impl_from_IDirect3DRMFrame3(iface);
-
- FIXME("(%p/%p)->(%p,%p): stub\n", iface, This, reference, q);
+ FIXME("iface %p, reference %p, q %p stub!\n", iface, reference, q);
return E_NOTIMPL;
}
diff --git a/dlls/d3drm/meshbuilder.c b/dlls/d3drm/meshbuilder.c
index d8d0c95..e762332 100644
--- a/dlls/d3drm/meshbuilder.c
+++ b/dlls/d3drm/meshbuilder.c
@@ -1770,12 +1770,9 @@ static HRESULT WINAPI IDirect3DRMMeshBuilder3Impl_AddMeshBuilder(IDirect3DRMMesh
return E_NOTIMPL;
}
-static HRESULT WINAPI IDirect3DRMMeshBuilder3Impl_AddFrame(IDirect3DRMMeshBuilder3* iface,
- LPDIRECT3DRMFRAME3 Frame)
+static HRESULT WINAPI IDirect3DRMMeshBuilder3Impl_AddFrame(IDirect3DRMMeshBuilder3 *iface, IDirect3DRMFrame3 *frame)
{
- IDirect3DRMMeshBuilderImpl *This = impl_from_IDirect3DRMMeshBuilder3(iface);
-
- FIXME("(%p)->(%p): stub\n", This, Frame);
+ FIXME("iface %p, frame %p stub!\n", iface, frame);
return E_NOTIMPL;
}
diff --git a/dlls/d3drm/viewport.c b/dlls/d3drm/viewport.c
index adf1d974..49cceb0 100644
--- a/dlls/d3drm/viewport.c
+++ b/dlls/d3drm/viewport.c
@@ -616,12 +616,9 @@ static HRESULT WINAPI IDirect3DRMViewport2Impl_Clear(IDirect3DRMViewport2* iface
return D3DRM_OK;
}
-static HRESULT WINAPI IDirect3DRMViewport2Impl_Render(IDirect3DRMViewport2* iface,
- LPDIRECT3DRMFRAME3 frame)
+static HRESULT WINAPI IDirect3DRMViewport2Impl_Render(IDirect3DRMViewport2 *iface, IDirect3DRMFrame3 *frame)
{
- IDirect3DRMViewportImpl *This = impl_from_IDirect3DRMViewport2(iface);
-
- FIXME("(%p/%p)->(%p): stub\n", iface, This, frame);
+ FIXME("iface %p, frame %p stub!\n", iface, frame);
return D3DRM_OK;
}
@@ -668,12 +665,9 @@ static HRESULT WINAPI IDirect3DRMViewport2Impl_SetUniformScaling(IDirect3DRMView
return E_NOTIMPL;
}
-static HRESULT WINAPI IDirect3DRMViewport2Impl_SetCamera(IDirect3DRMViewport2* iface,
- LPDIRECT3DRMFRAME3 frame)
+static HRESULT WINAPI IDirect3DRMViewport2Impl_SetCamera(IDirect3DRMViewport2 *iface, IDirect3DRMFrame3 *camera)
{
- IDirect3DRMViewportImpl *This = impl_from_IDirect3DRMViewport2(iface);
-
- FIXME("(%p/%p)->(%p): stub\n", iface, This, frame);
+ FIXME("iface %p, camera %p stub!\n", iface, camera);
return E_NOTIMPL;
}
@@ -741,12 +735,9 @@ static HRESULT WINAPI IDirect3DRMViewport2Impl_SetPlane(IDirect3DRMViewport2* if
return E_NOTIMPL;
}
-static HRESULT WINAPI IDirect3DRMViewport2Impl_GetCamera(IDirect3DRMViewport2* iface,
- LPDIRECT3DRMFRAME3 * frame)
+static HRESULT WINAPI IDirect3DRMViewport2Impl_GetCamera(IDirect3DRMViewport2 *iface, IDirect3DRMFrame3 **camera)
{
- IDirect3DRMViewportImpl *This = impl_from_IDirect3DRMViewport2(iface);
-
- FIXME("(%p/%p)->(%p): stub\n", iface, This, frame);
+ FIXME("iface %p, camera %p stub!\n", iface, camera);
return E_NOTIMPL;
}
diff --git a/include/d3drm.h b/include/d3drm.h
index 7700f9c..2910232 100644
--- a/include/d3drm.h
+++ b/include/d3drm.h
@@ -335,7 +335,7 @@ DECLARE_INTERFACE_(IDirect3DRM3,IUnknown)
STDMETHOD_(ULONG,Release)(THIS) PURE;
/*** IDirect3DRM2 methods ***/
STDMETHOD(CreateObject)(THIS_ REFCLSID rclsid, LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
- STDMETHOD(CreateFrame)(THIS_ LPDIRECT3DRMFRAME3, LPDIRECT3DRMFRAME3 *) PURE;
+ STDMETHOD(CreateFrame)(THIS_ IDirect3DRMFrame3 *parent, IDirect3DRMFrame3 **frame) PURE;
STDMETHOD(CreateMesh)(THIS_ LPDIRECT3DRMMESH *) PURE;
STDMETHOD(CreateMeshBuilder)(THIS_ LPDIRECT3DRMMESHBUILDER3 *) PURE;
STDMETHOD(CreateFace)(THIS_ LPDIRECT3DRMFACE2 *) PURE;
@@ -358,9 +358,10 @@ DECLARE_INTERFACE_(IDirect3DRM3,IUnknown)
D3DVALUE nx, D3DVALUE ny, D3DVALUE nz, LPDIRECT3DRMSHADOW2 *) PURE;
STDMETHOD(CreateViewport)(THIS_ IDirect3DRMDevice3 *device, IDirect3DRMFrame3 *camera,
DWORD x, DWORD y, DWORD width, DWORD height, IDirect3DRMViewport2 **viewport) PURE;
- STDMETHOD(CreateWrap)(THIS_ D3DRMWRAPTYPE, LPDIRECT3DRMFRAME3, D3DVALUE ox, D3DVALUE oy, D3DVALUE oz,
- D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz, D3DVALUE ou, D3DVALUE ov,
- D3DVALUE su, D3DVALUE sv, LPDIRECT3DRMWRAP *) PURE;
+ STDMETHOD(CreateWrap)(THIS_ D3DRMWRAPTYPE type, IDirect3DRMFrame3 *reference,
+ D3DVALUE ox, D3DVALUE oy, D3DVALUE oz, D3DVALUE dx, D3DVALUE dy, D3DVALUE dz,
+ D3DVALUE ux, D3DVALUE uy, D3DVALUE uz, D3DVALUE ou, D3DVALUE ov, D3DVALUE su, D3DVALUE sv,
+ IDirect3DRMWrap **wrap) PURE;
STDMETHOD(CreateUserVisual)(THIS_ D3DRMUSERVISUALCALLBACK, LPVOID pArg, LPDIRECT3DRMUSERVISUAL *) PURE;
STDMETHOD(LoadTexture)(THIS_ const char *, LPDIRECT3DRMTEXTURE3 *) PURE;
STDMETHOD(LoadTextureFromResource)(THIS_ HMODULE hModule, LPCSTR /* LPCTSTR */ strName, LPCSTR /* LPCTSTR */ strType, LPDIRECT3DRMTEXTURE3 *) PURE;
@@ -372,8 +373,9 @@ DECLARE_INTERFACE_(IDirect3DRM3,IUnknown)
STDMETHOD(GetDevices)(THIS_ LPDIRECT3DRMDEVICEARRAY *) PURE;
STDMETHOD(GetNamedObject)(THIS_ const char *name, IDirect3DRMObject **object) PURE;
STDMETHOD(EnumerateObjects)(THIS_ D3DRMOBJECTCALLBACK, LPVOID) PURE;
- STDMETHOD(Load)(THIS_ LPVOID, LPVOID, LPIID *, DWORD, D3DRMLOADOPTIONS, D3DRMLOADCALLBACK, LPVOID,
- D3DRMLOADTEXTURECALLBACK, LPVOID, LPDIRECT3DRMFRAME3) PURE;
+ STDMETHOD(Load)(THIS_ void *source, void *object_id, IID **iids, DWORD iid_count, D3DRMLOADOPTIONS flags,
+ D3DRMLOADCALLBACK load_cb, void *load_ctx, D3DRMLOADTEXTURECALLBACK load_tex_cb, void *load_tex_ctx,
+ IDirect3DRMFrame3 *parent_frame) PURE;
STDMETHOD(Tick)(THIS_ D3DVALUE) PURE;
STDMETHOD(CreateProgressiveMesh)(THIS_ LPDIRECT3DRMPROGRESSIVEMESH) PURE;
STDMETHOD(RegisterClient)(THIS_ REFGUID rguid, LPDWORD lpdwID) PURE;
diff --git a/include/d3drmobj.h b/include/d3drmobj.h
index b2ca0ee..f7a47dd 100644
--- a/include/d3drmobj.h
+++ b/include/d3drmobj.h
@@ -156,7 +156,7 @@ typedef struct IDirect3DRMClippedVisual *LPDIRECT3DRMCLIPPEDVISUAL, **LPLPDIRE
typedef void (__cdecl *D3DRMOBJECTCALLBACK)(struct IDirect3DRMObject *obj, void *arg);
typedef void (__cdecl *D3DRMFRAMEMOVECALLBACK)(struct IDirect3DRMFrame *frame, void *ctx, D3DVALUE delta);
-typedef void (__cdecl *D3DRMFRAME3MOVECALLBACK)(LPDIRECT3DRMFRAME3 obj, LPVOID arg, D3DVALUE delta);
+typedef void (__cdecl *D3DRMFRAME3MOVECALLBACK)(struct IDirect3DRMFrame3 *frame, void *ctx, D3DVALUE delta);
typedef void (__cdecl *D3DRMUPDATECALLBACK)(struct IDirect3DRMDevice *device, void *ctx, int count, D3DRECT *rects);
typedef void (__cdecl *D3DRMDEVICE3UPDATECALLBACK)(struct IDirect3DRMDevice3 *device, void *ctx,
int count, D3DRECT *rects);
@@ -951,19 +951,19 @@ DECLARE_INTERFACE_(IDirect3DRMViewport2,IDirect3DRMObject)
STDMETHOD(Init) (THIS_ IDirect3DRMDevice3 *device, struct IDirect3DRMFrame3 *camera,
DWORD x, DWORD y, DWORD width, DWORD height) PURE;
STDMETHOD(Clear)(THIS_ DWORD flags) PURE;
- STDMETHOD(Render)(THIS_ LPDIRECT3DRMFRAME3) PURE;
+ STDMETHOD(Render)(THIS_ struct IDirect3DRMFrame3 *frame) PURE;
STDMETHOD(SetFront)(THIS_ D3DVALUE) PURE;
STDMETHOD(SetBack)(THIS_ D3DVALUE) PURE;
STDMETHOD(SetField)(THIS_ D3DVALUE) PURE;
STDMETHOD(SetUniformScaling)(THIS_ BOOL) PURE;
- STDMETHOD(SetCamera)(THIS_ LPDIRECT3DRMFRAME3) PURE;
+ STDMETHOD(SetCamera)(THIS_ struct IDirect3DRMFrame3 *camera) PURE;
STDMETHOD(SetProjection)(THIS_ D3DRMPROJECTIONTYPE) PURE;
STDMETHOD(Transform)(THIS_ D3DRMVECTOR4D *d, D3DVECTOR *s) PURE;
STDMETHOD(InverseTransform)(THIS_ D3DVECTOR *d, D3DRMVECTOR4D *s) PURE;
STDMETHOD(Configure)(THIS_ LONG x, LONG y, DWORD width, DWORD height) PURE;
STDMETHOD(ForceUpdate)(THIS_ DWORD x1, DWORD y1, DWORD x2, DWORD y2) PURE;
STDMETHOD(SetPlane)(THIS_ D3DVALUE left, D3DVALUE right, D3DVALUE bottom, D3DVALUE top) PURE;
- STDMETHOD(GetCamera)(THIS_ LPDIRECT3DRMFRAME3 *) PURE;
+ STDMETHOD(GetCamera)(THIS_ struct IDirect3DRMFrame3 **camera) PURE;
STDMETHOD(GetDevice)(THIS_ IDirect3DRMDevice3 **device) PURE;
STDMETHOD(GetPlane)(THIS_ D3DVALUE *left, D3DVALUE *right, D3DVALUE *bottom, D3DVALUE *top) PURE;
STDMETHOD(Pick)(THIS_ LONG x, LONG y, LPDIRECT3DRMPICKEDARRAY *return_visuals) PURE;
@@ -1611,7 +1611,7 @@ DECLARE_INTERFACE_(IDirect3DRMFrame3,IDirect3DRMVisual)
STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
/*** IDirect3DRMFrame3 methods ***/
- STDMETHOD(AddChild)(THIS_ LPDIRECT3DRMFRAME3 child) PURE;
+ STDMETHOD(AddChild)(THIS_ IDirect3DRMFrame3 *child) PURE;
STDMETHOD(AddLight)(THIS_ LPDIRECT3DRMLIGHT) PURE;
STDMETHOD(AddMoveCallback)(THIS_ D3DRMFRAME3MOVECALLBACK, VOID *arg, DWORD flags) PURE;
STDMETHOD(AddTransform)(THIS_ D3DRMCOMBINETYPE, D3DRMMATRIX4D) PURE;
@@ -1623,22 +1623,23 @@ DECLARE_INTERFACE_(IDirect3DRMFrame3,IDirect3DRMVisual)
STDMETHOD_(D3DCOLOR, GetColor)(THIS) PURE;
STDMETHOD(GetLights)(THIS_ LPDIRECT3DRMLIGHTARRAY *lights) PURE;
STDMETHOD_(D3DRMMATERIALMODE, GetMaterialMode)(THIS) PURE;
- STDMETHOD(GetParent)(THIS_ LPDIRECT3DRMFRAME3 *) PURE;
+ STDMETHOD(GetParent)(THIS_ IDirect3DRMFrame3 **parent) PURE;
STDMETHOD(GetPosition)(THIS_ IDirect3DRMFrame3 *reference, D3DVECTOR *return_position) PURE;
STDMETHOD(GetRotation)(THIS_ IDirect3DRMFrame3 *reference, D3DVECTOR *axis, D3DVALUE *return_theta) PURE;
- STDMETHOD(GetScene)(THIS_ LPDIRECT3DRMFRAME3 *) PURE;
+ STDMETHOD(GetScene)(THIS_ IDirect3DRMFrame3 **scene) PURE;
STDMETHOD_(D3DRMSORTMODE, GetSortMode)(THIS) PURE;
STDMETHOD(GetTexture)(THIS_ LPDIRECT3DRMTEXTURE3 *) PURE;
- STDMETHOD(GetTransform)(THIS_ LPDIRECT3DRMFRAME3 reference, D3DRMMATRIX4D rmMatrix) PURE;
+ STDMETHOD(GetTransform)(THIS_ IDirect3DRMFrame3 *reference, D3DRMMATRIX4D matrix) PURE;
STDMETHOD(GetVelocity)(THIS_ IDirect3DRMFrame3 *reference, D3DVECTOR *return_velocity, BOOL with_rotation) PURE;
STDMETHOD(GetOrientation)(THIS_ IDirect3DRMFrame3 *reference, D3DVECTOR *dir, D3DVECTOR *up) PURE;
STDMETHOD(GetVisuals)(THIS_ LPDWORD pCount, LPUNKNOWN *) PURE;
STDMETHOD(InverseTransform)(THIS_ D3DVECTOR *d, D3DVECTOR *s) PURE;
STDMETHOD(Load)(THIS_ LPVOID filename, LPVOID name, D3DRMLOADOPTIONS loadflags,
D3DRMLOADTEXTURE3CALLBACK, LPVOID pArg) PURE;
- STDMETHOD(LookAt)(THIS_ LPDIRECT3DRMFRAME3 target, LPDIRECT3DRMFRAME3 reference, D3DRMFRAMECONSTRAINT) PURE;
+ STDMETHOD(LookAt)(THIS_ IDirect3DRMFrame3 *target, IDirect3DRMFrame3 *reference,
+ D3DRMFRAMECONSTRAINT constraint) PURE;
STDMETHOD(Move)(THIS_ D3DVALUE delta) PURE;
- STDMETHOD(DeleteChild)(THIS_ LPDIRECT3DRMFRAME3) PURE;
+ STDMETHOD(DeleteChild)(THIS_ IDirect3DRMFrame3 *child) PURE;
STDMETHOD(DeleteLight)(THIS_ LPDIRECT3DRMLIGHT) PURE;
STDMETHOD(DeleteMoveCallback)(THIS_ D3DRMFRAME3MOVECALLBACK, VOID *arg) PURE;
STDMETHOD(DeleteVisual)(THIS_ LPUNKNOWN) PURE;
@@ -1661,15 +1662,15 @@ DECLARE_INTERFACE_(IDirect3DRMFrame3,IDirect3DRMVisual)
STDMETHOD(SetColorRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE;
STDMETHOD_(D3DRMZBUFFERMODE, GetZbufferMode)(THIS) PURE;
STDMETHOD(SetMaterialMode)(THIS_ D3DRMMATERIALMODE) PURE;
- STDMETHOD(SetOrientation)(THIS_ LPDIRECT3DRMFRAME3 reference, D3DVALUE dx, D3DVALUE dy, D3DVALUE dz,
- D3DVALUE ux, D3DVALUE uy, D3DVALUE uz) PURE;
- STDMETHOD(SetPosition)(THIS_ LPDIRECT3DRMFRAME3 reference, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
- STDMETHOD(SetRotation)(THIS_ LPDIRECT3DRMFRAME3 reference, D3DVALUE x, D3DVALUE y, D3DVALUE z,
- D3DVALUE theta) PURE;
+ STDMETHOD(SetOrientation)(THIS_ IDirect3DRMFrame3 *reference, D3DVALUE dx, D3DVALUE dy, D3DVALUE dz,
+ D3DVALUE ux, D3DVALUE uy, D3DVALUE uz) PURE;
+ STDMETHOD(SetPosition)(THIS_ IDirect3DRMFrame3 *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
+ STDMETHOD(SetRotation)(THIS_ IDirect3DRMFrame3 *reference,
+ D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) PURE;
STDMETHOD(SetSortMode)(THIS_ D3DRMSORTMODE) PURE;
STDMETHOD(SetTexture)(THIS_ LPDIRECT3DRMTEXTURE3) PURE;
- STDMETHOD(SetVelocity)(THIS_ LPDIRECT3DRMFRAME3 reference, D3DVALUE x, D3DVALUE y, D3DVALUE z,
- BOOL with_rotation) PURE;
+ STDMETHOD(SetVelocity)(THIS_ IDirect3DRMFrame3 *reference,
+ D3DVALUE x, D3DVALUE y, D3DVALUE z, BOOL with_rotation) PURE;
STDMETHOD(SetZbufferMode)(THIS_ D3DRMZBUFFERMODE) PURE;
STDMETHOD(Transform)(THIS_ D3DVECTOR *d, D3DVECTOR *s) PURE;
STDMETHOD(GetBox)(THIS_ D3DRMBOX *box) PURE;
@@ -1683,7 +1684,7 @@ DECLARE_INTERFACE_(IDirect3DRMFrame3,IDirect3DRMVisual)
STDMETHOD(SetAxes)(THIS_ D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz);
STDMETHOD(SetInheritAxes)(THIS_ BOOL inherit_from_parent);
STDMETHOD(SetMaterial)(THIS_ LPDIRECT3DRMMATERIAL2) PURE;
- STDMETHOD(SetQuaternion)(THIS_ LPDIRECT3DRMFRAME3 reference, D3DRMQUATERNION *q) PURE;
+ STDMETHOD(SetQuaternion)(THIS_ IDirect3DRMFrame3 *reference, D3DRMQUATERNION *q) PURE;
STDMETHOD(RayPick)(THIS_ IDirect3DRMFrame3 *reference, D3DRMRAY *ray, DWORD flags,
struct IDirect3DRMPicked2Array **return_visuals) PURE;
STDMETHOD(Save)(THIS_ LPCSTR filename, D3DRMXOFFORMAT d3dFormat, D3DRMSAVEOPTIONS d3dSaveFlags);
@@ -2861,7 +2862,7 @@ DECLARE_INTERFACE_(IDirect3DRMMeshBuilder3,IDirect3DRMVisual)
STDMETHOD_(D3DRMCOLORSOURCE, GetColorSource)(THIS) PURE;
STDMETHOD(AddMesh)(THIS_ LPDIRECT3DRMMESH) PURE;
STDMETHOD(AddMeshBuilder)(THIS_ LPDIRECT3DRMMESHBUILDER3, DWORD flags) PURE;
- STDMETHOD(AddFrame)(THIS_ LPDIRECT3DRMFRAME3) PURE;
+ STDMETHOD(AddFrame)(THIS_ IDirect3DRMFrame3 *frame) PURE;
STDMETHOD(AddFace)(THIS_ LPDIRECT3DRMFACE2) PURE;
STDMETHOD(AddFaces)(THIS_ DWORD vcount, D3DVECTOR *vertices, DWORD ncount, D3DVECTOR *normals, DWORD *data,
LPDIRECT3DRMFACEARRAY*) PURE;
@@ -3873,10 +3874,10 @@ DECLARE_INTERFACE_(IDirect3DRMAnimation2, IDirect3DRMObject)
STDMETHOD(AddPositionKey)(THIS_ D3DVALUE time, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
STDMETHOD(AddScaleKey)(THIS_ D3DVALUE time, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
STDMETHOD(DeleteKey)(THIS_ D3DVALUE time) PURE;
- STDMETHOD(SetFrame)(THIS_ LPDIRECT3DRMFRAME3 frame) PURE;
+ STDMETHOD(SetFrame)(THIS_ IDirect3DRMFrame3 *frame) PURE;
STDMETHOD(SetTime)(THIS_ D3DVALUE time) PURE;
STDMETHOD_(D3DRMANIMATIONOPTIONS, GetOptions)(THIS) PURE;
- STDMETHOD(GetFrame)(THIS_ LPDIRECT3DRMFRAME3 *lpD3DFrame) PURE;
+ STDMETHOD(GetFrame)(THIS_ IDirect3DRMFrame3 **frame) PURE;
STDMETHOD(DeleteKeyByID)(THIS_ DWORD dwID) PURE;
STDMETHOD(AddKey)(THIS_ D3DRMANIMATIONKEY *key) PURE;
STDMETHOD(ModifyKey)(THIS_ D3DRMANIMATIONKEY *key) PURE;
@@ -4031,7 +4032,8 @@ DECLARE_INTERFACE_(IDirect3DRMAnimationSet2, IDirect3DRMObject)
STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
/*** IDirect3DRMAnimationSet2 methods ***/
STDMETHOD(AddAnimation)(THIS_ LPDIRECT3DRMANIMATION2 aid) PURE;
- STDMETHOD(Load)(THIS_ LPVOID filename, LPVOID name, D3DRMLOADOPTIONS loadflags, D3DRMLOADTEXTURE3CALLBACK, LPVOID lpArg, LPDIRECT3DRMFRAME3 parent)PURE;
+ STDMETHOD(Load)(THIS_ void *source, void *object_id, D3DRMLOADOPTIONS flags,
+ D3DRMLOADTEXTURE3CALLBACK cb, void *ctx, IDirect3DRMFrame3 *parent_frame)PURE;
STDMETHOD(DeleteAnimation)(THIS_ LPDIRECT3DRMANIMATION2 aid) PURE;
STDMETHOD(SetTime)(THIS_ D3DVALUE time) PURE;
STDMETHOD(GetAnimations)(THIS_ LPDIRECT3DRMANIMATIONARRAY *) PURE;
--
1.8.1.5
More information about the wine-patches
mailing list