// ------------------------------------------------------------------------------ // // This code was generated by a tool. // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // // ------------------------------------------------------------------------------ namespace Win32.Graphics.Direct2D; /// /// ID2D1Factory1 [Guid("bb12d362-daee-4b9a-aa1d-14ba401cfa1f")] [NativeTypeName("struct ID2D1Factory1 : ID2D1Factory")] [NativeInheritance("ID2D1Factory")] public unsafe partial struct ID2D1Factory1 : ID2D1Factory1.Interface, INativeGuid { public static ref readonly Guid IID_ID2D1Factory1 { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { ReadOnlySpan data = new byte[] { 0x62, 0xD3, 0x12, 0xBB, 0xEE, 0xDA, 0x9A, 0x4B, 0xAA, 0x1D, 0x14, 0xBA, 0x40, 0x1C, 0xFA, 0x1F }; Debug.Assert(data.Length == Unsafe.SizeOf()); return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); } } #if NET6_0_OR_GREATER static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_ID2D1Factory1)); #else public static Guid* NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_ID2D1Factory1)); #endif public void** lpVtbl; /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(0)] public HResult QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) { return ((delegate* unmanaged[Stdcall])(lpVtbl[0]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), riid, ppvObject); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(1)] [return: NativeTypeName("ULONG")] public uint AddRef() { return ((delegate* unmanaged[Stdcall])(lpVtbl[1]))((ID2D1Factory1*)Unsafe.AsPointer(ref this)); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(2)] [return: NativeTypeName("ULONG")] public uint Release() { return ((delegate* unmanaged[Stdcall])(lpVtbl[2]))((ID2D1Factory1*)Unsafe.AsPointer(ref this)); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(3)] public HResult ReloadSystemMetrics() { return ((delegate* unmanaged[Stdcall])(lpVtbl[3]))((ID2D1Factory1*)Unsafe.AsPointer(ref this)); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(4)] public void GetDesktopDpi(float* dpiX, float* dpiY) { ((delegate* unmanaged[Stdcall])(lpVtbl[4]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), dpiX, dpiY); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(5)] public HResult CreateRectangleGeometry(Common.RectF* rectangle, ID2D1RectangleGeometry** rectangleGeometry) { return ((delegate* unmanaged[Stdcall])(lpVtbl[5]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), rectangle, rectangleGeometry); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(6)] public HResult CreateRoundedRectangleGeometry(RoundedRect* roundedRectangle, ID2D1RoundedRectangleGeometry** roundedRectangleGeometry) { return ((delegate* unmanaged[Stdcall])(lpVtbl[6]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), roundedRectangle, roundedRectangleGeometry); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(7)] public HResult CreateEllipseGeometry(Ellipse* ellipse, ID2D1EllipseGeometry** ellipseGeometry) { return ((delegate* unmanaged[Stdcall])(lpVtbl[7]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), ellipse, ellipseGeometry); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(8)] public HResult CreateGeometryGroup(Common.FillMode fillMode, ID2D1Geometry** geometries, uint geometriesCount, ID2D1GeometryGroup** geometryGroup) { return ((delegate* unmanaged[Stdcall])(lpVtbl[8]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), fillMode, geometries, geometriesCount, geometryGroup); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(9)] public HResult CreateTransformedGeometry(ID2D1Geometry* sourceGeometry, Matrix3x2* transform, ID2D1TransformedGeometry** transformedGeometry) { return ((delegate* unmanaged[Stdcall])(lpVtbl[9]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), sourceGeometry, transform, transformedGeometry); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(10)] public HResult CreatePathGeometry(ID2D1PathGeometry** pathGeometry) { return ((delegate* unmanaged[Stdcall])(lpVtbl[10]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), pathGeometry); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(11)] public HResult CreateStrokeStyle(StrokeStyleProperties* strokeStyleProperties, float* dashes, uint dashesCount, ID2D1StrokeStyle** strokeStyle) { return ((delegate* unmanaged[Stdcall])(lpVtbl[11]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), strokeStyleProperties, dashes, dashesCount, strokeStyle); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(12)] public HResult CreateDrawingStateBlock(DrawingStateDescription* drawingStateDescription, Graphics.DirectWrite.IDWriteRenderingParams* textRenderingParams, ID2D1DrawingStateBlock** drawingStateBlock) { return ((delegate* unmanaged[Stdcall])(lpVtbl[12]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), drawingStateDescription, textRenderingParams, drawingStateBlock); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(13)] public HResult CreateWicBitmapRenderTarget(Graphics.Imaging.IWICBitmap* target, RenderTargetProperties* renderTargetProperties, ID2D1RenderTarget** renderTarget) { return ((delegate* unmanaged[Stdcall])(lpVtbl[13]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), target, renderTargetProperties, renderTarget); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(14)] public HResult CreateHwndRenderTarget(RenderTargetProperties* renderTargetProperties, HwndRenderTargetProperties* hwndRenderTargetProperties, ID2D1HwndRenderTarget** hwndRenderTarget) { return ((delegate* unmanaged[Stdcall])(lpVtbl[14]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), renderTargetProperties, hwndRenderTargetProperties, hwndRenderTarget); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(15)] public HResult CreateDxgiSurfaceRenderTarget(Graphics.Dxgi.IDXGISurface* dxgiSurface, RenderTargetProperties* renderTargetProperties, ID2D1RenderTarget** renderTarget) { return ((delegate* unmanaged[Stdcall])(lpVtbl[15]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), dxgiSurface, renderTargetProperties, renderTarget); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(16)] public HResult CreateDCRenderTarget(RenderTargetProperties* renderTargetProperties, ID2D1DCRenderTarget** dcRenderTarget) { return ((delegate* unmanaged[Stdcall])(lpVtbl[16]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), renderTargetProperties, dcRenderTarget); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(17)] public HResult CreateDevice(Graphics.Dxgi.IDXGIDevice* dxgiDevice, ID2D1Device** d2dDevice) { return ((delegate* unmanaged[Stdcall])(lpVtbl[17]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), dxgiDevice, d2dDevice); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(18)] public HResult CreateStrokeStyle(StrokeStyleProperties1* strokeStyleProperties, float* dashes, uint dashesCount, ID2D1StrokeStyle1** strokeStyle) { return ((delegate* unmanaged[Stdcall])(lpVtbl[18]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), strokeStyleProperties, dashes, dashesCount, strokeStyle); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(19)] public HResult CreatePathGeometry(ID2D1PathGeometry1** pathGeometry) { return ((delegate* unmanaged[Stdcall])(lpVtbl[19]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), pathGeometry); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(20)] public HResult CreateDrawingStateBlock(DrawingStateDescription1* drawingStateDescription, Graphics.DirectWrite.IDWriteRenderingParams* textRenderingParams, ID2D1DrawingStateBlock1** drawingStateBlock) { return ((delegate* unmanaged[Stdcall])(lpVtbl[20]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), drawingStateDescription, textRenderingParams, drawingStateBlock); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(21)] public HResult CreateGdiMetafile(Com.IStream* metafileStream, ID2D1GdiMetafile** metafile) { return ((delegate* unmanaged[Stdcall])(lpVtbl[21]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), metafileStream, metafile); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(22)] public HResult RegisterEffectFromStream(Guid* classId, Com.IStream* propertyXml, PropertyBinding* bindings, uint bindingsCount, delegate* unmanaged[Stdcall] effectFactory) { return ((delegate* unmanaged[Stdcall], int>)(lpVtbl[22]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), classId, propertyXml, bindings, bindingsCount, effectFactory); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(23)] public HResult RegisterEffectFromString(Guid* classId, ushort* propertyXml, PropertyBinding* bindings, uint bindingsCount, delegate* unmanaged[Stdcall] effectFactory) { return ((delegate* unmanaged[Stdcall], int>)(lpVtbl[23]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), classId, propertyXml, bindings, bindingsCount, effectFactory); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(24)] public HResult UnregisterEffect(Guid* classId) { return ((delegate* unmanaged[Stdcall])(lpVtbl[24]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), classId); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(25)] public HResult GetRegisteredEffects(Guid* effects, uint effectsCount, uint* effectsReturned, uint* effectsRegistered) { return ((delegate* unmanaged[Stdcall])(lpVtbl[25]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), effects, effectsCount, effectsReturned, effectsRegistered); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(26)] public HResult GetEffectProperties(Guid* effectId, ID2D1Properties** properties) { return ((delegate* unmanaged[Stdcall])(lpVtbl[26]))((ID2D1Factory1*)Unsafe.AsPointer(ref this), effectId, properties); } public interface Interface : ID2D1Factory.Interface { [VtblIndex(17)] HResult CreateDevice(Graphics.Dxgi.IDXGIDevice* dxgiDevice, ID2D1Device** d2dDevice); [VtblIndex(18)] HResult CreateStrokeStyle(StrokeStyleProperties1* strokeStyleProperties, float* dashes, uint dashesCount, ID2D1StrokeStyle1** strokeStyle); [VtblIndex(19)] HResult CreatePathGeometry(ID2D1PathGeometry1** pathGeometry); [VtblIndex(20)] HResult CreateDrawingStateBlock(DrawingStateDescription1* drawingStateDescription, Graphics.DirectWrite.IDWriteRenderingParams* textRenderingParams, ID2D1DrawingStateBlock1** drawingStateBlock); [VtblIndex(21)] HResult CreateGdiMetafile(Com.IStream* metafileStream, ID2D1GdiMetafile** metafile); [VtblIndex(22)] HResult RegisterEffectFromStream(Guid* classId, Com.IStream* propertyXml, PropertyBinding* bindings, uint bindingsCount, delegate* unmanaged[Stdcall] effectFactory); [VtblIndex(23)] HResult RegisterEffectFromString(Guid* classId, ushort* propertyXml, PropertyBinding* bindings, uint bindingsCount, delegate* unmanaged[Stdcall] effectFactory); [VtblIndex(24)] HResult UnregisterEffect(Guid* classId); [VtblIndex(25)] HResult GetRegisteredEffects(Guid* effects, uint effectsCount, uint* effectsReturned, uint* effectsRegistered); [VtblIndex(26)] HResult GetEffectProperties(Guid* effectId, ID2D1Properties** properties); } }