// ------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
// ------------------------------------------------------------------------------

namespace Win32.Graphics.Direct2D;

/// <include file='../Direct2D.xml' path='doc/member[@name="ID2D1DeviceContext5"]/*' />
/// <unmanaged>ID2D1DeviceContext5</unmanaged>
[Guid("7836d248-68cc-4df6-b9e8-de991bf62eb7")]
[NativeTypeName("struct ID2D1DeviceContext5 : ID2D1DeviceContext4")]
[NativeInheritance("ID2D1DeviceContext4")]
public unsafe partial struct ID2D1DeviceContext5 : ID2D1DeviceContext5.Interface, INativeGuid
{
	public static ref readonly Guid IID_ID2D1DeviceContext5
	{
		[MethodImpl(MethodImplOptions.AggressiveInlining)]
		get
		{
			ReadOnlySpan<byte> data = new byte[] {
				0x48, 0xD2, 0x36, 0x78,
				0xCC, 0x68,
				0xF6, 0x4D,
				0xB9,
				0xE8,
				0xDE,
				0x99,
				0x1B,
				0xF6,
				0x2E,
				0xB7
			};

			Debug.Assert(data.Length == Unsafe.SizeOf<Guid>());
			return ref Unsafe.As<byte, Guid>(ref MemoryMarshal.GetReference(data));
		}
	}

#if NET6_0_OR_GREATER
	static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_ID2D1DeviceContext5));
#else
	public static Guid* NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_ID2D1DeviceContext5));
