From 65f9ddc2ca8ab0591e038f7d2ae470375db531fd Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Mon, 22 Apr 2013 15:18:44 +0200 Subject: [PATCH] d3drm: Avoid LPDIRECT3DRMFRAME3. --- 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 637eaefe71f..2f161525861 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("iface %p, parent %p, frame %p.\n", iface, parent, frame); - TRACE("(%p/%p)->(%p,%p)\n", iface, This, parent_frame, 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 58cdb69295b..cdfd516e8f2 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 d8d0c958b4a..e7623328805 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 adf1d9749dc..49cceb0920f 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 7700f9ca2eb..2910232364b 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 b2ca0eeb2fb..f7a47dd4123 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;