diff --git a/dlls/d3drm/frame.c b/dlls/d3drm/frame.c index f20040bb790..0265b158c9e 100644 --- a/dlls/d3drm/frame.c +++ b/dlls/d3drm/frame.c @@ -464,726 +464,6 @@ static struct d3drm_light_array *d3drm_light_array_create(unsigned int light_cou return array; } -static HRESULT WINAPI d3drm_frame2_QueryInterface(IDirect3DRMFrame2 *iface, REFIID riid, void **out) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p, riid %s, out %p.\n", iface, debugstr_guid(riid), out); - - return IDirect3DRMFrame3_QueryInterface(&frame->IDirect3DRMFrame3_iface, riid, out); -} - -static ULONG WINAPI d3drm_frame2_AddRef(IDirect3DRMFrame2 *iface) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p.\n", iface); - - return IDirect3DRMFrame3_AddRef(&frame->IDirect3DRMFrame3_iface); -} - -static ULONG WINAPI d3drm_frame2_Release(IDirect3DRMFrame2 *iface) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p.\n", iface); - - return IDirect3DRMFrame3_Release(&frame->IDirect3DRMFrame3_iface); -} - -static HRESULT WINAPI d3drm_frame2_Clone(IDirect3DRMFrame2 *iface, - IUnknown *outer, REFIID iid, void **out) -{ - FIXME("iface %p, outer %p, iid %s, out %p stub!\n", iface, outer, debugstr_guid(iid), out); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_AddDestroyCallback(IDirect3DRMFrame2 *iface, - D3DRMOBJECTCALLBACK cb, void *ctx) -{ - FIXME("iface %p, cb %p, ctx %p stub!\n", iface, cb, ctx); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_DeleteDestroyCallback(IDirect3DRMFrame2 *iface, - D3DRMOBJECTCALLBACK cb, void *ctx) -{ - FIXME("iface %p, cb %p, ctx %p stub!\n", iface, cb, ctx); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_SetAppData(IDirect3DRMFrame2 *iface, DWORD data) -{ - FIXME("iface %p, data %#x stub!\n", iface, data); - - return E_NOTIMPL; -} - -static DWORD WINAPI d3drm_frame2_GetAppData(IDirect3DRMFrame2 *iface) -{ - FIXME("iface %p stub!\n", iface); - - return 0; -} - -static HRESULT WINAPI d3drm_frame2_SetName(IDirect3DRMFrame2 *iface, const char *name) -{ - FIXME("iface %p, name %s stub!\n", iface, debugstr_a(name)); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_GetName(IDirect3DRMFrame2 *iface, DWORD *size, char *name) -{ - FIXME("iface %p, size %p, name %p stub!\n", iface, size, name); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_GetClassName(IDirect3DRMFrame2 *iface, DWORD *size, char *name) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p, size %p, name %p.\n", iface, size, name); - - return IDirect3DRMFrame3_GetClassName(&frame->IDirect3DRMFrame3_iface, size, name); -} - -static HRESULT WINAPI d3drm_frame2_AddChild(IDirect3DRMFrame2 *iface, IDirect3DRMFrame *child) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - IDirect3DRMFrame3 *child3; - HRESULT hr; - - TRACE("iface %p, child %p.\n", iface, child); - - if (!child) - return D3DRMERR_BADOBJECT; - hr = IDirect3DRMFrame_QueryInterface(child, &IID_IDirect3DRMFrame3, (void **)&child3); - if (hr != S_OK) - return D3DRMERR_BADOBJECT; - IDirect3DRMFrame_Release(child); - - return IDirect3DRMFrame3_AddChild(&frame->IDirect3DRMFrame3_iface, child3); -} - -static HRESULT WINAPI d3drm_frame2_AddLight(IDirect3DRMFrame2 *iface, IDirect3DRMLight *light) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p, light %p.\n", iface, light); - - return IDirect3DRMFrame3_AddLight(&frame->IDirect3DRMFrame3_iface, light); -} - -static HRESULT WINAPI d3drm_frame2_AddMoveCallback(IDirect3DRMFrame2 *iface, - D3DRMFRAMEMOVECALLBACK cb, void *ctx) -{ - FIXME("iface %p, cb %p, ctx %p stub!\n", iface, cb, ctx); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_AddTransform(IDirect3DRMFrame2 *iface, D3DRMCOMBINETYPE type, D3DRMMATRIX4D matrix) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p, type %#x, matrix %p.\n", iface, type, matrix); - - return IDirect3DRMFrame3_AddTransform(&frame->IDirect3DRMFrame3_iface, type, matrix); -} - -static HRESULT WINAPI d3drm_frame2_AddTranslation(IDirect3DRMFrame2 *iface, - D3DRMCOMBINETYPE type, D3DVALUE x, D3DVALUE y, D3DVALUE z) -{ - FIXME("iface %p, type %#x, x %.8e, y %.8e, z %.8e stub!\n", iface, type, x, y, z); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_AddScale(IDirect3DRMFrame2 *iface, - D3DRMCOMBINETYPE type, D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) -{ - FIXME("iface %p, type %#x, sx %.8e, sy %.8e, sz %.8e stub!\n", iface, type, sx, sy, sz); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_AddRotation(IDirect3DRMFrame2 *iface, - D3DRMCOMBINETYPE type, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) -{ - FIXME("iface %p, type %#x, x %.8e, y %.8e, z %.8e, theta %.8e stub!\n", iface, type, x, y, z, theta); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_AddVisual(IDirect3DRMFrame2 *iface, IDirect3DRMVisual *visual) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p, visual %p.\n", iface, visual); - - return IDirect3DRMFrame3_AddVisual(&frame->IDirect3DRMFrame3_iface, (IUnknown *)visual); -} - -static HRESULT WINAPI d3drm_frame2_GetChildren(IDirect3DRMFrame2 *iface, IDirect3DRMFrameArray **children) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p, children %p.\n", iface, children); - - return IDirect3DRMFrame3_GetChildren(&frame->IDirect3DRMFrame3_iface, children); -} - -static D3DCOLOR WINAPI d3drm_frame2_GetColor(IDirect3DRMFrame2 *iface) -{ - FIXME("iface %p stub!\n", iface); - - return 0; -} - -static HRESULT WINAPI d3drm_frame2_GetLights(IDirect3DRMFrame2 *iface, IDirect3DRMLightArray **lights) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p, lights %p.\n", iface, lights); - - return IDirect3DRMFrame3_GetLights(&frame->IDirect3DRMFrame3_iface, lights); -} - -static D3DRMMATERIALMODE WINAPI d3drm_frame2_GetMaterialMode(IDirect3DRMFrame2 *iface) -{ - FIXME("iface %p stub!\n", iface); - - return D3DRMMATERIAL_FROMPARENT; -} - -static HRESULT WINAPI d3drm_frame2_GetParent(IDirect3DRMFrame2 *iface, IDirect3DRMFrame **parent) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p, parent %p.\n", iface, parent); - - if (!parent) - return D3DRMERR_BADVALUE; - - if (frame->parent) - { - *parent = (IDirect3DRMFrame *)&frame->parent->IDirect3DRMFrame2_iface; - IDirect3DRMFrame_AddRef(*parent); - } - else - { - *parent = NULL; - } - - return D3DRM_OK; -} - -static HRESULT WINAPI d3drm_frame2_GetPosition(IDirect3DRMFrame2 *iface, - IDirect3DRMFrame *reference, D3DVECTOR *position) -{ - FIXME("iface %p, reference %p, position %p stub!\n", iface, reference, position); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_GetRotation(IDirect3DRMFrame2 *iface, - IDirect3DRMFrame *reference, D3DVECTOR *axis, D3DVALUE *theta) -{ - FIXME("iface %p, reference %p, axis %p, theta %p stub!\n", iface, reference, axis, theta); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_GetScene(IDirect3DRMFrame2 *iface, IDirect3DRMFrame **scene) -{ - FIXME("iface %p, scene %p stub!\n", iface, scene); - - return E_NOTIMPL; -} - -static D3DRMSORTMODE WINAPI d3drm_frame2_GetSortMode(IDirect3DRMFrame2 *iface) -{ - FIXME("iface %p stub!\n", iface); - - return D3DRMSORT_FROMPARENT; -} - -static HRESULT WINAPI d3drm_frame2_GetTexture(IDirect3DRMFrame2 *iface, IDirect3DRMTexture **texture) -{ - FIXME("iface %p, texture %p stub!\n", iface, texture); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_GetTransform(IDirect3DRMFrame2 *iface, D3DRMMATRIX4D matrix) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p, matrix %p.\n", iface, matrix); - - memcpy(matrix, frame->transform, sizeof(D3DRMMATRIX4D)); - - return D3DRM_OK; -} - -static HRESULT WINAPI d3drm_frame2_GetVelocity(IDirect3DRMFrame2 *iface, - IDirect3DRMFrame *reference, D3DVECTOR *velocity, BOOL with_rotation) -{ - FIXME("iface %p, reference %p, velocity %p, with_rotation %#x stub!\n", - iface, reference, velocity, with_rotation); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_GetOrientation(IDirect3DRMFrame2 *iface, - IDirect3DRMFrame *reference, D3DVECTOR *dir, D3DVECTOR *up) -{ - FIXME("iface %p, reference %p, dir %p, up %p stub!\n", iface, reference, dir, up); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_GetVisuals(IDirect3DRMFrame2 *iface, IDirect3DRMVisualArray **visuals) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - struct d3drm_visual_array *array; - - TRACE("iface %p, visuals %p.\n", iface, visuals); - - if (!visuals) - return D3DRMERR_BADVALUE; - - if (!(array = d3drm_visual_array_create(frame->nb_visuals, frame->visuals))) - return E_OUTOFMEMORY; - - *visuals = &array->IDirect3DRMVisualArray_iface; - - return D3DRM_OK; -} - -static HRESULT WINAPI d3drm_frame2_GetTextureTopology(IDirect3DRMFrame2 *iface, BOOL *wrap_u, BOOL *wrap_v) -{ - FIXME("iface %p, wrap_u %p, wrap_v %p stub!\n", iface, wrap_u, wrap_v); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_InverseTransform(IDirect3DRMFrame2 *iface, D3DVECTOR *d, D3DVECTOR *s) -{ - FIXME("iface %p, d %p, s %p stub!\n", iface, d, s); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_Load(IDirect3DRMFrame2 *iface, void *filename, - void *name, D3DRMLOADOPTIONS flags, D3DRMLOADTEXTURECALLBACK cb, void *ctx) -{ - FIXME("iface %p, filename %p, name %p, flags %#x, cb %p, ctx %p stub!\n", - iface, filename, name, flags, cb, ctx); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_LookAt(IDirect3DRMFrame2 *iface, IDirect3DRMFrame *target, - IDirect3DRMFrame *reference, D3DRMFRAMECONSTRAINT constraint) -{ - FIXME("iface %p, target %p, reference %p, constraint %#x stub!\n", iface, target, reference, constraint); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_Move(IDirect3DRMFrame2 *iface, D3DVALUE delta) -{ - FIXME("iface %p, delta %.8e stub!\n", iface, delta); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_DeleteChild(IDirect3DRMFrame2 *iface, IDirect3DRMFrame *child) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - IDirect3DRMFrame3 *child3; - HRESULT hr; - - TRACE("iface %p, child %p.\n", iface, child); - - if (!child) - return D3DRMERR_BADOBJECT; - if (FAILED(hr = IDirect3DRMFrame_QueryInterface(child, &IID_IDirect3DRMFrame3, (void **)&child3))) - return D3DRMERR_BADOBJECT; - IDirect3DRMFrame_Release(child); - - return IDirect3DRMFrame3_DeleteChild(&frame->IDirect3DRMFrame3_iface, child3); -} - -static HRESULT WINAPI d3drm_frame2_DeleteLight(IDirect3DRMFrame2 *iface, IDirect3DRMLight *light) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p, light %p.\n", iface, light); - - return IDirect3DRMFrame3_DeleteLight(&frame->IDirect3DRMFrame3_iface, light); -} - -static HRESULT WINAPI d3drm_frame2_DeleteMoveCallback(IDirect3DRMFrame2 *iface, - D3DRMFRAMEMOVECALLBACK cb, void *ctx) -{ - FIXME("iface %p, cb %p, ctx %p stub!\n", iface, cb, ctx); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_DeleteVisual(IDirect3DRMFrame2 *iface, IDirect3DRMVisual *visual) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p, visual %p.\n", iface, visual); - - return IDirect3DRMFrame3_DeleteVisual(&frame->IDirect3DRMFrame3_iface, (IUnknown *)visual); -} - -static D3DCOLOR WINAPI d3drm_frame2_GetSceneBackground(IDirect3DRMFrame2 *iface) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p.\n", iface); - - return IDirect3DRMFrame3_GetSceneBackground(&frame->IDirect3DRMFrame3_iface); -} - -static HRESULT WINAPI d3drm_frame2_GetSceneBackgroundDepth(IDirect3DRMFrame2 *iface, - IDirectDrawSurface **surface) -{ - FIXME("iface %p, surface %p stub!\n", iface, surface); - - return E_NOTIMPL; -} - -static D3DCOLOR WINAPI d3drm_frame2_GetSceneFogColor(IDirect3DRMFrame2 *iface) -{ - FIXME("iface %p stub!\n", iface); - - return 0; -} - -static BOOL WINAPI d3drm_frame2_GetSceneFogEnable(IDirect3DRMFrame2 *iface) -{ - FIXME("iface %p stub!\n", iface); - - return FALSE; -} - -static D3DRMFOGMODE WINAPI d3drm_frame2_GetSceneFogMode(IDirect3DRMFrame2 *iface) -{ - FIXME("iface %p stub!\n", iface); - - return D3DRMFOG_LINEAR; -} - -static HRESULT WINAPI d3drm_frame2_GetSceneFogParams(IDirect3DRMFrame2 *iface, - D3DVALUE *start, D3DVALUE *end, D3DVALUE *density) -{ - FIXME("iface %p, start %p, end %p, density %p stub!\n", iface, start, end, density); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_SetSceneBackground(IDirect3DRMFrame2 *iface, D3DCOLOR color) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p, color 0x%08x.\n", iface, color); - - return IDirect3DRMFrame3_SetSceneBackground(&frame->IDirect3DRMFrame3_iface, color); -} - -static HRESULT WINAPI d3drm_frame2_SetSceneBackgroundRGB(IDirect3DRMFrame2 *iface, - D3DVALUE red, D3DVALUE green, D3DVALUE blue) -{ - struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); - - TRACE("iface %p, red %.8e, green %.8e, blue %.8e.\n", iface, red, green, blue); - - return IDirect3DRMFrame3_SetSceneBackgroundRGB(&frame->IDirect3DRMFrame3_iface, red, green, blue); -} - -static HRESULT WINAPI d3drm_frame2_SetSceneBackgroundDepth(IDirect3DRMFrame2 *iface, IDirectDrawSurface *surface) -{ - FIXME("iface %p, surface %p stub!\n", iface, surface); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_SetSceneBackgroundImage(IDirect3DRMFrame2 *iface, IDirect3DRMTexture *texture) -{ - FIXME("iface %p, texture %p stub!\n", iface, texture); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_SetSceneFogEnable(IDirect3DRMFrame2 *iface, BOOL enable) -{ - FIXME("iface %p, enable %#x stub!\n", iface, enable); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_SetSceneFogColor(IDirect3DRMFrame2 *iface, D3DCOLOR color) -{ - FIXME("iface %p, color 0x%08x stub!\n", iface, color); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_SetSceneFogMode(IDirect3DRMFrame2 *iface, D3DRMFOGMODE mode) -{ - FIXME("iface %p, mode %#x stub!\n", iface, mode); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_SetSceneFogParams(IDirect3DRMFrame2 *iface, - D3DVALUE start, D3DVALUE end, D3DVALUE density) -{ - FIXME("iface %p, start %.8e, end %.8e, density %.8e stub!\n", iface, start, end, density); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_SetColor(IDirect3DRMFrame2 *iface, D3DCOLOR color) -{ - FIXME("iface %p, color 0x%08x stub!\n", iface, color); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_SetColorRGB(IDirect3DRMFrame2 *iface, - D3DVALUE red, D3DVALUE green, D3DVALUE blue) -{ - FIXME("iface %p, red %.8e, green %.8e, blue %.8e stub!\n", iface, red, green, blue); - - return E_NOTIMPL; -} - -static D3DRMZBUFFERMODE WINAPI d3drm_frame2_GetZbufferMode(IDirect3DRMFrame2 *iface) -{ - FIXME("iface %p stub!\n", iface); - - return D3DRMZBUFFER_FROMPARENT; -} - -static HRESULT WINAPI d3drm_frame2_SetMaterialMode(IDirect3DRMFrame2 *iface, D3DRMMATERIALMODE mode) -{ - FIXME("iface %p, mode %#x stub!\n", iface, mode); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_SetOrientation(IDirect3DRMFrame2 *iface, IDirect3DRMFrame *reference, - D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE 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 d3drm_frame2_SetPosition(IDirect3DRMFrame2 *iface, - IDirect3DRMFrame *reference, D3DVALUE x, D3DVALUE y, D3DVALUE 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 d3drm_frame2_SetRotation(IDirect3DRMFrame2 *iface, - IDirect3DRMFrame *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE 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; -} - -static HRESULT WINAPI d3drm_frame2_SetSortMode(IDirect3DRMFrame2 *iface, D3DRMSORTMODE mode) -{ - FIXME("iface %p, mode %#x stub!\n", iface, mode); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_SetTexture(IDirect3DRMFrame2 *iface, IDirect3DRMTexture *texture) -{ - FIXME("iface %p, texture %p stub!\n", iface, texture); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_SetTextureTopology(IDirect3DRMFrame2 *iface, BOOL wrap_u, BOOL wrap_v) -{ - FIXME("iface %p, wrap_u %#x, wrap_v %#x stub!\n", iface, wrap_u, wrap_v); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_SetVelocity(IDirect3DRMFrame2 *iface, - IDirect3DRMFrame *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, BOOL with_rotation) -{ - FIXME("iface %p, reference %p, x %.8e, y %.8e, z %.8e, with_rotation %#x stub!\n", - iface, reference, x, y, z, with_rotation); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_SetZbufferMode(IDirect3DRMFrame2 *iface, D3DRMZBUFFERMODE mode) -{ - FIXME("iface %p, mode %#x stub!\n", iface, mode); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_Transform(IDirect3DRMFrame2 *iface, D3DVECTOR *d, D3DVECTOR *s) -{ - FIXME("iface %p, d %p, s %p stub!\n", iface, d, s); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_AddMoveCallback2(IDirect3DRMFrame2 *iface, - D3DRMFRAMEMOVECALLBACK cb, void *ctx, DWORD flags) -{ - FIXME("iface %p, cb %p, ctx %p, flags %#x stub!\n", iface, cb, ctx, flags); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_GetBox(IDirect3DRMFrame2 *iface, D3DRMBOX *box) -{ - FIXME("iface %p, box %p stub!\n", iface, box); - - return E_NOTIMPL; -} - -static BOOL WINAPI d3drm_frame2_GetBoxEnable(IDirect3DRMFrame2 *iface) -{ - FIXME("iface %p stub!\n", iface); - - return FALSE; -} - -static HRESULT WINAPI d3drm_frame2_GetAxes(IDirect3DRMFrame2 *iface, D3DVECTOR *dir, D3DVECTOR *up) -{ - FIXME("iface %p, dir %p, up %p stub!\n", iface, dir, up); - - return E_NOTIMPL; -} - -static HRESULT WINAPI d3drm_frame2_GetMaterial(IDirect3DRMFrame2 *iface, IDirect3DRMMaterial **material) -{ - FIXME("iface %p, material %p stub!\n", iface, material); - - return E_NOTIMPL; -} - -static BOOL WINAPI d3drm_frame2_GetInheritAxes(IDirect3DRMFrame2 *iface) -{ - FIXME("iface %p stub!\n", iface); - - return FALSE; -} - -static HRESULT WINAPI d3drm_frame2_GetHierarchyBox(IDirect3DRMFrame2 *iface, D3DRMBOX *box) -{ - FIXME("iface %p, box %p stub!\n", iface, box); - - return E_NOTIMPL; -} - -static const struct IDirect3DRMFrame2Vtbl d3drm_frame2_vtbl = -{ - d3drm_frame2_QueryInterface, - d3drm_frame2_AddRef, - d3drm_frame2_Release, - d3drm_frame2_Clone, - d3drm_frame2_AddDestroyCallback, - d3drm_frame2_DeleteDestroyCallback, - d3drm_frame2_SetAppData, - d3drm_frame2_GetAppData, - d3drm_frame2_SetName, - d3drm_frame2_GetName, - d3drm_frame2_GetClassName, - d3drm_frame2_AddChild, - d3drm_frame2_AddLight, - d3drm_frame2_AddMoveCallback, - d3drm_frame2_AddTransform, - d3drm_frame2_AddTranslation, - d3drm_frame2_AddScale, - d3drm_frame2_AddRotation, - d3drm_frame2_AddVisual, - d3drm_frame2_GetChildren, - d3drm_frame2_GetColor, - d3drm_frame2_GetLights, - d3drm_frame2_GetMaterialMode, - d3drm_frame2_GetParent, - d3drm_frame2_GetPosition, - d3drm_frame2_GetRotation, - d3drm_frame2_GetScene, - d3drm_frame2_GetSortMode, - d3drm_frame2_GetTexture, - d3drm_frame2_GetTransform, - d3drm_frame2_GetVelocity, - d3drm_frame2_GetOrientation, - d3drm_frame2_GetVisuals, - d3drm_frame2_GetTextureTopology, - d3drm_frame2_InverseTransform, - d3drm_frame2_Load, - d3drm_frame2_LookAt, - d3drm_frame2_Move, - d3drm_frame2_DeleteChild, - d3drm_frame2_DeleteLight, - d3drm_frame2_DeleteMoveCallback, - d3drm_frame2_DeleteVisual, - d3drm_frame2_GetSceneBackground, - d3drm_frame2_GetSceneBackgroundDepth, - d3drm_frame2_GetSceneFogColor, - d3drm_frame2_GetSceneFogEnable, - d3drm_frame2_GetSceneFogMode, - d3drm_frame2_GetSceneFogParams, - d3drm_frame2_SetSceneBackground, - d3drm_frame2_SetSceneBackgroundRGB, - d3drm_frame2_SetSceneBackgroundDepth, - d3drm_frame2_SetSceneBackgroundImage, - d3drm_frame2_SetSceneFogEnable, - d3drm_frame2_SetSceneFogColor, - d3drm_frame2_SetSceneFogMode, - d3drm_frame2_SetSceneFogParams, - d3drm_frame2_SetColor, - d3drm_frame2_SetColorRGB, - d3drm_frame2_GetZbufferMode, - d3drm_frame2_SetMaterialMode, - d3drm_frame2_SetOrientation, - d3drm_frame2_SetPosition, - d3drm_frame2_SetRotation, - d3drm_frame2_SetSortMode, - d3drm_frame2_SetTexture, - d3drm_frame2_SetTextureTopology, - d3drm_frame2_SetVelocity, - d3drm_frame2_SetZbufferMode, - d3drm_frame2_Transform, - d3drm_frame2_AddMoveCallback2, - d3drm_frame2_GetBox, - d3drm_frame2_GetBoxEnable, - d3drm_frame2_GetAxes, - d3drm_frame2_GetMaterial, - d3drm_frame2_GetInheritAxes, - d3drm_frame2_GetHierarchyBox, -}; - static HRESULT WINAPI d3drm_frame3_QueryInterface(IDirect3DRMFrame3 *iface, REFIID riid, void **out) { struct d3drm_frame *frame = impl_from_IDirect3DRMFrame3(iface); @@ -1213,6 +493,15 @@ static HRESULT WINAPI d3drm_frame3_QueryInterface(IDirect3DRMFrame3 *iface, REFI return S_OK; } +static HRESULT WINAPI d3drm_frame2_QueryInterface(IDirect3DRMFrame2 *iface, REFIID riid, void **out) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p, riid %s, out %p.\n", iface, debugstr_guid(riid), out); + + return d3drm_frame3_QueryInterface(&frame->IDirect3DRMFrame3_iface, riid, out); +} + static ULONG WINAPI d3drm_frame3_AddRef(IDirect3DRMFrame3 *iface) { struct d3drm_frame *frame = impl_from_IDirect3DRMFrame3(iface); @@ -1223,6 +512,15 @@ static ULONG WINAPI d3drm_frame3_AddRef(IDirect3DRMFrame3 *iface) return refcount; } +static ULONG WINAPI d3drm_frame2_AddRef(IDirect3DRMFrame2 *iface) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p.\n", iface); + + return d3drm_frame3_AddRef(&frame->IDirect3DRMFrame3_iface); +} + static ULONG WINAPI d3drm_frame3_Release(IDirect3DRMFrame3 *iface) { struct d3drm_frame *frame = impl_from_IDirect3DRMFrame3(iface); @@ -1254,6 +552,15 @@ static ULONG WINAPI d3drm_frame3_Release(IDirect3DRMFrame3 *iface) return refcount; } +static ULONG WINAPI d3drm_frame2_Release(IDirect3DRMFrame2 *iface) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p.\n", iface); + + return d3drm_frame3_Release(&frame->IDirect3DRMFrame3_iface); +} + static HRESULT WINAPI d3drm_frame3_Clone(IDirect3DRMFrame3 *iface, IUnknown *outer, REFIID iid, void **out) { @@ -1262,6 +569,14 @@ static HRESULT WINAPI d3drm_frame3_Clone(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_Clone(IDirect3DRMFrame2 *iface, + IUnknown *outer, REFIID iid, void **out) +{ + FIXME("iface %p, outer %p, iid %s, out %p stub!\n", iface, outer, debugstr_guid(iid), out); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_AddDestroyCallback(IDirect3DRMFrame3 *iface, D3DRMOBJECTCALLBACK cb, void *ctx) { @@ -1270,6 +585,14 @@ static HRESULT WINAPI d3drm_frame3_AddDestroyCallback(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_AddDestroyCallback(IDirect3DRMFrame2 *iface, + D3DRMOBJECTCALLBACK cb, void *ctx) +{ + FIXME("iface %p, cb %p, ctx %p stub!\n", iface, cb, ctx); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_DeleteDestroyCallback(IDirect3DRMFrame3 *iface, D3DRMOBJECTCALLBACK cb, void *ctx) { @@ -1278,6 +601,14 @@ static HRESULT WINAPI d3drm_frame3_DeleteDestroyCallback(IDirect3DRMFrame3 *ifac return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_DeleteDestroyCallback(IDirect3DRMFrame2 *iface, + D3DRMOBJECTCALLBACK cb, void *ctx) +{ + FIXME("iface %p, cb %p, ctx %p stub!\n", iface, cb, ctx); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_SetAppData(IDirect3DRMFrame3 *iface, DWORD data) { FIXME("iface %p, data %#x stub!\n", iface, data); @@ -1285,6 +616,13 @@ static HRESULT WINAPI d3drm_frame3_SetAppData(IDirect3DRMFrame3 *iface, DWORD da return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetAppData(IDirect3DRMFrame2 *iface, DWORD data) +{ + FIXME("iface %p, data %#x stub!\n", iface, data); + + return E_NOTIMPL; +} + static DWORD WINAPI d3drm_frame3_GetAppData(IDirect3DRMFrame3 *iface) { FIXME("iface %p stub!\n", iface); @@ -1292,6 +630,13 @@ static DWORD WINAPI d3drm_frame3_GetAppData(IDirect3DRMFrame3 *iface) return 0; } +static DWORD WINAPI d3drm_frame2_GetAppData(IDirect3DRMFrame2 *iface) +{ + FIXME("iface %p stub!\n", iface); + + return 0; +} + static HRESULT WINAPI d3drm_frame3_SetName(IDirect3DRMFrame3 *iface, const char *name) { FIXME("iface %p, name %s stub!\n", iface, debugstr_a(name)); @@ -1299,6 +644,13 @@ static HRESULT WINAPI d3drm_frame3_SetName(IDirect3DRMFrame3 *iface, const char return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetName(IDirect3DRMFrame2 *iface, const char *name) +{ + FIXME("iface %p, name %s stub!\n", iface, debugstr_a(name)); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_GetName(IDirect3DRMFrame3 *iface, DWORD *size, char *name) { FIXME("iface %p, size %p, name %p stub!\n", iface, size, name); @@ -1306,6 +658,13 @@ static HRESULT WINAPI d3drm_frame3_GetName(IDirect3DRMFrame3 *iface, DWORD *size return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_GetName(IDirect3DRMFrame2 *iface, DWORD *size, char *name) +{ + FIXME("iface %p, size %p, name %p stub!\n", iface, size, name); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_GetClassName(IDirect3DRMFrame3 *iface, DWORD *size, char *name) { TRACE("iface %p, size %p, name %p.\n", iface, size, name); @@ -1319,6 +678,15 @@ static HRESULT WINAPI d3drm_frame3_GetClassName(IDirect3DRMFrame3 *iface, DWORD return D3DRM_OK; } +static HRESULT WINAPI d3drm_frame2_GetClassName(IDirect3DRMFrame2 *iface, DWORD *size, char *name) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p, size %p, name %p.\n", iface, size, name); + + return d3drm_frame3_GetClassName(&frame->IDirect3DRMFrame3_iface, size, name); +} + static HRESULT WINAPI d3drm_frame3_AddChild(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *child) { struct d3drm_frame *This = impl_from_IDirect3DRMFrame3(iface); @@ -1375,6 +743,24 @@ static HRESULT WINAPI d3drm_frame3_AddChild(IDirect3DRMFrame3 *iface, IDirect3DR return D3DRM_OK; } +static HRESULT WINAPI d3drm_frame2_AddChild(IDirect3DRMFrame2 *iface, IDirect3DRMFrame *child) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + IDirect3DRMFrame3 *child3; + HRESULT hr; + + TRACE("iface %p, child %p.\n", iface, child); + + if (!child) + return D3DRMERR_BADOBJECT; + hr = IDirect3DRMFrame_QueryInterface(child, &IID_IDirect3DRMFrame3, (void **)&child3); + if (hr != S_OK) + return D3DRMERR_BADOBJECT; + IDirect3DRMFrame_Release(child); + + return d3drm_frame3_AddChild(&frame->IDirect3DRMFrame3_iface, child3); +} + static HRESULT WINAPI d3drm_frame3_AddLight(IDirect3DRMFrame3 *iface, IDirect3DRMLight *light) { struct d3drm_frame *This = impl_from_IDirect3DRMFrame3(iface); @@ -1419,6 +805,15 @@ static HRESULT WINAPI d3drm_frame3_AddLight(IDirect3DRMFrame3 *iface, IDirect3DR return D3DRM_OK; } +static HRESULT WINAPI d3drm_frame2_AddLight(IDirect3DRMFrame2 *iface, IDirect3DRMLight *light) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p, light %p.\n", iface, light); + + return d3drm_frame3_AddLight(&frame->IDirect3DRMFrame3_iface, light); +} + static HRESULT WINAPI d3drm_frame3_AddMoveCallback(IDirect3DRMFrame3 *iface, D3DRMFRAME3MOVECALLBACK cb, void *ctx, DWORD flags) { @@ -1427,6 +822,14 @@ static HRESULT WINAPI d3drm_frame3_AddMoveCallback(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_AddMoveCallback(IDirect3DRMFrame2 *iface, + D3DRMFRAMEMOVECALLBACK cb, void *ctx) +{ + FIXME("iface %p, cb %p, ctx %p stub!\n", iface, cb, ctx); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_AddTransform(IDirect3DRMFrame3 *iface, D3DRMCOMBINETYPE type, D3DRMMATRIX4D matrix) { @@ -1456,6 +859,16 @@ static HRESULT WINAPI d3drm_frame3_AddTransform(IDirect3DRMFrame3 *iface, return S_OK; } +static HRESULT WINAPI d3drm_frame2_AddTransform(IDirect3DRMFrame2 *iface, + D3DRMCOMBINETYPE type, D3DRMMATRIX4D matrix) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p, type %#x, matrix %p.\n", iface, type, matrix); + + return d3drm_frame3_AddTransform(&frame->IDirect3DRMFrame3_iface, type, matrix); +} + static HRESULT WINAPI d3drm_frame3_AddTranslation(IDirect3DRMFrame3 *iface, D3DRMCOMBINETYPE type, D3DVALUE x, D3DVALUE y, D3DVALUE z) { @@ -1464,6 +877,14 @@ static HRESULT WINAPI d3drm_frame3_AddTranslation(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_AddTranslation(IDirect3DRMFrame2 *iface, + D3DRMCOMBINETYPE type, D3DVALUE x, D3DVALUE y, D3DVALUE z) +{ + FIXME("iface %p, type %#x, x %.8e, y %.8e, z %.8e stub!\n", iface, type, x, y, z); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_AddScale(IDirect3DRMFrame3 *iface, D3DRMCOMBINETYPE type, D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) { @@ -1472,6 +893,14 @@ static HRESULT WINAPI d3drm_frame3_AddScale(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_AddScale(IDirect3DRMFrame2 *iface, + D3DRMCOMBINETYPE type, D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) +{ + FIXME("iface %p, type %#x, sx %.8e, sy %.8e, sz %.8e stub!\n", iface, type, sx, sy, sz); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_AddRotation(IDirect3DRMFrame3 *iface, D3DRMCOMBINETYPE type, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) { @@ -1481,6 +910,14 @@ static HRESULT WINAPI d3drm_frame3_AddRotation(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_AddRotation(IDirect3DRMFrame2 *iface, + D3DRMCOMBINETYPE type, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) +{ + FIXME("iface %p, type %#x, x %.8e, y %.8e, z %.8e, theta %.8e stub!\n", iface, type, x, y, z, theta); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_AddVisual(IDirect3DRMFrame3 *iface, IUnknown *visual) { struct d3drm_frame *This = impl_from_IDirect3DRMFrame3(iface); @@ -1525,6 +962,15 @@ static HRESULT WINAPI d3drm_frame3_AddVisual(IDirect3DRMFrame3 *iface, IUnknown return D3DRM_OK; } +static HRESULT WINAPI d3drm_frame2_AddVisual(IDirect3DRMFrame2 *iface, IDirect3DRMVisual *visual) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p, visual %p.\n", iface, visual); + + return d3drm_frame3_AddVisual(&frame->IDirect3DRMFrame3_iface, (IUnknown *)visual); +} + static HRESULT WINAPI d3drm_frame3_GetChildren(IDirect3DRMFrame3 *iface, IDirect3DRMFrameArray **children) { struct d3drm_frame *frame = impl_from_IDirect3DRMFrame3(iface); @@ -1543,6 +989,15 @@ static HRESULT WINAPI d3drm_frame3_GetChildren(IDirect3DRMFrame3 *iface, IDirect return D3DRM_OK; } +static HRESULT WINAPI d3drm_frame2_GetChildren(IDirect3DRMFrame2 *iface, IDirect3DRMFrameArray **children) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p, children %p.\n", iface, children); + + return d3drm_frame3_GetChildren(&frame->IDirect3DRMFrame3_iface, children); +} + static D3DCOLOR WINAPI d3drm_frame3_GetColor(IDirect3DRMFrame3 *iface) { FIXME("iface %p stub!\n", iface); @@ -1550,6 +1005,13 @@ static D3DCOLOR WINAPI d3drm_frame3_GetColor(IDirect3DRMFrame3 *iface) return 0; } +static D3DCOLOR WINAPI d3drm_frame2_GetColor(IDirect3DRMFrame2 *iface) +{ + FIXME("iface %p stub!\n", iface); + + return 0; +} + static HRESULT WINAPI d3drm_frame3_GetLights(IDirect3DRMFrame3 *iface, IDirect3DRMLightArray **lights) { struct d3drm_frame *frame = impl_from_IDirect3DRMFrame3(iface); @@ -1568,6 +1030,15 @@ static HRESULT WINAPI d3drm_frame3_GetLights(IDirect3DRMFrame3 *iface, IDirect3D return D3DRM_OK; } +static HRESULT WINAPI d3drm_frame2_GetLights(IDirect3DRMFrame2 *iface, IDirect3DRMLightArray **lights) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p, lights %p.\n", iface, lights); + + return d3drm_frame3_GetLights(&frame->IDirect3DRMFrame3_iface, lights); +} + static D3DRMMATERIALMODE WINAPI d3drm_frame3_GetMaterialMode(IDirect3DRMFrame3 *iface) { FIXME("iface %p stub!\n", iface); @@ -1575,6 +1046,13 @@ static D3DRMMATERIALMODE WINAPI d3drm_frame3_GetMaterialMode(IDirect3DRMFrame3 * return D3DRMMATERIAL_FROMPARENT; } +static D3DRMMATERIALMODE WINAPI d3drm_frame2_GetMaterialMode(IDirect3DRMFrame2 *iface) +{ + FIXME("iface %p stub!\n", iface); + + return D3DRMMATERIAL_FROMPARENT; +} + static HRESULT WINAPI d3drm_frame3_GetParent(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 **parent) { struct d3drm_frame *frame = impl_from_IDirect3DRMFrame3(iface); @@ -1597,6 +1075,28 @@ static HRESULT WINAPI d3drm_frame3_GetParent(IDirect3DRMFrame3 *iface, IDirect3D return D3DRM_OK; } +static HRESULT WINAPI d3drm_frame2_GetParent(IDirect3DRMFrame2 *iface, IDirect3DRMFrame **parent) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p, parent %p.\n", iface, parent); + + if (!parent) + return D3DRMERR_BADVALUE; + + if (frame->parent) + { + *parent = (IDirect3DRMFrame *)&frame->parent->IDirect3DRMFrame2_iface; + IDirect3DRMFrame_AddRef(*parent); + } + else + { + *parent = NULL; + } + + return D3DRM_OK; +} + static HRESULT WINAPI d3drm_frame3_GetPosition(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *reference, D3DVECTOR *position) { @@ -1605,6 +1105,14 @@ static HRESULT WINAPI d3drm_frame3_GetPosition(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_GetPosition(IDirect3DRMFrame2 *iface, + IDirect3DRMFrame *reference, D3DVECTOR *position) +{ + FIXME("iface %p, reference %p, position %p stub!\n", iface, reference, position); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_GetRotation(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *reference, D3DVECTOR *axis, D3DVALUE *theta) { @@ -1613,6 +1121,14 @@ static HRESULT WINAPI d3drm_frame3_GetRotation(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_GetRotation(IDirect3DRMFrame2 *iface, + IDirect3DRMFrame *reference, D3DVECTOR *axis, D3DVALUE *theta) +{ + FIXME("iface %p, reference %p, axis %p, theta %p stub!\n", iface, reference, axis, theta); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_GetScene(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 **scene) { FIXME("iface %p, scene %p stub!\n", iface, scene); @@ -1620,6 +1136,13 @@ static HRESULT WINAPI d3drm_frame3_GetScene(IDirect3DRMFrame3 *iface, IDirect3DR return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_GetScene(IDirect3DRMFrame2 *iface, IDirect3DRMFrame **scene) +{ + FIXME("iface %p, scene %p stub!\n", iface, scene); + + return E_NOTIMPL; +} + static D3DRMSORTMODE WINAPI d3drm_frame3_GetSortMode(IDirect3DRMFrame3 *iface) { FIXME("iface %p stub!\n", iface); @@ -1627,6 +1150,13 @@ static D3DRMSORTMODE WINAPI d3drm_frame3_GetSortMode(IDirect3DRMFrame3 *iface) return D3DRMSORT_FROMPARENT; } +static D3DRMSORTMODE WINAPI d3drm_frame2_GetSortMode(IDirect3DRMFrame2 *iface) +{ + FIXME("iface %p stub!\n", iface); + + return D3DRMSORT_FROMPARENT; +} + static HRESULT WINAPI d3drm_frame3_GetTexture(IDirect3DRMFrame3 *iface, IDirect3DRMTexture3 **texture) { FIXME("iface %p, texture %p stub!\n", iface, texture); @@ -1634,6 +1164,13 @@ static HRESULT WINAPI d3drm_frame3_GetTexture(IDirect3DRMFrame3 *iface, IDirect3 return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_GetTexture(IDirect3DRMFrame2 *iface, IDirect3DRMTexture **texture) +{ + FIXME("iface %p, texture %p stub!\n", iface, texture); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_GetTransform(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *reference, D3DRMMATRIX4D matrix) { @@ -1649,6 +1186,17 @@ static HRESULT WINAPI d3drm_frame3_GetTransform(IDirect3DRMFrame3 *iface, return D3DRM_OK; } +static HRESULT WINAPI d3drm_frame2_GetTransform(IDirect3DRMFrame2 *iface, D3DRMMATRIX4D matrix) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p, matrix %p.\n", iface, matrix); + + memcpy(matrix, frame->transform, sizeof(D3DRMMATRIX4D)); + + return D3DRM_OK; +} + static HRESULT WINAPI d3drm_frame3_GetVelocity(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *reference, D3DVECTOR *velocity, BOOL with_rotation) { @@ -1658,6 +1206,15 @@ static HRESULT WINAPI d3drm_frame3_GetVelocity(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_GetVelocity(IDirect3DRMFrame2 *iface, + IDirect3DRMFrame *reference, D3DVECTOR *velocity, BOOL with_rotation) +{ + FIXME("iface %p, reference %p, velocity %p, with_rotation %#x stub!\n", + iface, reference, velocity, with_rotation); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_GetOrientation(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *reference, D3DVECTOR *dir, D3DVECTOR *up) { @@ -1666,14 +1223,46 @@ static HRESULT WINAPI d3drm_frame3_GetOrientation(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } -static HRESULT WINAPI d3drm_frame3_GetVisuals(IDirect3DRMFrame3 *iface, - DWORD *count, IUnknown **visuals) +static HRESULT WINAPI d3drm_frame2_GetOrientation(IDirect3DRMFrame2 *iface, + IDirect3DRMFrame *reference, D3DVECTOR *dir, D3DVECTOR *up) +{ + FIXME("iface %p, reference %p, dir %p, up %p stub!\n", iface, reference, dir, up); + + return E_NOTIMPL; +} + +static HRESULT WINAPI d3drm_frame3_GetVisuals(IDirect3DRMFrame3 *iface, DWORD *count, IUnknown **visuals) { FIXME("iface %p, count %p, visuals %p stub!\n", iface, count, visuals); return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_GetVisuals(IDirect3DRMFrame2 *iface, IDirect3DRMVisualArray **visuals) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + struct d3drm_visual_array *array; + + TRACE("iface %p, visuals %p.\n", iface, visuals); + + if (!visuals) + return D3DRMERR_BADVALUE; + + if (!(array = d3drm_visual_array_create(frame->nb_visuals, frame->visuals))) + return E_OUTOFMEMORY; + + *visuals = &array->IDirect3DRMVisualArray_iface; + + return D3DRM_OK; +} + +static HRESULT WINAPI d3drm_frame2_GetTextureTopology(IDirect3DRMFrame2 *iface, BOOL *wrap_u, BOOL *wrap_v) +{ + FIXME("iface %p, wrap_u %p, wrap_v %p stub!\n", iface, wrap_u, wrap_v); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_InverseTransform(IDirect3DRMFrame3 *iface, D3DVECTOR *d, D3DVECTOR *s) { FIXME("iface %p, d %p, s %p stub!\n", iface, d, s); @@ -1681,6 +1270,13 @@ static HRESULT WINAPI d3drm_frame3_InverseTransform(IDirect3DRMFrame3 *iface, D3 return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_InverseTransform(IDirect3DRMFrame2 *iface, D3DVECTOR *d, D3DVECTOR *s) +{ + FIXME("iface %p, d %p, s %p stub!\n", iface, d, s); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_Load(IDirect3DRMFrame3 *iface, void *filename, void *name, D3DRMLOADOPTIONS flags, D3DRMLOADTEXTURE3CALLBACK cb, void *ctx) { @@ -1690,6 +1286,15 @@ static HRESULT WINAPI d3drm_frame3_Load(IDirect3DRMFrame3 *iface, void *filename return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_Load(IDirect3DRMFrame2 *iface, void *filename, + void *name, D3DRMLOADOPTIONS flags, D3DRMLOADTEXTURECALLBACK cb, void *ctx) +{ + FIXME("iface %p, filename %p, name %p, flags %#x, cb %p, ctx %p stub!\n", + iface, filename, name, flags, cb, ctx); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_LookAt(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *target, IDirect3DRMFrame3 *reference, D3DRMFRAMECONSTRAINT constraint) { @@ -1698,6 +1303,14 @@ static HRESULT WINAPI d3drm_frame3_LookAt(IDirect3DRMFrame3 *iface, IDirect3DRMF return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_LookAt(IDirect3DRMFrame2 *iface, IDirect3DRMFrame *target, + IDirect3DRMFrame *reference, D3DRMFRAMECONSTRAINT constraint) +{ + FIXME("iface %p, target %p, reference %p, constraint %#x stub!\n", iface, target, reference, constraint); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_Move(IDirect3DRMFrame3 *iface, D3DVALUE delta) { FIXME("iface %p, delta %.8e stub!\n", iface, delta); @@ -1705,6 +1318,13 @@ static HRESULT WINAPI d3drm_frame3_Move(IDirect3DRMFrame3 *iface, D3DVALUE delta return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_Move(IDirect3DRMFrame2 *iface, D3DVALUE delta) +{ + FIXME("iface %p, delta %.8e stub!\n", iface, delta); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_DeleteChild(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *child) { struct d3drm_frame *frame = impl_from_IDirect3DRMFrame3(iface); @@ -1734,6 +1354,23 @@ static HRESULT WINAPI d3drm_frame3_DeleteChild(IDirect3DRMFrame3 *iface, IDirect return D3DRM_OK; } +static HRESULT WINAPI d3drm_frame2_DeleteChild(IDirect3DRMFrame2 *iface, IDirect3DRMFrame *child) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + IDirect3DRMFrame3 *child3; + HRESULT hr; + + TRACE("iface %p, child %p.\n", iface, child); + + if (!child) + return D3DRMERR_BADOBJECT; + if (FAILED(hr = IDirect3DRMFrame_QueryInterface(child, &IID_IDirect3DRMFrame3, (void **)&child3))) + return D3DRMERR_BADOBJECT; + IDirect3DRMFrame_Release(child); + + return d3drm_frame3_DeleteChild(&frame->IDirect3DRMFrame3_iface, child3); +} + static HRESULT WINAPI d3drm_frame3_DeleteLight(IDirect3DRMFrame3 *iface, IDirect3DRMLight *light) { struct d3drm_frame *frame = impl_from_IDirect3DRMFrame3(iface); @@ -1761,6 +1398,15 @@ static HRESULT WINAPI d3drm_frame3_DeleteLight(IDirect3DRMFrame3 *iface, IDirect return D3DRM_OK; } +static HRESULT WINAPI d3drm_frame2_DeleteLight(IDirect3DRMFrame2 *iface, IDirect3DRMLight *light) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p, light %p.\n", iface, light); + + return d3drm_frame3_DeleteLight(&frame->IDirect3DRMFrame3_iface, light); +} + static HRESULT WINAPI d3drm_frame3_DeleteMoveCallback(IDirect3DRMFrame3 *iface, D3DRMFRAME3MOVECALLBACK cb, void *ctx) { @@ -1769,6 +1415,14 @@ static HRESULT WINAPI d3drm_frame3_DeleteMoveCallback(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_DeleteMoveCallback(IDirect3DRMFrame2 *iface, + D3DRMFRAMEMOVECALLBACK cb, void *ctx) +{ + FIXME("iface %p, cb %p, ctx %p stub!\n", iface, cb, ctx); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_DeleteVisual(IDirect3DRMFrame3 *iface, IUnknown *visual) { struct d3drm_frame *frame = impl_from_IDirect3DRMFrame3(iface); @@ -1796,6 +1450,15 @@ static HRESULT WINAPI d3drm_frame3_DeleteVisual(IDirect3DRMFrame3 *iface, IUnkno return D3DRM_OK; } +static HRESULT WINAPI d3drm_frame2_DeleteVisual(IDirect3DRMFrame2 *iface, IDirect3DRMVisual *visual) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p, visual %p.\n", iface, visual); + + return d3drm_frame3_DeleteVisual(&frame->IDirect3DRMFrame3_iface, (IUnknown *)visual); +} + static D3DCOLOR WINAPI d3drm_frame3_GetSceneBackground(IDirect3DRMFrame3 *iface) { struct d3drm_frame *frame = impl_from_IDirect3DRMFrame3(iface); @@ -1805,6 +1468,15 @@ static D3DCOLOR WINAPI d3drm_frame3_GetSceneBackground(IDirect3DRMFrame3 *iface) return frame->scenebackground; } +static D3DCOLOR WINAPI d3drm_frame2_GetSceneBackground(IDirect3DRMFrame2 *iface) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p.\n", iface); + + return d3drm_frame3_GetSceneBackground(&frame->IDirect3DRMFrame3_iface); +} + static HRESULT WINAPI d3drm_frame3_GetSceneBackgroundDepth(IDirect3DRMFrame3 *iface, IDirectDrawSurface **surface) { @@ -1813,6 +1485,14 @@ static HRESULT WINAPI d3drm_frame3_GetSceneBackgroundDepth(IDirect3DRMFrame3 *if return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_GetSceneBackgroundDepth(IDirect3DRMFrame2 *iface, + IDirectDrawSurface **surface) +{ + FIXME("iface %p, surface %p stub!\n", iface, surface); + + return E_NOTIMPL; +} + static D3DCOLOR WINAPI d3drm_frame3_GetSceneFogColor(IDirect3DRMFrame3 *iface) { FIXME("iface %p stub!\n", iface); @@ -1820,6 +1500,13 @@ static D3DCOLOR WINAPI d3drm_frame3_GetSceneFogColor(IDirect3DRMFrame3 *iface) return 0; } +static D3DCOLOR WINAPI d3drm_frame2_GetSceneFogColor(IDirect3DRMFrame2 *iface) +{ + FIXME("iface %p stub!\n", iface); + + return 0; +} + static BOOL WINAPI d3drm_frame3_GetSceneFogEnable(IDirect3DRMFrame3 *iface) { FIXME("iface %p stub!\n", iface); @@ -1827,6 +1514,13 @@ static BOOL WINAPI d3drm_frame3_GetSceneFogEnable(IDirect3DRMFrame3 *iface) return FALSE; } +static BOOL WINAPI d3drm_frame2_GetSceneFogEnable(IDirect3DRMFrame2 *iface) +{ + FIXME("iface %p stub!\n", iface); + + return FALSE; +} + static D3DRMFOGMODE WINAPI d3drm_frame3_GetSceneFogMode(IDirect3DRMFrame3 *iface) { FIXME("iface %p stub!\n", iface); @@ -1834,6 +1528,13 @@ static D3DRMFOGMODE WINAPI d3drm_frame3_GetSceneFogMode(IDirect3DRMFrame3 *iface return D3DRMFOG_LINEAR; } +static D3DRMFOGMODE WINAPI d3drm_frame2_GetSceneFogMode(IDirect3DRMFrame2 *iface) +{ + FIXME("iface %p stub!\n", iface); + + return D3DRMFOG_LINEAR; +} + static HRESULT WINAPI d3drm_frame3_GetSceneFogParams(IDirect3DRMFrame3 *iface, D3DVALUE *start, D3DVALUE *end, D3DVALUE *density) { @@ -1842,6 +1543,14 @@ static HRESULT WINAPI d3drm_frame3_GetSceneFogParams(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_GetSceneFogParams(IDirect3DRMFrame2 *iface, + D3DVALUE *start, D3DVALUE *end, D3DVALUE *density) +{ + FIXME("iface %p, start %p, end %p, density %p stub!\n", iface, start, end, density); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_SetSceneBackground(IDirect3DRMFrame3 *iface, D3DCOLOR color) { struct d3drm_frame *frame = impl_from_IDirect3DRMFrame3(iface); @@ -1853,6 +1562,15 @@ static HRESULT WINAPI d3drm_frame3_SetSceneBackground(IDirect3DRMFrame3 *iface, return D3DRM_OK; } +static HRESULT WINAPI d3drm_frame2_SetSceneBackground(IDirect3DRMFrame2 *iface, D3DCOLOR color) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p, color 0x%08x.\n", iface, color); + + return d3drm_frame3_SetSceneBackground(&frame->IDirect3DRMFrame3_iface, color); +} + static HRESULT WINAPI d3drm_frame3_SetSceneBackgroundRGB(IDirect3DRMFrame3 *iface, D3DVALUE red, D3DVALUE green, D3DVALUE blue) { @@ -1866,6 +1584,16 @@ static HRESULT WINAPI d3drm_frame3_SetSceneBackgroundRGB(IDirect3DRMFrame3 *ifac return D3DRM_OK; } +static HRESULT WINAPI d3drm_frame2_SetSceneBackgroundRGB(IDirect3DRMFrame2 *iface, + D3DVALUE red, D3DVALUE green, D3DVALUE blue) +{ + struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface); + + TRACE("iface %p, red %.8e, green %.8e, blue %.8e.\n", iface, red, green, blue); + + return d3drm_frame3_SetSceneBackgroundRGB(&frame->IDirect3DRMFrame3_iface, red, green, blue); +} + static HRESULT WINAPI d3drm_frame3_SetSceneBackgroundDepth(IDirect3DRMFrame3 *iface, IDirectDrawSurface *surface) { @@ -1874,6 +1602,14 @@ static HRESULT WINAPI d3drm_frame3_SetSceneBackgroundDepth(IDirect3DRMFrame3 *if return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetSceneBackgroundDepth(IDirect3DRMFrame2 *iface, + IDirectDrawSurface *surface) +{ + FIXME("iface %p, surface %p stub!\n", iface, surface); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_SetSceneBackgroundImage(IDirect3DRMFrame3 *iface, IDirect3DRMTexture3 *texture) { @@ -1882,6 +1618,14 @@ static HRESULT WINAPI d3drm_frame3_SetSceneBackgroundImage(IDirect3DRMFrame3 *if return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetSceneBackgroundImage(IDirect3DRMFrame2 *iface, + IDirect3DRMTexture *texture) +{ + FIXME("iface %p, texture %p stub!\n", iface, texture); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_SetSceneFogEnable(IDirect3DRMFrame3 *iface, BOOL enable) { FIXME("iface %p, enable %#x stub!\n", iface, enable); @@ -1889,6 +1633,13 @@ static HRESULT WINAPI d3drm_frame3_SetSceneFogEnable(IDirect3DRMFrame3 *iface, B return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetSceneFogEnable(IDirect3DRMFrame2 *iface, BOOL enable) +{ + FIXME("iface %p, enable %#x stub!\n", iface, enable); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_SetSceneFogColor(IDirect3DRMFrame3 *iface, D3DCOLOR color) { FIXME("iface %p, color 0x%08x stub!\n", iface, color); @@ -1896,6 +1647,13 @@ static HRESULT WINAPI d3drm_frame3_SetSceneFogColor(IDirect3DRMFrame3 *iface, D3 return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetSceneFogColor(IDirect3DRMFrame2 *iface, D3DCOLOR color) +{ + FIXME("iface %p, color 0x%08x stub!\n", iface, color); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_SetSceneFogMode(IDirect3DRMFrame3 *iface, D3DRMFOGMODE mode) { FIXME("iface %p, mode %#x stub!\n", iface, mode); @@ -1903,6 +1661,13 @@ static HRESULT WINAPI d3drm_frame3_SetSceneFogMode(IDirect3DRMFrame3 *iface, D3D return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetSceneFogMode(IDirect3DRMFrame2 *iface, D3DRMFOGMODE mode) +{ + FIXME("iface %p, mode %#x stub!\n", iface, mode); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_SetSceneFogParams(IDirect3DRMFrame3 *iface, D3DVALUE start, D3DVALUE end, D3DVALUE density) { @@ -1911,6 +1676,14 @@ static HRESULT WINAPI d3drm_frame3_SetSceneFogParams(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetSceneFogParams(IDirect3DRMFrame2 *iface, + D3DVALUE start, D3DVALUE end, D3DVALUE density) +{ + FIXME("iface %p, start %.8e, end %.8e, density %.8e stub!\n", iface, start, end, density); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_SetColor(IDirect3DRMFrame3 *iface, D3DCOLOR color) { FIXME("iface %p, color 0x%08x stub!\n", iface, color); @@ -1918,6 +1691,13 @@ static HRESULT WINAPI d3drm_frame3_SetColor(IDirect3DRMFrame3 *iface, D3DCOLOR c return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetColor(IDirect3DRMFrame2 *iface, D3DCOLOR color) +{ + FIXME("iface %p, color 0x%08x stub!\n", iface, color); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_SetColorRGB(IDirect3DRMFrame3 *iface, D3DVALUE red, D3DVALUE green, D3DVALUE blue) { @@ -1926,6 +1706,14 @@ static HRESULT WINAPI d3drm_frame3_SetColorRGB(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetColorRGB(IDirect3DRMFrame2 *iface, + D3DVALUE red, D3DVALUE green, D3DVALUE blue) +{ + FIXME("iface %p, red %.8e, green %.8e, blue %.8e stub!\n", iface, red, green, blue); + + return E_NOTIMPL; +} + static D3DRMZBUFFERMODE WINAPI d3drm_frame3_GetZbufferMode(IDirect3DRMFrame3 *iface) { FIXME("iface %p stub!\n", iface); @@ -1933,6 +1721,13 @@ static D3DRMZBUFFERMODE WINAPI d3drm_frame3_GetZbufferMode(IDirect3DRMFrame3 *if return D3DRMZBUFFER_FROMPARENT; } +static D3DRMZBUFFERMODE WINAPI d3drm_frame2_GetZbufferMode(IDirect3DRMFrame2 *iface) +{ + FIXME("iface %p stub!\n", iface); + + return D3DRMZBUFFER_FROMPARENT; +} + static HRESULT WINAPI d3drm_frame3_SetMaterialMode(IDirect3DRMFrame3 *iface, D3DRMMATERIALMODE mode) { FIXME("iface %p, mode %#x stub!\n", iface, mode); @@ -1940,6 +1735,13 @@ static HRESULT WINAPI d3drm_frame3_SetMaterialMode(IDirect3DRMFrame3 *iface, D3D return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetMaterialMode(IDirect3DRMFrame2 *iface, D3DRMMATERIALMODE mode) +{ + FIXME("iface %p, mode %#x stub!\n", iface, mode); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_SetOrientation(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *reference, D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz) { @@ -1949,6 +1751,15 @@ static HRESULT WINAPI d3drm_frame3_SetOrientation(IDirect3DRMFrame3 *iface, IDir return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetOrientation(IDirect3DRMFrame2 *iface, IDirect3DRMFrame *reference, + D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE 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 d3drm_frame3_SetPosition(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z) { @@ -1957,6 +1768,14 @@ static HRESULT WINAPI d3drm_frame3_SetPosition(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetPosition(IDirect3DRMFrame2 *iface, + IDirect3DRMFrame *reference, D3DVALUE x, D3DVALUE y, D3DVALUE 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 d3drm_frame3_SetRotation(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) { @@ -1966,6 +1785,15 @@ static HRESULT WINAPI d3drm_frame3_SetRotation(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetRotation(IDirect3DRMFrame2 *iface, + IDirect3DRMFrame *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE 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; +} + static HRESULT WINAPI d3drm_frame3_SetSortMode(IDirect3DRMFrame3 *iface, D3DRMSORTMODE mode) { FIXME("iface %p, mode %#x stub!\n", iface, mode); @@ -1973,6 +1801,13 @@ static HRESULT WINAPI d3drm_frame3_SetSortMode(IDirect3DRMFrame3 *iface, D3DRMSO return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetSortMode(IDirect3DRMFrame2 *iface, D3DRMSORTMODE mode) +{ + FIXME("iface %p, mode %#x stub!\n", iface, mode); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_SetTexture(IDirect3DRMFrame3 *iface, IDirect3DRMTexture3 *texture) { FIXME("iface %p, texture %p stub!\n", iface, texture); @@ -1980,6 +1815,20 @@ static HRESULT WINAPI d3drm_frame3_SetTexture(IDirect3DRMFrame3 *iface, IDirect3 return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetTexture(IDirect3DRMFrame2 *iface, IDirect3DRMTexture *texture) +{ + FIXME("iface %p, texture %p stub!\n", iface, texture); + + return E_NOTIMPL; +} + +static HRESULT WINAPI d3drm_frame2_SetTextureTopology(IDirect3DRMFrame2 *iface, BOOL wrap_u, BOOL wrap_v) +{ + FIXME("iface %p, wrap_u %#x, wrap_v %#x stub!\n", iface, wrap_u, wrap_v); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_SetVelocity(IDirect3DRMFrame3 *iface, IDirect3DRMFrame3 *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, BOOL with_rotation) { @@ -1989,6 +1838,15 @@ static HRESULT WINAPI d3drm_frame3_SetVelocity(IDirect3DRMFrame3 *iface, return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetVelocity(IDirect3DRMFrame2 *iface, + IDirect3DRMFrame *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, BOOL with_rotation) +{ + FIXME("iface %p, reference %p, x %.8e, y %.8e, z %.8e, with_rotation %#x stub!\n", + iface, reference, x, y, z, with_rotation); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_SetZbufferMode(IDirect3DRMFrame3 *iface, D3DRMZBUFFERMODE mode) { FIXME("iface %p, mode %#x stub!\n", iface, mode); @@ -1996,6 +1854,13 @@ static HRESULT WINAPI d3drm_frame3_SetZbufferMode(IDirect3DRMFrame3 *iface, D3DR return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_SetZbufferMode(IDirect3DRMFrame2 *iface, D3DRMZBUFFERMODE mode) +{ + FIXME("iface %p, mode %#x stub!\n", iface, mode); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_Transform(IDirect3DRMFrame3 *iface, D3DVECTOR *d, D3DVECTOR *s) { FIXME("iface %p, d %p, s %p stub!\n", iface, d, s); @@ -2003,6 +1868,21 @@ static HRESULT WINAPI d3drm_frame3_Transform(IDirect3DRMFrame3 *iface, D3DVECTOR return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_Transform(IDirect3DRMFrame2 *iface, D3DVECTOR *d, D3DVECTOR *s) +{ + FIXME("iface %p, d %p, s %p stub!\n", iface, d, s); + + return E_NOTIMPL; +} + +static HRESULT WINAPI d3drm_frame2_AddMoveCallback2(IDirect3DRMFrame2 *iface, + D3DRMFRAMEMOVECALLBACK cb, void *ctx, DWORD flags) +{ + FIXME("iface %p, cb %p, ctx %p, flags %#x stub!\n", iface, cb, ctx, flags); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_GetBox(IDirect3DRMFrame3 *iface, D3DRMBOX *box) { FIXME("iface %p, box %p stub!\n", iface, box); @@ -2010,6 +1890,13 @@ static HRESULT WINAPI d3drm_frame3_GetBox(IDirect3DRMFrame3 *iface, D3DRMBOX *bo return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_GetBox(IDirect3DRMFrame2 *iface, D3DRMBOX *box) +{ + FIXME("iface %p, box %p stub!\n", iface, box); + + return E_NOTIMPL; +} + static BOOL WINAPI d3drm_frame3_GetBoxEnable(IDirect3DRMFrame3 *iface) { FIXME("iface %p stub!\n", iface); @@ -2017,6 +1904,13 @@ static BOOL WINAPI d3drm_frame3_GetBoxEnable(IDirect3DRMFrame3 *iface) return FALSE; } +static BOOL WINAPI d3drm_frame2_GetBoxEnable(IDirect3DRMFrame2 *iface) +{ + FIXME("iface %p stub!\n", iface); + + return FALSE; +} + static HRESULT WINAPI d3drm_frame3_GetAxes(IDirect3DRMFrame3 *iface, D3DVECTOR *dir, D3DVECTOR *up) { FIXME("iface %p, dir %p, up %p stub!\n", iface, dir, up); @@ -2024,6 +1918,13 @@ static HRESULT WINAPI d3drm_frame3_GetAxes(IDirect3DRMFrame3 *iface, D3DVECTOR * return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_GetAxes(IDirect3DRMFrame2 *iface, D3DVECTOR *dir, D3DVECTOR *up) +{ + FIXME("iface %p, dir %p, up %p stub!\n", iface, dir, up); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_GetMaterial(IDirect3DRMFrame3 *iface, IDirect3DRMMaterial2 **material) { FIXME("iface %p, material %p stub!\n", iface, material); @@ -2031,6 +1932,13 @@ static HRESULT WINAPI d3drm_frame3_GetMaterial(IDirect3DRMFrame3 *iface, IDirect return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_GetMaterial(IDirect3DRMFrame2 *iface, IDirect3DRMMaterial **material) +{ + FIXME("iface %p, material %p stub!\n", iface, material); + + return E_NOTIMPL; +} + static BOOL WINAPI d3drm_frame3_GetInheritAxes(IDirect3DRMFrame3 *iface) { FIXME("iface %p stub!\n", iface); @@ -2038,6 +1946,13 @@ static BOOL WINAPI d3drm_frame3_GetInheritAxes(IDirect3DRMFrame3 *iface) return FALSE; } +static BOOL WINAPI d3drm_frame2_GetInheritAxes(IDirect3DRMFrame2 *iface) +{ + FIXME("iface %p stub!\n", iface); + + return FALSE; +} + static HRESULT WINAPI d3drm_frame3_GetHierarchyBox(IDirect3DRMFrame3 *iface, D3DRMBOX *box) { FIXME("iface %p, box %p stub!\n", iface, box); @@ -2045,6 +1960,13 @@ static HRESULT WINAPI d3drm_frame3_GetHierarchyBox(IDirect3DRMFrame3 *iface, D3D return E_NOTIMPL; } +static HRESULT WINAPI d3drm_frame2_GetHierarchyBox(IDirect3DRMFrame2 *iface, D3DRMBOX *box) +{ + FIXME("iface %p, box %p stub!\n", iface, box); + + return E_NOTIMPL; +} + static HRESULT WINAPI d3drm_frame3_SetBox(IDirect3DRMFrame3 *iface, D3DRMBOX *box) { FIXME("iface %p, box %p stub!\n", iface, box); @@ -2261,6 +2183,86 @@ static const struct IDirect3DRMFrame3Vtbl d3drm_frame3_vtbl = d3drm_frame3_GetMaterialOverride, }; +static const struct IDirect3DRMFrame2Vtbl d3drm_frame2_vtbl = +{ + d3drm_frame2_QueryInterface, + d3drm_frame2_AddRef, + d3drm_frame2_Release, + d3drm_frame2_Clone, + d3drm_frame2_AddDestroyCallback, + d3drm_frame2_DeleteDestroyCallback, + d3drm_frame2_SetAppData, + d3drm_frame2_GetAppData, + d3drm_frame2_SetName, + d3drm_frame2_GetName, + d3drm_frame2_GetClassName, + d3drm_frame2_AddChild, + d3drm_frame2_AddLight, + d3drm_frame2_AddMoveCallback, + d3drm_frame2_AddTransform, + d3drm_frame2_AddTranslation, + d3drm_frame2_AddScale, + d3drm_frame2_AddRotation, + d3drm_frame2_AddVisual, + d3drm_frame2_GetChildren, + d3drm_frame2_GetColor, + d3drm_frame2_GetLights, + d3drm_frame2_GetMaterialMode, + d3drm_frame2_GetParent, + d3drm_frame2_GetPosition, + d3drm_frame2_GetRotation, + d3drm_frame2_GetScene, + d3drm_frame2_GetSortMode, + d3drm_frame2_GetTexture, + d3drm_frame2_GetTransform, + d3drm_frame2_GetVelocity, + d3drm_frame2_GetOrientation, + d3drm_frame2_GetVisuals, + d3drm_frame2_GetTextureTopology, + d3drm_frame2_InverseTransform, + d3drm_frame2_Load, + d3drm_frame2_LookAt, + d3drm_frame2_Move, + d3drm_frame2_DeleteChild, + d3drm_frame2_DeleteLight, + d3drm_frame2_DeleteMoveCallback, + d3drm_frame2_DeleteVisual, + d3drm_frame2_GetSceneBackground, + d3drm_frame2_GetSceneBackgroundDepth, + d3drm_frame2_GetSceneFogColor, + d3drm_frame2_GetSceneFogEnable, + d3drm_frame2_GetSceneFogMode, + d3drm_frame2_GetSceneFogParams, + d3drm_frame2_SetSceneBackground, + d3drm_frame2_SetSceneBackgroundRGB, + d3drm_frame2_SetSceneBackgroundDepth, + d3drm_frame2_SetSceneBackgroundImage, + d3drm_frame2_SetSceneFogEnable, + d3drm_frame2_SetSceneFogColor, + d3drm_frame2_SetSceneFogMode, + d3drm_frame2_SetSceneFogParams, + d3drm_frame2_SetColor, + d3drm_frame2_SetColorRGB, + d3drm_frame2_GetZbufferMode, + d3drm_frame2_SetMaterialMode, + d3drm_frame2_SetOrientation, + d3drm_frame2_SetPosition, + d3drm_frame2_SetRotation, + d3drm_frame2_SetSortMode, + d3drm_frame2_SetTexture, + d3drm_frame2_SetTextureTopology, + d3drm_frame2_SetVelocity, + d3drm_frame2_SetZbufferMode, + d3drm_frame2_Transform, + d3drm_frame2_AddMoveCallback2, + d3drm_frame2_GetBox, + d3drm_frame2_GetBoxEnable, + d3drm_frame2_GetAxes, + d3drm_frame2_GetMaterial, + d3drm_frame2_GetInheritAxes, + d3drm_frame2_GetHierarchyBox, +}; + static inline struct d3drm_frame *unsafe_impl_from_IDirect3DRMFrame3(IDirect3DRMFrame3 *iface) { if (!iface)