#endif

	public void** lpVtbl;

	/// <inheritdoc cref="IUnknown.QueryInterface" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(0)]
	public HResult QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Guid*, void**, int>)(lpVtbl[0]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), riid, ppvObject);
	}

	/// <inheritdoc cref="IUnknown.AddRef" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(1)]
	[return: NativeTypeName("ULONG")]
	public uint AddRef()
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, uint>)(lpVtbl[1]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this));
	}

	/// <inheritdoc cref="IUnknown.Release" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(2)]
	[return: NativeTypeName("ULONG")]
	public uint Release()
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, uint>)(lpVtbl[2]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this));
	}

	/// <inheritdoc cref="ID2D1Resource.GetFactory" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(3)]
	public void GetFactory(ID2D1Factory** factory)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Factory**, void>)(lpVtbl[3]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), factory);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.CreateBitmap" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(4)]
	public HResult CreateBitmap(System.Drawing.Size size, void* srcData, uint pitch, BitmapProperties* bitmapProperties, ID2D1Bitmap** bitmap)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, System.Drawing.Size, void*, uint, BitmapProperties*, ID2D1Bitmap**, int>)(lpVtbl[4]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), size, srcData, pitch, bitmapProperties, bitmap);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.CreateBitmapFromWicBitmap" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(5)]
	public HResult CreateBitmapFromWicBitmap(Graphics.Imaging.IWICBitmapSource* wicBitmapSource, BitmapProperties* bitmapProperties, ID2D1Bitmap** bitmap)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Graphics.Imaging.IWICBitmapSource*, BitmapProperties*, ID2D1Bitmap**, int>)(lpVtbl[5]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), wicBitmapSource, bitmapProperties, bitmap);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.CreateSharedBitmap" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(6)]
	public HResult CreateSharedBitmap(Guid* riid, void* data, BitmapProperties* bitmapProperties, ID2D1Bitmap** bitmap)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Guid*, void*, BitmapProperties*, ID2D1Bitmap**, int>)(lpVtbl[6]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), riid, data, bitmapProperties, bitmap);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.CreateBitmapBrush" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(7)]
	public HResult CreateBitmapBrush(ID2D1Bitmap* bitmap, BitmapBrushProperties* bitmapBrushProperties, BrushProperties* brushProperties, ID2D1BitmapBrush** bitmapBrush)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Bitmap*, BitmapBrushProperties*, BrushProperties*, ID2D1BitmapBrush**, int>)(lpVtbl[7]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), bitmap, bitmapBrushProperties, brushProperties, bitmapBrush);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.CreateSolidColorBrush" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(8)]
	public HResult CreateSolidColorBrush(Color4* color, BrushProperties* brushProperties, ID2D1SolidColorBrush** solidColorBrush)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Color4*, BrushProperties*, ID2D1SolidColorBrush**, int>)(lpVtbl[8]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), color, brushProperties, solidColorBrush);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.CreateGradientStopCollection" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(9)]
	public HResult CreateGradientStopCollection(GradientStop* gradientStops, uint gradientStopsCount, Gamma colorInterpolationGamma, ExtendMode extendMode, ID2D1GradientStopCollection** gradientStopCollection)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, GradientStop*, uint, Gamma, ExtendMode, ID2D1GradientStopCollection**, int>)(lpVtbl[9]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), gradientStops, gradientStopsCount, colorInterpolationGamma, extendMode, gradientStopCollection);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.CreateLinearGradientBrush" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(10)]
	public HResult CreateLinearGradientBrush(LinearGradientBrushProperties* linearGradientBrushProperties, BrushProperties* brushProperties, ID2D1GradientStopCollection* gradientStopCollection, ID2D1LinearGradientBrush** linearGradientBrush)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, LinearGradientBrushProperties*, BrushProperties*, ID2D1GradientStopCollection*, ID2D1LinearGradientBrush**, int>)(lpVtbl[10]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), linearGradientBrushProperties, brushProperties, gradientStopCollection, linearGradientBrush);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.CreateRadialGradientBrush" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(11)]
	public HResult CreateRadialGradientBrush(RadialGradientBrushProperties* radialGradientBrushProperties, BrushProperties* brushProperties, ID2D1GradientStopCollection* gradientStopCollection, ID2D1RadialGradientBrush** radialGradientBrush)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, RadialGradientBrushProperties*, BrushProperties*, ID2D1GradientStopCollection*, ID2D1RadialGradientBrush**, int>)(lpVtbl[11]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), radialGradientBrushProperties, brushProperties, gradientStopCollection, radialGradientBrush);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.CreateCompatibleRenderTarget" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(12)]
	public HResult CreateCompatibleRenderTarget(System.Drawing.SizeF* desiredSize, System.Drawing.Size* desiredPixelSize, Common.PixelFormat* desiredFormat, CompatibleRenderTargetOptions options, ID2D1BitmapRenderTarget** bitmapRenderTarget)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, System.Drawing.SizeF*, System.Drawing.Size*, Common.PixelFormat*, CompatibleRenderTargetOptions, ID2D1BitmapRenderTarget**, int>)(lpVtbl[12]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), desiredSize, desiredPixelSize, desiredFormat, options, bitmapRenderTarget);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.CreateLayer" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(13)]
	public HResult CreateLayer(System.Drawing.SizeF* size, ID2D1Layer** layer)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, System.Drawing.SizeF*, ID2D1Layer**, int>)(lpVtbl[13]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), size, layer);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.CreateMesh" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(14)]
	public HResult CreateMesh(ID2D1Mesh** mesh)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Mesh**, int>)(lpVtbl[14]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), mesh);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.DrawLine" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(15)]
	public void DrawLine(System.Drawing.PointF point0, System.Drawing.PointF point1, ID2D1Brush* brush, float strokeWidth, ID2D1StrokeStyle* strokeStyle)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, System.Drawing.PointF, System.Drawing.PointF, ID2D1Brush*, float, ID2D1StrokeStyle*, void>)(lpVtbl[15]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), point0, point1, brush, strokeWidth, strokeStyle);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.DrawRectangle" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(16)]
	public void DrawRectangle(Common.RectF* rect, ID2D1Brush* brush, float strokeWidth, ID2D1StrokeStyle* strokeStyle)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Common.RectF*, ID2D1Brush*, float, ID2D1StrokeStyle*, void>)(lpVtbl[16]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), rect, brush, strokeWidth, strokeStyle);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.FillRectangle" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(17)]
	public void FillRectangle(Common.RectF* rect, ID2D1Brush* brush)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Common.RectF*, ID2D1Brush*, void>)(lpVtbl[17]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), rect, brush);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.DrawRoundedRectangle" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(18)]
	public void DrawRoundedRectangle(RoundedRect* roundedRect, ID2D1Brush* brush, float strokeWidth, ID2D1StrokeStyle* strokeStyle)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, RoundedRect*, ID2D1Brush*, float, ID2D1StrokeStyle*, void>)(lpVtbl[18]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), roundedRect, brush, strokeWidth, strokeStyle);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.FillRoundedRectangle" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(19)]
	public void FillRoundedRectangle(RoundedRect* roundedRect, ID2D1Brush* brush)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, RoundedRect*, ID2D1Brush*, void>)(lpVtbl[19]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), roundedRect, brush);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.DrawEllipse" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(20)]
	public void DrawEllipse(Ellipse* ellipse, ID2D1Brush* brush, float strokeWidth, ID2D1StrokeStyle* strokeStyle)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Ellipse*, ID2D1Brush*, float, ID2D1StrokeStyle*, void>)(lpVtbl[20]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), ellipse, brush, strokeWidth, strokeStyle);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.FillEllipse" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(21)]
	public void FillEllipse(Ellipse* ellipse, ID2D1Brush* brush)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Ellipse*, ID2D1Brush*, void>)(lpVtbl[21]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), ellipse, brush);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.DrawGeometry" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(22)]
	public void DrawGeometry(ID2D1Geometry* geometry, ID2D1Brush* brush, float strokeWidth, ID2D1StrokeStyle* strokeStyle)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Geometry*, ID2D1Brush*, float, ID2D1StrokeStyle*, void>)(lpVtbl[22]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), geometry, brush, strokeWidth, strokeStyle);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.FillGeometry" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(23)]
	public void FillGeometry(ID2D1Geometry* geometry, ID2D1Brush* brush, ID2D1Brush* opacityBrush)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Geometry*, ID2D1Brush*, ID2D1Brush*, void>)(lpVtbl[23]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), geometry, brush, opacityBrush);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.FillMesh" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(24)]
	public void FillMesh(ID2D1Mesh* mesh, ID2D1Brush* brush)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Mesh*, ID2D1Brush*, void>)(lpVtbl[24]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), mesh, brush);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.FillOpacityMask" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(25)]
	public void FillOpacityMask(ID2D1Bitmap* opacityMask, ID2D1Brush* brush, OpacityMaskContent content, Common.RectF* destinationRectangle, Common.RectF* sourceRectangle)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Bitmap*, ID2D1Brush*, OpacityMaskContent, Common.RectF*, Common.RectF*, void>)(lpVtbl[25]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), opacityMask, brush, content, destinationRectangle, sourceRectangle);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.DrawBitmap" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(26)]
	public void DrawBitmap(ID2D1Bitmap* bitmap, Common.RectF* destinationRectangle, float opacity, BitmapInterpolationMode interpolationMode, Common.RectF* sourceRectangle)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Bitmap*, Common.RectF*, float, BitmapInterpolationMode, Common.RectF*, void>)(lpVtbl[26]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), bitmap, destinationRectangle, opacity, interpolationMode, sourceRectangle);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.DrawText" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(27)]
	public void DrawText(ushort* @string, uint stringLength, Graphics.DirectWrite.IDWriteTextFormat* textFormat, Common.RectF* layoutRect, ID2D1Brush* defaultFillBrush, DrawTextOptions options, Graphics.DirectWrite.MeasuringMode measuringMode)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ushort*, uint, Graphics.DirectWrite.IDWriteTextFormat*, Common.RectF*, ID2D1Brush*, DrawTextOptions, Graphics.DirectWrite.MeasuringMode, void>)(lpVtbl[27]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), @string, stringLength, textFormat, layoutRect, defaultFillBrush, options, measuringMode);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.DrawTextLayout" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(28)]
	public void DrawTextLayout(System.Drawing.PointF origin, Graphics.DirectWrite.IDWriteTextLayout* textLayout, ID2D1Brush* defaultFillBrush, DrawTextOptions options)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, System.Drawing.PointF, Graphics.DirectWrite.IDWriteTextLayout*, ID2D1Brush*, DrawTextOptions, void>)(lpVtbl[28]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), origin, textLayout, defaultFillBrush, options);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.DrawGlyphRun" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(29)]
	public void DrawGlyphRun(System.Drawing.PointF baselineOrigin, Graphics.DirectWrite.GlyphRun* glyphRun, ID2D1Brush* foregroundBrush, Graphics.DirectWrite.MeasuringMode measuringMode)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, System.Drawing.PointF, Graphics.DirectWrite.GlyphRun*, ID2D1Brush*, Graphics.DirectWrite.MeasuringMode, void>)(lpVtbl[29]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), baselineOrigin, glyphRun, foregroundBrush, measuringMode);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.SetTransform" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(30)]
	public void SetTransform(Matrix3x2* transform)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Matrix3x2*, void>)(lpVtbl[30]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), transform);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.GetTransform" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(31)]
	public void GetTransform(Matrix3x2* transform)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Matrix3x2*, void>)(lpVtbl[31]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), transform);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.SetAntialiasMode" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(32)]
	public void SetAntialiasMode(AntialiasMode antialiasMode)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, AntialiasMode, void>)(lpVtbl[32]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), antialiasMode);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.GetAntialiasMode" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(33)]
	public AntialiasMode GetAntialiasMode()
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, AntialiasMode>)(lpVtbl[33]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this));
	}

	/// <inheritdoc cref="ID2D1RenderTarget.SetTextAntialiasMode" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(34)]
	public void SetTextAntialiasMode(TextAntialiasMode textAntialiasMode)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, TextAntialiasMode, void>)(lpVtbl[34]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), textAntialiasMode);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.GetTextAntialiasMode" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(35)]
	public TextAntialiasMode GetTextAntialiasMode()
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, TextAntialiasMode>)(lpVtbl[35]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this));
	}

	/// <inheritdoc cref="ID2D1RenderTarget.SetTextRenderingParams" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(36)]
	public void SetTextRenderingParams(Graphics.DirectWrite.IDWriteRenderingParams* textRenderingParams)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Graphics.DirectWrite.IDWriteRenderingParams*, void>)(lpVtbl[36]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), textRenderingParams);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.GetTextRenderingParams" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(37)]
	public void GetTextRenderingParams(Graphics.DirectWrite.IDWriteRenderingParams** textRenderingParams)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Graphics.DirectWrite.IDWriteRenderingParams**, void>)(lpVtbl[37]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), textRenderingParams);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.SetTags" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(38)]
	public void SetTags(ulong tag1, ulong tag2)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ulong, ulong, void>)(lpVtbl[38]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), tag1, tag2);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.GetTags" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(39)]
	public void GetTags(ulong* tag1, ulong* tag2)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ulong*, ulong*, void>)(lpVtbl[39]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), tag1, tag2);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.PushLayer" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(40)]
	public void PushLayer(LayerParameters* layerParameters, ID2D1Layer* layer)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, LayerParameters*, ID2D1Layer*, void>)(lpVtbl[40]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), layerParameters, layer);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.PopLayer" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(41)]
	public void PopLayer()
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, void>)(lpVtbl[41]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this));
	}

	/// <inheritdoc cref="ID2D1RenderTarget.Flush" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(42)]
	public HResult Flush(ulong* tag1, ulong* tag2)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ulong*, ulong*, int>)(lpVtbl[42]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), tag1, tag2);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.SaveDrawingState" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(43)]
	public void SaveDrawingState(ID2D1DrawingStateBlock* drawingStateBlock)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1DrawingStateBlock*, void>)(lpVtbl[43]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), drawingStateBlock);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.RestoreDrawingState" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(44)]
	public void RestoreDrawingState(ID2D1DrawingStateBlock* drawingStateBlock)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1DrawingStateBlock*, void>)(lpVtbl[44]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), drawingStateBlock);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.PushAxisAlignedClip" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(45)]
	public void PushAxisAlignedClip(Common.RectF* clipRect, AntialiasMode antialiasMode)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Common.RectF*, AntialiasMode, void>)(lpVtbl[45]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), clipRect, antialiasMode);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.PopAxisAlignedClip" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(46)]
	public void PopAxisAlignedClip()
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, void>)(lpVtbl[46]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this));
	}

	/// <inheritdoc cref="ID2D1RenderTarget.Clear" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(47)]
	public void Clear(Color4* clearColor)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Color4*, void>)(lpVtbl[47]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), clearColor);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.BeginDraw" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(48)]
	public void BeginDraw()
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, void>)(lpVtbl[48]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this));
	}

	/// <inheritdoc cref="ID2D1RenderTarget.EndDraw" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(49)]
	public HResult EndDraw(ulong* tag1 = null, ulong* tag2 = null)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ulong*, ulong*, int>)(lpVtbl[49]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), tag1, tag2);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.GetPixelFormat" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(50)]
	public Common.PixelFormat GetPixelFormat()
	{
		Common.PixelFormat result;
		return *((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Common.PixelFormat*, Common.PixelFormat*>)(lpVtbl[50]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), &result);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.SetDpi" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(51)]
	public void SetDpi(float dpiX, float dpiY)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, float, float, void>)(lpVtbl[51]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), dpiX, dpiY);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.GetDpi" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(52)]
	public void GetDpi(float* dpiX, float* dpiY)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, float*, float*, void>)(lpVtbl[52]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), dpiX, dpiY);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.GetSize" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(53)]
	public System.Drawing.SizeF GetSize()
	{
		System.Drawing.SizeF result;
		return *((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, System.Drawing.SizeF*, System.Drawing.SizeF*>)(lpVtbl[53]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), &result);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.GetPixelSize" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(54)]
	public System.Drawing.Size GetPixelSize()
	{
		System.Drawing.Size result;
		return *((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, System.Drawing.Size*, System.Drawing.Size*>)(lpVtbl[54]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), &result);
	}

	/// <inheritdoc cref="ID2D1RenderTarget.GetMaximumBitmapSize" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(55)]
	public uint GetMaximumBitmapSize()
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, uint>)(lpVtbl[55]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this));
	}

	/// <inheritdoc cref="ID2D1RenderTarget.IsSupported" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(56)]
	public Bool32 IsSupported(RenderTargetProperties* renderTargetProperties)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, RenderTargetProperties*, Bool32>)(lpVtbl[56]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), renderTargetProperties);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.CreateBitmap" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(57)]
	public HResult CreateBitmap(System.Drawing.Size size, void* sourceData, uint pitch, BitmapProperties1* bitmapProperties, ID2D1Bitmap1** bitmap)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, System.Drawing.Size, void*, uint, BitmapProperties1*, ID2D1Bitmap1**, int>)(lpVtbl[57]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), size, sourceData, pitch, bitmapProperties, bitmap);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.CreateBitmapFromWicBitmap" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(58)]
	public HResult CreateBitmapFromWicBitmap(Graphics.Imaging.IWICBitmapSource* wicBitmapSource, BitmapProperties1* bitmapProperties, ID2D1Bitmap1** bitmap)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Graphics.Imaging.IWICBitmapSource*, BitmapProperties1*, ID2D1Bitmap1**, int>)(lpVtbl[58]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), wicBitmapSource, bitmapProperties, bitmap);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.CreateColorContext" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(59)]
	public HResult CreateColorContext(ColorSpace space, byte* profile, uint profileSize, ID2D1ColorContext** colorContext)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ColorSpace, byte*, uint, ID2D1ColorContext**, int>)(lpVtbl[59]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), space, profile, profileSize, colorContext);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.CreateColorContextFromFilename" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(60)]
	public HResult CreateColorContextFromFilename(ushort* filename, ID2D1ColorContext** colorContext)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ushort*, ID2D1ColorContext**, int>)(lpVtbl[60]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), filename, colorContext);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.CreateColorContextFromWicColorContext" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(61)]
	public HResult CreateColorContextFromWicColorContext(Graphics.Imaging.IWICColorContext* wicColorContext, ID2D1ColorContext** colorContext)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Graphics.Imaging.IWICColorContext*, ID2D1ColorContext**, int>)(lpVtbl[61]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), wicColorContext, colorContext);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.CreateBitmapFromDxgiSurface" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(62)]
	public HResult CreateBitmapFromDxgiSurface(Graphics.Dxgi.IDXGISurface* surface, BitmapProperties1* bitmapProperties, ID2D1Bitmap1** bitmap)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Graphics.Dxgi.IDXGISurface*, BitmapProperties1*, ID2D1Bitmap1**, int>)(lpVtbl[62]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), surface, bitmapProperties, bitmap);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.CreateEffect" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(63)]
	public HResult CreateEffect(Guid* effectId, ID2D1Effect** effect)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Guid*, ID2D1Effect**, int>)(lpVtbl[63]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), effectId, effect);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.CreateGradientStopCollection" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(64)]
	public HResult CreateGradientStopCollection(GradientStop* straightAlphaGradientStops, uint straightAlphaGradientStopsCount, ColorSpace preInterpolationSpace, ColorSpace postInterpolationSpace, BufferPrecision bufferPrecision, ExtendMode extendMode, ColorInterpolationMode colorInterpolationMode, ID2D1GradientStopCollection1** gradientStopCollection1)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, GradientStop*, uint, ColorSpace, ColorSpace, BufferPrecision, ExtendMode, ColorInterpolationMode, ID2D1GradientStopCollection1**, int>)(lpVtbl[64]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), straightAlphaGradientStops, straightAlphaGradientStopsCount, preInterpolationSpace, postInterpolationSpace, bufferPrecision, extendMode, colorInterpolationMode, gradientStopCollection1);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.CreateImageBrush" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(65)]
	public HResult CreateImageBrush(ID2D1Image* image, ImageBrushProperties* imageBrushProperties, BrushProperties* brushProperties, ID2D1ImageBrush** imageBrush)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Image*, ImageBrushProperties*, BrushProperties*, ID2D1ImageBrush**, int>)(lpVtbl[65]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), image, imageBrushProperties, brushProperties, imageBrush);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.CreateBitmapBrush" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(66)]
	public HResult CreateBitmapBrush(ID2D1Bitmap* bitmap, BitmapBrushProperties1* bitmapBrushProperties, BrushProperties* brushProperties, ID2D1BitmapBrush1** bitmapBrush)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Bitmap*, BitmapBrushProperties1*, BrushProperties*, ID2D1BitmapBrush1**, int>)(lpVtbl[66]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), bitmap, bitmapBrushProperties, brushProperties, bitmapBrush);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.CreateCommandList" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(67)]
	public HResult CreateCommandList(ID2D1CommandList** commandList)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1CommandList**, int>)(lpVtbl[67]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), commandList);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.IsDxgiFormatSupported" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(68)]
	public Bool32 IsDxgiFormatSupported(Graphics.Dxgi.Common.Format format)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Graphics.Dxgi.Common.Format, Bool32>)(lpVtbl[68]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), format);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.IsBufferPrecisionSupported" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(69)]
	public Bool32 IsBufferPrecisionSupported(BufferPrecision bufferPrecision)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, BufferPrecision, Bool32>)(lpVtbl[69]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), bufferPrecision);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.GetImageLocalBounds" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(70)]
	public HResult GetImageLocalBounds(ID2D1Image* image, Common.RectF* localBounds)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Image*, Common.RectF*, int>)(lpVtbl[70]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), image, localBounds);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.GetImageWorldBounds" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(71)]
	public HResult GetImageWorldBounds(ID2D1Image* image, Common.RectF* worldBounds)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Image*, Common.RectF*, int>)(lpVtbl[71]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), image, worldBounds);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.GetGlyphRunWorldBounds" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(72)]
	public HResult GetGlyphRunWorldBounds(System.Drawing.PointF baselineOrigin, Graphics.DirectWrite.GlyphRun* glyphRun, Graphics.DirectWrite.MeasuringMode measuringMode, Common.RectF* bounds)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, System.Drawing.PointF, Graphics.DirectWrite.GlyphRun*, Graphics.DirectWrite.MeasuringMode, Common.RectF*, int>)(lpVtbl[72]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), baselineOrigin, glyphRun, measuringMode, bounds);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.GetDevice" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(73)]
	public void GetDevice(ID2D1Device** device)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Device**, void>)(lpVtbl[73]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), device);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.SetTarget" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(74)]
	public void SetTarget(ID2D1Image* image)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Image*, void>)(lpVtbl[74]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), image);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.GetTarget" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(75)]
	public void GetTarget(ID2D1Image** image)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Image**, void>)(lpVtbl[75]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), image);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.SetRenderingControls" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(76)]
	public void SetRenderingControls(RenderingControls* renderingControls)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, RenderingControls*, void>)(lpVtbl[76]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), renderingControls);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.GetRenderingControls" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(77)]
	public void GetRenderingControls(RenderingControls* renderingControls)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, RenderingControls*, void>)(lpVtbl[77]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), renderingControls);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.SetPrimitiveBlend" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(78)]
	public void SetPrimitiveBlend(PrimitiveBlend primitiveBlend)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, PrimitiveBlend, void>)(lpVtbl[78]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), primitiveBlend);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.GetPrimitiveBlend" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(79)]
	public PrimitiveBlend GetPrimitiveBlend()
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, PrimitiveBlend>)(lpVtbl[79]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this));
	}

	/// <inheritdoc cref="ID2D1DeviceContext.SetUnitMode" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(80)]
	public void SetUnitMode(UnitMode unitMode)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, UnitMode, void>)(lpVtbl[80]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), unitMode);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.GetUnitMode" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(81)]
	public UnitMode GetUnitMode()
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, UnitMode>)(lpVtbl[81]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this));
	}

	/// <inheritdoc cref="ID2D1DeviceContext.DrawGlyphRun" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(82)]
	public void DrawGlyphRun(System.Drawing.PointF baselineOrigin, Graphics.DirectWrite.GlyphRun* glyphRun, Graphics.DirectWrite.GlyphRunDescription* glyphRunDescription, ID2D1Brush* foregroundBrush, Graphics.DirectWrite.MeasuringMode measuringMode)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, System.Drawing.PointF, Graphics.DirectWrite.GlyphRun*, Graphics.DirectWrite.GlyphRunDescription*, ID2D1Brush*, Graphics.DirectWrite.MeasuringMode, void>)(lpVtbl[82]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), baselineOrigin, glyphRun, glyphRunDescription, foregroundBrush, measuringMode);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.DrawImage" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(83)]
	public void DrawImage(ID2D1Image* image, System.Drawing.PointF* targetOffset, Common.RectF* imageRectangle, InterpolationMode interpolationMode, Common.CompositeMode compositeMode)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Image*, System.Drawing.PointF*, Common.RectF*, InterpolationMode, Common.CompositeMode, void>)(lpVtbl[83]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), image, targetOffset, imageRectangle, interpolationMode, compositeMode);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.DrawGdiMetafile" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(84)]
	public void DrawGdiMetafile(ID2D1GdiMetafile* gdiMetafile, System.Drawing.PointF* targetOffset)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1GdiMetafile*, System.Drawing.PointF*, void>)(lpVtbl[84]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), gdiMetafile, targetOffset);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.DrawBitmap" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(85)]
	public void DrawBitmap(ID2D1Bitmap* bitmap, Common.RectF* destinationRectangle, float opacity, InterpolationMode interpolationMode, Common.RectF* sourceRectangle, Matrix4x4* perspectiveTransform)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Bitmap*, Common.RectF*, float, InterpolationMode, Common.RectF*, Matrix4x4*, void>)(lpVtbl[85]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), bitmap, destinationRectangle, opacity, interpolationMode, sourceRectangle, perspectiveTransform);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.PushLayer" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(86)]
	public void PushLayer(LayerParameters1* layerParameters, ID2D1Layer* layer)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, LayerParameters1*, ID2D1Layer*, void>)(lpVtbl[86]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), layerParameters, layer);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.InvalidateEffectInputRectangle" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(87)]
	public HResult InvalidateEffectInputRectangle(ID2D1Effect* effect, uint input, Common.RectF* inputRectangle)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Effect*, uint, Common.RectF*, int>)(lpVtbl[87]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), effect, input, inputRectangle);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.GetEffectInvalidRectangleCount" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(88)]
	public HResult GetEffectInvalidRectangleCount(ID2D1Effect* effect, uint* rectangleCount)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Effect*, uint*, int>)(lpVtbl[88]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), effect, rectangleCount);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.GetEffectInvalidRectangles" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(89)]
	public HResult GetEffectInvalidRectangles(ID2D1Effect* effect, Common.RectF* rectangles, uint rectanglesCount)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Effect*, Common.RectF*, uint, int>)(lpVtbl[89]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), effect, rectangles, rectanglesCount);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.GetEffectRequiredInputRectangles" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(90)]
	public HResult GetEffectRequiredInputRectangles(ID2D1Effect* renderEffect, Common.RectF* renderImageRectangle, EffectInputDescription* inputDescriptions, Common.RectF* requiredInputRects, uint inputCount)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Effect*, Common.RectF*, EffectInputDescription*, Common.RectF*, uint, int>)(lpVtbl[90]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), renderEffect, renderImageRectangle, inputDescriptions, requiredInputRects, inputCount);
	}

	/// <inheritdoc cref="ID2D1DeviceContext.FillOpacityMask" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(91)]
	public void FillOpacityMask(ID2D1Bitmap* opacityMask, ID2D1Brush* brush, Common.RectF* destinationRectangle, Common.RectF* sourceRectangle)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Bitmap*, ID2D1Brush*, Common.RectF*, Common.RectF*, void>)(lpVtbl[91]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), opacityMask, brush, destinationRectangle, sourceRectangle);
	}

	/// <inheritdoc cref="ID2D1DeviceContext1.CreateFilledGeometryRealization" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(92)]
	public HResult CreateFilledGeometryRealization(ID2D1Geometry* geometry, float flatteningTolerance, ID2D1GeometryRealization** geometryRealization)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Geometry*, float, ID2D1GeometryRealization**, int>)(lpVtbl[92]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), geometry, flatteningTolerance, geometryRealization);
	}

	/// <inheritdoc cref="ID2D1DeviceContext1.CreateStrokedGeometryRealization" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(93)]
	public HResult CreateStrokedGeometryRealization(ID2D1Geometry* geometry, float flatteningTolerance, float strokeWidth, ID2D1StrokeStyle* strokeStyle, ID2D1GeometryRealization** geometryRealization)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Geometry*, float, float, ID2D1StrokeStyle*, ID2D1GeometryRealization**, int>)(lpVtbl[93]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), geometry, flatteningTolerance, strokeWidth, strokeStyle, geometryRealization);
	}

	/// <inheritdoc cref="ID2D1DeviceContext1.DrawGeometryRealization" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(94)]
	public void DrawGeometryRealization(ID2D1GeometryRealization* geometryRealization, ID2D1Brush* brush)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1GeometryRealization*, ID2D1Brush*, void>)(lpVtbl[94]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), geometryRealization, brush);
	}

	/// <inheritdoc cref="ID2D1DeviceContext2.CreateInk" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(95)]
	public HResult CreateInk(InkPoint* startPoint, ID2D1Ink** ink)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, InkPoint*, ID2D1Ink**, int>)(lpVtbl[95]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), startPoint, ink);
	}

	/// <inheritdoc cref="ID2D1DeviceContext2.CreateInkStyle" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(96)]
	public HResult CreateInkStyle(InkStyleProperties* inkStyleProperties, ID2D1InkStyle** inkStyle)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, InkStyleProperties*, ID2D1InkStyle**, int>)(lpVtbl[96]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), inkStyleProperties, inkStyle);
	}

	/// <inheritdoc cref="ID2D1DeviceContext2.CreateGradientMesh" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(97)]
	public HResult CreateGradientMesh(GradientMeshPatch* patches, uint patchesCount, ID2D1GradientMesh** gradientMesh)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, GradientMeshPatch*, uint, ID2D1GradientMesh**, int>)(lpVtbl[97]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), patches, patchesCount, gradientMesh);
	}

	/// <inheritdoc cref="ID2D1DeviceContext2.CreateImageSourceFromWic" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(98)]
	public HResult CreateImageSourceFromWic(Graphics.Imaging.IWICBitmapSource* wicBitmapSource, ImageSourceLoadingOptions loadingOptions, Common.AlphaMode alphaMode, ID2D1ImageSourceFromWic** imageSource)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Graphics.Imaging.IWICBitmapSource*, ImageSourceLoadingOptions, Common.AlphaMode, ID2D1ImageSourceFromWic**, int>)(lpVtbl[98]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), wicBitmapSource, loadingOptions, alphaMode, imageSource);
	}

	/// <inheritdoc cref="ID2D1DeviceContext2.CreateLookupTable3D" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(99)]
	public HResult CreateLookupTable3D(BufferPrecision precision, uint* extents, byte* data, uint dataCount, uint* strides, ID2D1LookupTable3D** lookupTable)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, BufferPrecision, uint*, byte*, uint, uint*, ID2D1LookupTable3D**, int>)(lpVtbl[99]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), precision, extents, data, dataCount, strides, lookupTable);
	}

	/// <inheritdoc cref="ID2D1DeviceContext2.CreateImageSourceFromDxgi" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(100)]
	public HResult CreateImageSourceFromDxgi(Graphics.Dxgi.IDXGISurface** surfaces, uint surfaceCount, Graphics.Dxgi.Common.ColorSpaceType colorSpace, ImageSourceFromDxgiOptions options, ID2D1ImageSource** imageSource)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Graphics.Dxgi.IDXGISurface**, uint, Graphics.Dxgi.Common.ColorSpaceType, ImageSourceFromDxgiOptions, ID2D1ImageSource**, int>)(lpVtbl[100]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), surfaces, surfaceCount, colorSpace, options, imageSource);
	}

	/// <inheritdoc cref="ID2D1DeviceContext2.GetGradientMeshWorldBounds" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(101)]
	public HResult GetGradientMeshWorldBounds(ID2D1GradientMesh* gradientMesh, Common.RectF* pBounds)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1GradientMesh*, Common.RectF*, int>)(lpVtbl[101]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), gradientMesh, pBounds);
	}

	/// <inheritdoc cref="ID2D1DeviceContext2.DrawInk" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(102)]
	public void DrawInk(ID2D1Ink* ink, ID2D1Brush* brush, ID2D1InkStyle* inkStyle)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1Ink*, ID2D1Brush*, ID2D1InkStyle*, void>)(lpVtbl[102]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), ink, brush, inkStyle);
	}

	/// <inheritdoc cref="ID2D1DeviceContext2.DrawGradientMesh" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(103)]
	public void DrawGradientMesh(ID2D1GradientMesh* gradientMesh)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1GradientMesh*, void>)(lpVtbl[103]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), gradientMesh);
	}

	/// <inheritdoc cref="ID2D1DeviceContext2.DrawGdiMetafile" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(104)]
	public void DrawGdiMetafile(ID2D1GdiMetafile* gdiMetafile, Common.RectF* destinationRectangle, Common.RectF* sourceRectangle)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1GdiMetafile*, Common.RectF*, Common.RectF*, void>)(lpVtbl[104]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), gdiMetafile, destinationRectangle, sourceRectangle);
	}

	/// <inheritdoc cref="ID2D1DeviceContext2.CreateTransformedImageSource" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(105)]
	public HResult CreateTransformedImageSource(ID2D1ImageSource* imageSource, TransformedImageSourceProperties* properties, ID2D1TransformedImageSource** transformedImageSource)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1ImageSource*, TransformedImageSourceProperties*, ID2D1TransformedImageSource**, int>)(lpVtbl[105]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), imageSource, properties, transformedImageSource);
	}

	/// <inheritdoc cref="ID2D1DeviceContext3.CreateSpriteBatch" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(106)]
	public HResult CreateSpriteBatch(ID2D1SpriteBatch** spriteBatch)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1SpriteBatch**, int>)(lpVtbl[106]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), spriteBatch);
	}

	/// <inheritdoc cref="ID2D1DeviceContext3.DrawSpriteBatch" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(107)]
	public void DrawSpriteBatch(ID2D1SpriteBatch* spriteBatch, uint startIndex, uint spriteCount, ID2D1Bitmap* bitmap, BitmapInterpolationMode interpolationMode, SpriteOptions spriteOptions)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1SpriteBatch*, uint, uint, ID2D1Bitmap*, BitmapInterpolationMode, SpriteOptions, void>)(lpVtbl[107]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), spriteBatch, startIndex, spriteCount, bitmap, interpolationMode, spriteOptions);
	}

	/// <inheritdoc cref="ID2D1DeviceContext4.CreateSvgGlyphStyle" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(108)]
	public HResult CreateSvgGlyphStyle(ID2D1SvgGlyphStyle** svgGlyphStyle)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1SvgGlyphStyle**, int>)(lpVtbl[108]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), svgGlyphStyle);
	}

	/// <inheritdoc cref="ID2D1DeviceContext4.DrawText" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(109)]
	public void DrawText(ushort* @string, uint stringLength, Graphics.DirectWrite.IDWriteTextFormat* textFormat, Common.RectF* layoutRect, ID2D1Brush* defaultFillBrush, ID2D1SvgGlyphStyle* svgGlyphStyle, uint colorPaletteIndex, DrawTextOptions options, Graphics.DirectWrite.MeasuringMode measuringMode)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ushort*, uint, Graphics.DirectWrite.IDWriteTextFormat*, Common.RectF*, ID2D1Brush*, ID2D1SvgGlyphStyle*, uint, DrawTextOptions, Graphics.DirectWrite.MeasuringMode, void>)(lpVtbl[109]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), @string, stringLength, textFormat, layoutRect, defaultFillBrush, svgGlyphStyle, colorPaletteIndex, options, measuringMode);
	}

	/// <inheritdoc cref="ID2D1DeviceContext4.DrawTextLayout" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(110)]
	public void DrawTextLayout(System.Drawing.PointF origin, Graphics.DirectWrite.IDWriteTextLayout* textLayout, ID2D1Brush* defaultFillBrush, ID2D1SvgGlyphStyle* svgGlyphStyle, uint colorPaletteIndex, DrawTextOptions options)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, System.Drawing.PointF, Graphics.DirectWrite.IDWriteTextLayout*, ID2D1Brush*, ID2D1SvgGlyphStyle*, uint, DrawTextOptions, void>)(lpVtbl[110]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), origin, textLayout, defaultFillBrush, svgGlyphStyle, colorPaletteIndex, options);
	}

	/// <inheritdoc cref="ID2D1DeviceContext4.DrawColorBitmapGlyphRun" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(111)]
	public void DrawColorBitmapGlyphRun(Graphics.DirectWrite.GlyphImageFormats glyphImageFormat, System.Drawing.PointF baselineOrigin, Graphics.DirectWrite.GlyphRun* glyphRun, Graphics.DirectWrite.MeasuringMode measuringMode, ColorBitmapGlyphSnapOption bitmapSnapOption)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Graphics.DirectWrite.GlyphImageFormats, System.Drawing.PointF, Graphics.DirectWrite.GlyphRun*, Graphics.DirectWrite.MeasuringMode, ColorBitmapGlyphSnapOption, void>)(lpVtbl[111]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), glyphImageFormat, baselineOrigin, glyphRun, measuringMode, bitmapSnapOption);
	}

	/// <inheritdoc cref="ID2D1DeviceContext4.DrawSvgGlyphRun" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(112)]
	public void DrawSvgGlyphRun(System.Drawing.PointF baselineOrigin, Graphics.DirectWrite.GlyphRun* glyphRun, ID2D1Brush* defaultFillBrush, ID2D1SvgGlyphStyle* svgGlyphStyle, uint colorPaletteIndex, Graphics.DirectWrite.MeasuringMode measuringMode)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, System.Drawing.PointF, Graphics.DirectWrite.GlyphRun*, ID2D1Brush*, ID2D1SvgGlyphStyle*, uint, Graphics.DirectWrite.MeasuringMode, void>)(lpVtbl[112]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), baselineOrigin, glyphRun, defaultFillBrush, svgGlyphStyle, colorPaletteIndex, measuringMode);
	}

	/// <inheritdoc cref="ID2D1DeviceContext4.GetColorBitmapGlyphImage" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(113)]
	public HResult GetColorBitmapGlyphImage(Graphics.DirectWrite.GlyphImageFormats glyphImageFormat, System.Drawing.PointF glyphOrigin, Graphics.DirectWrite.IDWriteFontFace* fontFace, float fontEmSize, ushort glyphIndex, Bool32 isSideways, Matrix3x2* worldTransform, float dpiX, float dpiY, Matrix3x2* glyphTransform, ID2D1Image** glyphImage)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Graphics.DirectWrite.GlyphImageFormats, System.Drawing.PointF, Graphics.DirectWrite.IDWriteFontFace*, float, ushort, Bool32, Matrix3x2*, float, float, Matrix3x2*, ID2D1Image**, int>)(lpVtbl[113]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), glyphImageFormat, glyphOrigin, fontFace, fontEmSize, glyphIndex, isSideways, worldTransform, dpiX, dpiY, glyphTransform, glyphImage);
	}

	/// <inheritdoc cref="ID2D1DeviceContext4.GetSvgGlyphImage" />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(114)]
	public HResult GetSvgGlyphImage(System.Drawing.PointF glyphOrigin, Graphics.DirectWrite.IDWriteFontFace* fontFace, float fontEmSize, ushort glyphIndex, Bool32 isSideways, Matrix3x2* worldTransform, ID2D1Brush* defaultFillBrush, ID2D1SvgGlyphStyle* svgGlyphStyle, uint colorPaletteIndex, Matrix3x2* glyphTransform, ID2D1CommandList** glyphImage)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, System.Drawing.PointF, Graphics.DirectWrite.IDWriteFontFace*, float, ushort, Bool32, Matrix3x2*, ID2D1Brush*, ID2D1SvgGlyphStyle*, uint, Matrix3x2*, ID2D1CommandList**, int>)(lpVtbl[114]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), glyphOrigin, fontFace, fontEmSize, glyphIndex, isSideways, worldTransform, defaultFillBrush, svgGlyphStyle, colorPaletteIndex, glyphTransform, glyphImage);
	}

	/// <include file='../Direct2D.xml' path='doc/member[@name="ID2D1DeviceContext5::CreateSvgDocument"]/*' />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(115)]
	public HResult CreateSvgDocument(Com.IStream* inputXmlStream, System.Drawing.SizeF viewportSize, ID2D1SvgDocument** svgDocument)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Com.IStream*, System.Drawing.SizeF, ID2D1SvgDocument**, int>)(lpVtbl[115]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), inputXmlStream, viewportSize, svgDocument);
	}

	/// <include file='../Direct2D.xml' path='doc/member[@name="ID2D1DeviceContext5::DrawSvgDocument"]/*' />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(116)]
	public void DrawSvgDocument(ID2D1SvgDocument* svgDocument)
	{
		((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, ID2D1SvgDocument*, void>)(lpVtbl[116]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), svgDocument);
	}

	/// <include file='../Direct2D.xml' path='doc/member[@name="ID2D1DeviceContext5::CreateColorContextFromDxgiColorSpace"]/*' />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(117)]
	public HResult CreateColorContextFromDxgiColorSpace(Graphics.Dxgi.Common.ColorSpaceType colorSpace, ID2D1ColorContext1** colorContext)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, Graphics.Dxgi.Common.ColorSpaceType, ID2D1ColorContext1**, int>)(lpVtbl[117]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), colorSpace, colorContext);
	}

	/// <include file='../Direct2D.xml' path='doc/member[@name="ID2D1DeviceContext5::CreateColorContextFromSimpleColorProfile"]/*' />
	[MethodImpl(MethodImplOptions.AggressiveInlining)]
	[VtblIndex(118)]
	public HResult CreateColorContextFromSimpleColorProfile(SimpleColorProfile* simpleProfile, ID2D1ColorContext1** colorContext)
	{
		return ((delegate* unmanaged[Stdcall]<ID2D1DeviceContext5*, SimpleColorProfile*, ID2D1ColorContext1**, int>)(lpVtbl[118]))((ID2D1DeviceContext5*)Unsafe.AsPointer(ref this), simpleProfile, colorContext);
	}
	public interface Interface : ID2D1DeviceContext4.Interface
	{
		[VtblIndex(115)]
		HResult CreateSvgDocument(Com.IStream* inputXmlStream, System.Drawing.SizeF viewportSize, ID2D1SvgDocument** svgDocument);

		[VtblIndex(116)]
		void DrawSvgDocument(ID2D1SvgDocument* svgDocument);

		[VtblIndex(117)]
		HResult CreateColorContextFromDxgiColorSpace(Graphics.Dxgi.Common.ColorSpaceType colorSpace, ID2D1ColorContext1** colorContext);

		[VtblIndex(118)]
		HResult CreateColorContextFromSimpleColorProfile(SimpleColorProfile* simpleProfile, ID2D1ColorContext1** colorContext);
	}
}

