From: Biswapriyo Nath nathbappai@gmail.com
Required for https://webrtc.googlesource.com/src/+/2aad81259ef832172d65aeaba6401fee857a0f... --- ...dows.graphics.directx.direct3d11.interop.h | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 include/windows.graphics.directx.direct3d11.interop.h
diff --git a/include/windows.graphics.directx.direct3d11.interop.h b/include/windows.graphics.directx.direct3d11.interop.h new file mode 100644 index 00000000000..0864401fa5d --- /dev/null +++ b/include/windows.graphics.directx.direct3d11.interop.h @@ -0,0 +1,45 @@ +/* + * Copyright (C) 2024 Biswapriyo Nath + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#ifndef __windows_graphics_directx_direct3d11_interop_h__ +#define __windows_graphics_directx_direct3d11_interop_h__ + +#include <inspectable.h> +#include <dxgi.h> + +EXTERN_C HRESULT WINAPI CreateDirect3D11DeviceFromDXGIDevice(IDXGIDevice *dxgi_device, IInspectable **graphics_device); +EXTERN_C HRESULT WINAPI CreateDirect3D11SurfaceFromDXGISurface(IDXGISurface* dgxi_surface, IInspectable **graphics_surface); + +#if defined(__cplusplus) + +namespace Windows { + namespace Graphics { + namespace DirectX { + namespace Direct3D11 { + MIDL_INTERFACE("a9b3d012-3df2-4ee3-b8d1-8695f457d3c1") + IDirect3DDxgiInterfaceAccess : public IUnknown + { + virtual HRESULT STDMETHODCALLTYPE GetInterface(REFIID iid, void **p) = 0; + }; + } + } + } +} + +#endif /* __cplusplus */ +#endif /* __windows_graphics_directx_direct3d11_interop_h__ */
I am not sure if this should be added as an IDL file which I am unable to create. Using winrt mode, the header file adds extra ABI namespace which is not required here.
Could you attach an idl that didn't work properly?
This merge request was closed by Biswapriyo Nath.