static HRESULT STDMETHODCALLTYPE dxgi_adapter_GetParent(IWineDXGIAdapter *iface, REFIID riid, void **parent) { struct dxgi_adapter *This = impl_from_IWineDXGIAdapter(iface); TRACE("iface %p, riid %s, parent %p\n", iface, debugstr_guid(riid), parent); return IWineDXGIFactory_QueryInterface(This->parent, riid, parent); }
HRESULT dxgi_factory_create(REFIID riid, void **factory, BOOL extended) { struct dxgi_factory *object; HRESULT hr; if (!(object = heap_alloc_zero(sizeof(*object)))) return E_OUTOFMEMORY; if (FAILED(hr = dxgi_factory_init(object, extended))) { WARN("Failed to initialize factory, hr %#x.\n", hr); heap_free(object); return hr; } TRACE("Created factory %p.\n", object); hr = IWineDXGIFactory_QueryInterface(&object->IWineDXGIFactory_iface, riid, factory); IWineDXGIFactory_Release(&object->IWineDXGIFactory_iface); return hr; }