Fxc bindings support.

This commit is contained in:
Amer Koleci
2022-09-22 12:21:25 +02:00
parent 5938771eb6
commit 88ca2e6994
18 changed files with 616 additions and 650 deletions

View File

@@ -22,6 +22,7 @@ public static class Program
"Graphics.Direct3D11.json", "Graphics.Direct3D11.json",
"Graphics.Direct3D12.json", "Graphics.Direct3D12.json",
"Graphics.Direct3D.Dxc.json", "Graphics.Direct3D.Dxc.json",
"Graphics.Direct3D.Fxc.json",
"Graphics.Direct2D.Common.json", "Graphics.Direct2D.Common.json",
"Graphics.Imaging.json", "Graphics.Imaging.json",
"Graphics.DirectWrite.json", "Graphics.DirectWrite.json",
@@ -701,6 +702,7 @@ public static class Program
"DWRITE", "DWRITE",
"HDR", "HDR",
"DC", "DC",
"XNA",
}; };
@@ -768,6 +770,10 @@ public static class Program
{ "WICComponentSigning", "WICComponent" }, { "WICComponentSigning", "WICComponent" },
{ "WICPixelFormatNumericRepresentation", "WICPixelFormatNumericRepresentation" }, { "WICPixelFormatNumericRepresentation", "WICPixelFormatNumericRepresentation" },
{ "WICPlanarOptions", "WICPlanarOptions" }, { "WICPlanarOptions", "WICPlanarOptions" },
// FXC
{ "D3DCOMPILER_STRIP_FLAGS", "D3DCOMPILER_STRIP" },
{ "D3D_BLOB_PART", "D3D_BLOB" },
}; };
private static readonly Dictionary<string, string> s_knownEnumValueNames = new() private static readonly Dictionary<string, string> s_knownEnumValueNames = new()
@@ -813,6 +819,14 @@ public static class Program
{"DXC_HASHFLAG", true }, {"DXC_HASHFLAG", true },
{"DxcValidatorFlags", true }, {"DxcValidatorFlags", true },
{"DxcVersionInfoFlags", true }, {"DxcVersionInfoFlags", true },
// FXC
{"D3DCOMPILE_EFFECT", true },
{"D3DCOMPILE", true },
{"D3DCOMPILE_FLAGS2", true },
{"D3DCOMPILE_SECDATA", true },
{"D3D_COMPRESS_SHADER", true },
{"D3D_DISASM", true },
}; };
private static readonly HashSet<string> s_ignoredStartParts = new(StringComparer.OrdinalIgnoreCase) private static readonly HashSet<string> s_ignoredStartParts = new(StringComparer.OrdinalIgnoreCase)
@@ -825,6 +839,7 @@ public static class Program
"D2D", "D2D",
"D2D1", "D2D1",
"DWRITE", "DWRITE",
"D3DCOMPILER",
}; };
private static readonly HashSet<string> s_ignoredParts = new(StringComparer.OrdinalIgnoreCase) private static readonly HashSet<string> s_ignoredParts = new(StringComparer.OrdinalIgnoreCase)
@@ -873,6 +888,14 @@ public static class Program
{ "DXC_HASHFLAG", "DxcHashFlags" }, { "DXC_HASHFLAG", "DxcHashFlags" },
{ "DxcValidatorFlags", "DxcValidatorFlags" }, { "DxcValidatorFlags", "DxcValidatorFlags" },
{ "DxcVersionInfoFlags", "DxcVersionInfoFlags" }, { "DxcVersionInfoFlags", "DxcVersionInfoFlags" },
// FXC
{"D3DCOMPILE", "CompileFlags" },
{"D3DCOMPILE_FLAGS2", "CompileFlags2" },
{"D3DCOMPILE_EFFECT", "CompileEffectFlags" },
{"D3DCOMPILE_SECDATA", "CompileSecondaryFlags" },
{"D3D_COMPRESS_SHADER", "CompressShaderFlags" },
{"D3D_DISASM", "DisasmFlags" },
}; };
private static readonly Dictionary<string, string> s_structFieldTypeRemap = new() private static readonly Dictionary<string, string> s_structFieldTypeRemap = new()
@@ -953,6 +976,13 @@ public static class Program
// WIC // WIC
{ "IWICImagingFactory::CreateDecoderFromFilename::dwDesiredAccess", "NativeFileAccess" }, { "IWICImagingFactory::CreateDecoderFromFilename::dwDesiredAccess", "NativeFileAccess" },
{ "IWICBitmap::Lock::flags", "WICBitmapLockFlags" }, { "IWICBitmap::Lock::flags", "WICBitmapLockFlags" },
// FXC
{ "D3DCompile::Flags1", "D3DCOMPILE" },
{ "D3DCompile2::Flags1", "D3DCOMPILE" },
{ "D3DCompileFromFile::Flags1", "D3DCOMPILE" },
{ "D3DCompressShaders::uFlags", "D3D_COMPRESS_SHADER" },
{ "D3DDisassemble::Flags", "D3D_DISASM" },
}; };
private static readonly HashSet<string> s_visitedEnums = new(); private static readonly HashSet<string> s_visitedEnums = new();
@@ -1108,6 +1138,7 @@ public static class Program
private static void GenerateTypes(CodeWriter writer, ApiData api) private static void GenerateTypes(CodeWriter writer, ApiData api)
{ {
bool regionWritten = false; bool regionWritten = false;
bool needNewLine = false;
foreach (ApiType enumType in api.Types.Where(item => item.Kind.ToLowerInvariant() == "enum")) foreach (ApiType enumType in api.Types.Where(item => item.Kind.ToLowerInvariant() == "enum"))
{ {
if (enumType.Name.StartsWith("D3DX11")) if (enumType.Name.StartsWith("D3DX11"))
@@ -1121,7 +1152,13 @@ public static class Program
regionWritten = true; regionWritten = true;
} }
if (needNewLine)
{
writer.WriteLine();
}
GenerateEnum(writer, enumType, false); GenerateEnum(writer, enumType, false);
needNewLine = true;
s_visitedEnums.Add($"{writer.Api}.{enumType.Name}"); s_visitedEnums.Add($"{writer.Api}.{enumType.Name}");
} }
@@ -1134,6 +1171,7 @@ public static class Program
// Generated enums -> from constants // Generated enums -> from constants
regionWritten = false; regionWritten = false;
needNewLine = false;
Dictionary<string, ApiType> createdEnums = new(); Dictionary<string, ApiType> createdEnums = new();
foreach (ApiDataConstant constant in api.Constants) foreach (ApiDataConstant constant in api.Constants)
@@ -1185,7 +1223,13 @@ public static class Program
regionWritten = true; regionWritten = true;
} }
if (needNewLine)
{
writer.WriteLine();
}
GenerateEnum(writer, enumType, true); GenerateEnum(writer, enumType, true);
needNewLine = true;
} }
if (regionWritten) if (regionWritten)
@@ -1196,6 +1240,7 @@ public static class Program
// Unions // Unions
regionWritten = false; regionWritten = false;
needNewLine = true;
foreach (ApiType structType in api.Types.Where(item => item.Kind.ToLowerInvariant() == "union")) foreach (ApiType structType in api.Types.Where(item => item.Kind.ToLowerInvariant() == "union"))
{ {
@@ -1216,7 +1261,13 @@ public static class Program
regionWritten = true; regionWritten = true;
} }
if (needNewLine)
{
writer.WriteLine();
}
GenerateStruct(api, writer, structType); GenerateStruct(api, writer, structType);
needNewLine = true;
s_visitedStructs.Add($"{writer.Api}.{structType.Name}"); s_visitedStructs.Add($"{writer.Api}.{structType.Name}");
} }
@@ -1374,16 +1425,23 @@ public static class Program
writer.WriteLine($"#region Functions"); writer.WriteLine($"#region Functions");
using (writer.PushBlock($"public static unsafe partial class Apis")) using (writer.PushBlock($"public static unsafe partial class Apis"))
{ {
bool needNewLine = false;
foreach (ApiType function in api.Functions) foreach (ApiType function in api.Functions)
{ {
if (function.Name.StartsWith("D3DX11") || if (function.Name.StartsWith("D3DX11") ||
function.Name == "D3DDisassemble11Trace") function.Name == "D3DDisassemble11Trace" ||
function.Name == "D3DDisassemble10Effect")
{ {
continue; continue;
} }
if (needNewLine)
{
writer.WriteLine();
}
WriteFunction(writer, api, function, string.Empty, false, false, true); WriteFunction(writer, api, function, string.Empty, false, false, true);
writer.WriteLine(); needNewLine = true;
} }
} }
@@ -1416,7 +1474,7 @@ public static class Program
foreach (ApiParameter parameter in function.Params) foreach (ApiParameter parameter in function.Params)
{ {
GetParameterSignature(api, writer, parameter, GetParameterSignature(api, writer, parameter,
string.Empty, function.Name,
out string parameterType, out string parameterType,
out string parameterName); out string parameterName);
@@ -1546,11 +1604,6 @@ public static class Program
baseTypeName = "byte"; baseTypeName = "byte";
} }
if (enumType.Name == "WICColorContextType")
{
}
using (writer.PushBlock($"public enum {csTypeName} : {baseTypeName}")) using (writer.PushBlock($"public enum {csTypeName} : {baseTypeName}"))
{ {
if (isFlags && if (isFlags &&
@@ -1585,6 +1638,15 @@ public static class Program
continue; continue;
} }
if (autoGenerated &&
enumType.Name == "D3DCOMPILE" &&
(enumItem.Name.StartsWith("D3DCOMPILE_EFFECT_") ||
enumItem.Name.StartsWith("D3DCOMPILE_FLAGS2_") ||
enumItem.Name.StartsWith("D3DCOMPILE_SECDATA_")))
{
continue;
}
string enumValueName = GetEnumItemName(enumType, enumItem, enumPrefix, skipPrettify); string enumValueName = GetEnumItemName(enumType, enumItem, enumPrefix, skipPrettify);
if (!autoGenerated) if (!autoGenerated)
@@ -1605,8 +1667,6 @@ public static class Program
writer.WriteLine($"{enumValueName} = {enumItem.Value},"); writer.WriteLine($"{enumValueName} = {enumItem.Value},");
} }
} }
writer.WriteLine();
} }
private static string GetEnumItemName(ApiType enumType, ApiEnumValue enumItem, string enumPrefix, bool skipPrettify) private static string GetEnumItemName(ApiType enumType, ApiEnumValue enumItem, string enumPrefix, bool skipPrettify)
@@ -1883,8 +1943,6 @@ public static class Program
} }
} }
} }
writer.WriteLine();
} }
private static void GenerateComType( private static void GenerateComType(

View File

@@ -248,7 +248,6 @@ public enum CompositeMode : uint
/// <unmanaged>D2D1_COMPOSITE_MODE_MASK_INVERT</unmanaged> /// <unmanaged>D2D1_COMPOSITE_MODE_MASK_INVERT</unmanaged>
MaskInvert = 12, MaskInvert = 12,
} }
#endregion Enums #endregion Enums
#region Structs #region Structs
@@ -262,7 +261,6 @@ public partial struct PixelFormat
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_PIXEL_FORMAT::alphaMode"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_PIXEL_FORMAT::alphaMode"]/*' />
public AlphaMode alphaMode; public AlphaMode alphaMode;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D_RECT_F"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D_RECT_F"]/*' />
/// <unmanaged>D2D_RECT_F</unmanaged> /// <unmanaged>D2D_RECT_F</unmanaged>
public partial struct RectF public partial struct RectF
@@ -279,7 +277,6 @@ public partial struct RectF
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D_RECT_F::bottom"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D_RECT_F::bottom"]/*' />
public float bottom; public float bottom;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D_RECT_U"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D_RECT_U"]/*' />
/// <unmanaged>D2D_RECT_U</unmanaged> /// <unmanaged>D2D_RECT_U</unmanaged>
public partial struct RectU public partial struct RectU
@@ -296,7 +293,6 @@ public partial struct RectU
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D_RECT_U::bottom"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D_RECT_U::bottom"]/*' />
public uint bottom; public uint bottom;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BEZIER_SEGMENT"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BEZIER_SEGMENT"]/*' />
/// <unmanaged>D2D1_BEZIER_SEGMENT</unmanaged> /// <unmanaged>D2D1_BEZIER_SEGMENT</unmanaged>
public partial struct BezierSegment public partial struct BezierSegment
@@ -310,7 +306,6 @@ public partial struct BezierSegment
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BEZIER_SEGMENT::point3"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BEZIER_SEGMENT::point3"]/*' />
public System.Drawing.PointF point3; public System.Drawing.PointF point3;
} }
#endregion Structs #endregion Structs
#region COM Types #region COM Types

View File

@@ -4627,7 +4627,6 @@ public enum ColorContextType : uint
/// <unmanaged>D2D1_COLOR_CONTEXT_TYPE_DXGI</unmanaged> /// <unmanaged>D2D1_COLOR_CONTEXT_TYPE_DXGI</unmanaged>
DXGI = 2, DXGI = 2,
} }
#endregion Enums #endregion Enums
#region Structs #region Structs
@@ -4644,7 +4643,6 @@ public partial struct BitmapProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BITMAP_PROPERTIES::dpiY"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BITMAP_PROPERTIES::dpiY"]/*' />
public float dpiY; public float dpiY;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_GRADIENT_STOP"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_GRADIENT_STOP"]/*' />
/// <unmanaged>D2D1_GRADIENT_STOP</unmanaged> /// <unmanaged>D2D1_GRADIENT_STOP</unmanaged>
public partial struct GradientStop public partial struct GradientStop
@@ -4655,7 +4653,6 @@ public partial struct GradientStop
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_GRADIENT_STOP::color"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_GRADIENT_STOP::color"]/*' />
public Color4 color; public Color4 color;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BRUSH_PROPERTIES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BRUSH_PROPERTIES"]/*' />
/// <unmanaged>D2D1_BRUSH_PROPERTIES</unmanaged> /// <unmanaged>D2D1_BRUSH_PROPERTIES</unmanaged>
public partial struct BrushProperties public partial struct BrushProperties
@@ -4666,7 +4663,6 @@ public partial struct BrushProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BRUSH_PROPERTIES::transform"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BRUSH_PROPERTIES::transform"]/*' />
public Matrix3x2 transform; public Matrix3x2 transform;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BITMAP_BRUSH_PROPERTIES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BITMAP_BRUSH_PROPERTIES"]/*' />
/// <unmanaged>D2D1_BITMAP_BRUSH_PROPERTIES</unmanaged> /// <unmanaged>D2D1_BITMAP_BRUSH_PROPERTIES</unmanaged>
public partial struct BitmapBrushProperties public partial struct BitmapBrushProperties
@@ -4680,7 +4676,6 @@ public partial struct BitmapBrushProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BITMAP_BRUSH_PROPERTIES::interpolationMode"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BITMAP_BRUSH_PROPERTIES::interpolationMode"]/*' />
public BitmapInterpolationMode interpolationMode; public BitmapInterpolationMode interpolationMode;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES"]/*' />
/// <unmanaged>D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES</unmanaged> /// <unmanaged>D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES</unmanaged>
public partial struct LinearGradientBrushProperties public partial struct LinearGradientBrushProperties
@@ -4691,7 +4686,6 @@ public partial struct LinearGradientBrushProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES::endPoint"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES::endPoint"]/*' />
public System.Drawing.PointF endPoint; public System.Drawing.PointF endPoint;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES"]/*' />
/// <unmanaged>D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES</unmanaged> /// <unmanaged>D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES</unmanaged>
public partial struct RadialGradientBrushProperties public partial struct RadialGradientBrushProperties
@@ -4708,7 +4702,6 @@ public partial struct RadialGradientBrushProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES::radiusY"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES::radiusY"]/*' />
public float radiusY; public float radiusY;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_TRIANGLE"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_TRIANGLE"]/*' />
/// <unmanaged>D2D1_TRIANGLE</unmanaged> /// <unmanaged>D2D1_TRIANGLE</unmanaged>
public partial struct Triangle public partial struct Triangle
@@ -4722,7 +4715,6 @@ public partial struct Triangle
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_TRIANGLE::point3"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_TRIANGLE::point3"]/*' />
public System.Drawing.PointF point3; public System.Drawing.PointF point3;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_ARC_SEGMENT"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_ARC_SEGMENT"]/*' />
/// <unmanaged>D2D1_ARC_SEGMENT</unmanaged> /// <unmanaged>D2D1_ARC_SEGMENT</unmanaged>
public partial struct ArcSegment public partial struct ArcSegment
@@ -4742,7 +4734,6 @@ public partial struct ArcSegment
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_ARC_SEGMENT::arcSize"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_ARC_SEGMENT::arcSize"]/*' />
public ArcSize arcSize; public ArcSize arcSize;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_QUADRATIC_BEZIER_SEGMENT"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_QUADRATIC_BEZIER_SEGMENT"]/*' />
/// <unmanaged>D2D1_QUADRATIC_BEZIER_SEGMENT</unmanaged> /// <unmanaged>D2D1_QUADRATIC_BEZIER_SEGMENT</unmanaged>
public partial struct QuadraticBezierSegment public partial struct QuadraticBezierSegment
@@ -4753,7 +4744,6 @@ public partial struct QuadraticBezierSegment
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_QUADRATIC_BEZIER_SEGMENT::point2"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_QUADRATIC_BEZIER_SEGMENT::point2"]/*' />
public System.Drawing.PointF point2; public System.Drawing.PointF point2;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_ELLIPSE"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_ELLIPSE"]/*' />
/// <unmanaged>D2D1_ELLIPSE</unmanaged> /// <unmanaged>D2D1_ELLIPSE</unmanaged>
public partial struct Ellipse public partial struct Ellipse
@@ -4767,7 +4757,6 @@ public partial struct Ellipse
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_ELLIPSE::radiusY"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_ELLIPSE::radiusY"]/*' />
public float radiusY; public float radiusY;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_ROUNDED_RECT"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_ROUNDED_RECT"]/*' />
/// <unmanaged>D2D1_ROUNDED_RECT</unmanaged> /// <unmanaged>D2D1_ROUNDED_RECT</unmanaged>
public partial struct RoundedRect public partial struct RoundedRect
@@ -4781,7 +4770,6 @@ public partial struct RoundedRect
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_ROUNDED_RECT::radiusY"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_ROUNDED_RECT::radiusY"]/*' />
public float radiusY; public float radiusY;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_STROKE_STYLE_PROPERTIES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_STROKE_STYLE_PROPERTIES"]/*' />
/// <unmanaged>D2D1_STROKE_STYLE_PROPERTIES</unmanaged> /// <unmanaged>D2D1_STROKE_STYLE_PROPERTIES</unmanaged>
public partial struct StrokeStyleProperties public partial struct StrokeStyleProperties
@@ -4807,7 +4795,6 @@ public partial struct StrokeStyleProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_STROKE_STYLE_PROPERTIES::dashOffset"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_STROKE_STYLE_PROPERTIES::dashOffset"]/*' />
public float dashOffset; public float dashOffset;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_LAYER_PARAMETERS"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_LAYER_PARAMETERS"]/*' />
/// <unmanaged>D2D1_LAYER_PARAMETERS</unmanaged> /// <unmanaged>D2D1_LAYER_PARAMETERS</unmanaged>
public partial struct LayerParameters public partial struct LayerParameters
@@ -4833,7 +4820,6 @@ public partial struct LayerParameters
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_LAYER_PARAMETERS::layerOptions"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_LAYER_PARAMETERS::layerOptions"]/*' />
public LayerOptions layerOptions; public LayerOptions layerOptions;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RENDER_TARGET_PROPERTIES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RENDER_TARGET_PROPERTIES"]/*' />
/// <unmanaged>D2D1_RENDER_TARGET_PROPERTIES</unmanaged> /// <unmanaged>D2D1_RENDER_TARGET_PROPERTIES</unmanaged>
public partial struct RenderTargetProperties public partial struct RenderTargetProperties
@@ -4856,7 +4842,6 @@ public partial struct RenderTargetProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RENDER_TARGET_PROPERTIES::minLevel"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RENDER_TARGET_PROPERTIES::minLevel"]/*' />
public FeatureLevel minLevel; public FeatureLevel minLevel;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_HWND_RENDER_TARGET_PROPERTIES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_HWND_RENDER_TARGET_PROPERTIES"]/*' />
/// <unmanaged>D2D1_HWND_RENDER_TARGET_PROPERTIES</unmanaged> /// <unmanaged>D2D1_HWND_RENDER_TARGET_PROPERTIES</unmanaged>
public partial struct HwndRenderTargetProperties public partial struct HwndRenderTargetProperties
@@ -4870,7 +4855,6 @@ public partial struct HwndRenderTargetProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_HWND_RENDER_TARGET_PROPERTIES::presentOptions"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_HWND_RENDER_TARGET_PROPERTIES::presentOptions"]/*' />
public PresentOptions presentOptions; public PresentOptions presentOptions;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_DRAWING_STATE_DESCRIPTION"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_DRAWING_STATE_DESCRIPTION"]/*' />
/// <unmanaged>D2D1_DRAWING_STATE_DESCRIPTION</unmanaged> /// <unmanaged>D2D1_DRAWING_STATE_DESCRIPTION</unmanaged>
public partial struct DrawingStateDescription public partial struct DrawingStateDescription
@@ -4890,7 +4874,6 @@ public partial struct DrawingStateDescription
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_DRAWING_STATE_DESCRIPTION::transform"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_DRAWING_STATE_DESCRIPTION::transform"]/*' />
public Matrix3x2 transform; public Matrix3x2 transform;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_FACTORY_OPTIONS"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_FACTORY_OPTIONS"]/*' />
/// <unmanaged>D2D1_FACTORY_OPTIONS</unmanaged> /// <unmanaged>D2D1_FACTORY_OPTIONS</unmanaged>
public partial struct FactoryOptions public partial struct FactoryOptions
@@ -4898,7 +4881,6 @@ public partial struct FactoryOptions
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_FACTORY_OPTIONS::debugLevel"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_FACTORY_OPTIONS::debugLevel"]/*' />
public DebugLevel debugLevel; public DebugLevel debugLevel;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BITMAP_PROPERTIES1"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BITMAP_PROPERTIES1"]/*' />
/// <unmanaged>D2D1_BITMAP_PROPERTIES1</unmanaged> /// <unmanaged>D2D1_BITMAP_PROPERTIES1</unmanaged>
public partial struct BitmapProperties1 public partial struct BitmapProperties1
@@ -4918,7 +4900,6 @@ public partial struct BitmapProperties1
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BITMAP_PROPERTIES1::colorContext"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BITMAP_PROPERTIES1::colorContext"]/*' />
public unsafe ID2D1ColorContext* colorContext; public unsafe ID2D1ColorContext* colorContext;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_MAPPED_RECT"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_MAPPED_RECT"]/*' />
/// <unmanaged>D2D1_MAPPED_RECT</unmanaged> /// <unmanaged>D2D1_MAPPED_RECT</unmanaged>
public partial struct MappedRect public partial struct MappedRect
@@ -4929,7 +4910,6 @@ public partial struct MappedRect
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_MAPPED_RECT::bits"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_MAPPED_RECT::bits"]/*' />
public unsafe byte* bits; public unsafe byte* bits;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RENDERING_CONTROLS"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RENDERING_CONTROLS"]/*' />
/// <unmanaged>D2D1_RENDERING_CONTROLS</unmanaged> /// <unmanaged>D2D1_RENDERING_CONTROLS</unmanaged>
public partial struct RenderingControls public partial struct RenderingControls
@@ -4940,7 +4920,6 @@ public partial struct RenderingControls
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RENDERING_CONTROLS::tileSize"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RENDERING_CONTROLS::tileSize"]/*' />
public System.Drawing.Size tileSize; public System.Drawing.Size tileSize;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_EFFECT_INPUT_DESCRIPTION"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_EFFECT_INPUT_DESCRIPTION"]/*' />
/// <unmanaged>D2D1_EFFECT_INPUT_DESCRIPTION</unmanaged> /// <unmanaged>D2D1_EFFECT_INPUT_DESCRIPTION</unmanaged>
public partial struct EffectInputDescription public partial struct EffectInputDescription
@@ -4954,7 +4933,6 @@ public partial struct EffectInputDescription
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_EFFECT_INPUT_DESCRIPTION::inputRectangle"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_EFFECT_INPUT_DESCRIPTION::inputRectangle"]/*' />
public Common.RectF inputRectangle; public Common.RectF inputRectangle;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_POINT_DESCRIPTION"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_POINT_DESCRIPTION"]/*' />
/// <unmanaged>D2D1_POINT_DESCRIPTION</unmanaged> /// <unmanaged>D2D1_POINT_DESCRIPTION</unmanaged>
public partial struct PointDescription public partial struct PointDescription
@@ -4974,7 +4952,6 @@ public partial struct PointDescription
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_POINT_DESCRIPTION::lengthToEndSegment"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_POINT_DESCRIPTION::lengthToEndSegment"]/*' />
public float lengthToEndSegment; public float lengthToEndSegment;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_IMAGE_BRUSH_PROPERTIES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_IMAGE_BRUSH_PROPERTIES"]/*' />
/// <unmanaged>D2D1_IMAGE_BRUSH_PROPERTIES</unmanaged> /// <unmanaged>D2D1_IMAGE_BRUSH_PROPERTIES</unmanaged>
public partial struct ImageBrushProperties public partial struct ImageBrushProperties
@@ -4991,7 +4968,6 @@ public partial struct ImageBrushProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_IMAGE_BRUSH_PROPERTIES::interpolationMode"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_IMAGE_BRUSH_PROPERTIES::interpolationMode"]/*' />
public InterpolationMode interpolationMode; public InterpolationMode interpolationMode;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BITMAP_BRUSH_PROPERTIES1"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BITMAP_BRUSH_PROPERTIES1"]/*' />
/// <unmanaged>D2D1_BITMAP_BRUSH_PROPERTIES1</unmanaged> /// <unmanaged>D2D1_BITMAP_BRUSH_PROPERTIES1</unmanaged>
public partial struct BitmapBrushProperties1 public partial struct BitmapBrushProperties1
@@ -5005,7 +4981,6 @@ public partial struct BitmapBrushProperties1
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BITMAP_BRUSH_PROPERTIES1::interpolationMode"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BITMAP_BRUSH_PROPERTIES1::interpolationMode"]/*' />
public InterpolationMode interpolationMode; public InterpolationMode interpolationMode;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_STROKE_STYLE_PROPERTIES1"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_STROKE_STYLE_PROPERTIES1"]/*' />
/// <unmanaged>D2D1_STROKE_STYLE_PROPERTIES1</unmanaged> /// <unmanaged>D2D1_STROKE_STYLE_PROPERTIES1</unmanaged>
public partial struct StrokeStyleProperties1 public partial struct StrokeStyleProperties1
@@ -5034,7 +5009,6 @@ public partial struct StrokeStyleProperties1
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_STROKE_STYLE_PROPERTIES1::transformType"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_STROKE_STYLE_PROPERTIES1::transformType"]/*' />
public StrokeTransformType transformType; public StrokeTransformType transformType;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_LAYER_PARAMETERS1"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_LAYER_PARAMETERS1"]/*' />
/// <unmanaged>D2D1_LAYER_PARAMETERS1</unmanaged> /// <unmanaged>D2D1_LAYER_PARAMETERS1</unmanaged>
public partial struct LayerParameters1 public partial struct LayerParameters1
@@ -5060,7 +5034,6 @@ public partial struct LayerParameters1
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_LAYER_PARAMETERS1::layerOptions"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_LAYER_PARAMETERS1::layerOptions"]/*' />
public LayerOptions1 layerOptions; public LayerOptions1 layerOptions;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_DRAWING_STATE_DESCRIPTION1"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_DRAWING_STATE_DESCRIPTION1"]/*' />
/// <unmanaged>D2D1_DRAWING_STATE_DESCRIPTION1</unmanaged> /// <unmanaged>D2D1_DRAWING_STATE_DESCRIPTION1</unmanaged>
public partial struct DrawingStateDescription1 public partial struct DrawingStateDescription1
@@ -5086,7 +5059,6 @@ public partial struct DrawingStateDescription1
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_DRAWING_STATE_DESCRIPTION1::unitMode"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_DRAWING_STATE_DESCRIPTION1::unitMode"]/*' />
public UnitMode unitMode; public UnitMode unitMode;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_PRINT_CONTROL_PROPERTIES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_PRINT_CONTROL_PROPERTIES"]/*' />
/// <unmanaged>D2D1_PRINT_CONTROL_PROPERTIES</unmanaged> /// <unmanaged>D2D1_PRINT_CONTROL_PROPERTIES</unmanaged>
public partial struct PrintControlProperties public partial struct PrintControlProperties
@@ -5100,7 +5072,6 @@ public partial struct PrintControlProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_PRINT_CONTROL_PROPERTIES::colorSpace"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_PRINT_CONTROL_PROPERTIES::colorSpace"]/*' />
public ColorSpace colorSpace; public ColorSpace colorSpace;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_CREATION_PROPERTIES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_CREATION_PROPERTIES"]/*' />
/// <unmanaged>D2D1_CREATION_PROPERTIES</unmanaged> /// <unmanaged>D2D1_CREATION_PROPERTIES</unmanaged>
public partial struct CreationProperties public partial struct CreationProperties
@@ -5114,7 +5085,6 @@ public partial struct CreationProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_CREATION_PROPERTIES::options"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_CREATION_PROPERTIES::options"]/*' />
public DeviceContextOptions options; public DeviceContextOptions options;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_PROPERTY_BINDING"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_PROPERTY_BINDING"]/*' />
/// <unmanaged>D2D1_PROPERTY_BINDING</unmanaged> /// <unmanaged>D2D1_PROPERTY_BINDING</unmanaged>
public partial struct PropertyBinding public partial struct PropertyBinding
@@ -5128,7 +5098,6 @@ public partial struct PropertyBinding
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_PROPERTY_BINDING::getFunction"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_PROPERTY_BINDING::getFunction"]/*' />
public unsafe delegate* unmanaged[Stdcall]<IUnknown*, byte*, uint, uint*, HResult> getFunction; public unsafe delegate* unmanaged[Stdcall]<IUnknown*, byte*, uint, uint*, HResult> getFunction;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RESOURCE_TEXTURE_PROPERTIES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RESOURCE_TEXTURE_PROPERTIES"]/*' />
/// <unmanaged>D2D1_RESOURCE_TEXTURE_PROPERTIES</unmanaged> /// <unmanaged>D2D1_RESOURCE_TEXTURE_PROPERTIES</unmanaged>
public partial struct ResourceTextureProperties public partial struct ResourceTextureProperties
@@ -5151,7 +5120,6 @@ public partial struct ResourceTextureProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RESOURCE_TEXTURE_PROPERTIES::extendModes"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_RESOURCE_TEXTURE_PROPERTIES::extendModes"]/*' />
public unsafe ExtendMode* extendModes; public unsafe ExtendMode* extendModes;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INPUT_ELEMENT_DESC"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INPUT_ELEMENT_DESC"]/*' />
/// <unmanaged>D2D1_INPUT_ELEMENT_DESC</unmanaged> /// <unmanaged>D2D1_INPUT_ELEMENT_DESC</unmanaged>
public partial struct InputElementDescription public partial struct InputElementDescription
@@ -5171,7 +5139,6 @@ public partial struct InputElementDescription
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INPUT_ELEMENT_DESC::alignedByteOffset"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INPUT_ELEMENT_DESC::alignedByteOffset"]/*' />
public uint alignedByteOffset; public uint alignedByteOffset;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_VERTEX_BUFFER_PROPERTIES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_VERTEX_BUFFER_PROPERTIES"]/*' />
/// <unmanaged>D2D1_VERTEX_BUFFER_PROPERTIES</unmanaged> /// <unmanaged>D2D1_VERTEX_BUFFER_PROPERTIES</unmanaged>
public partial struct VertexBufferProperties public partial struct VertexBufferProperties
@@ -5188,7 +5155,6 @@ public partial struct VertexBufferProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_VERTEX_BUFFER_PROPERTIES::byteWidth"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_VERTEX_BUFFER_PROPERTIES::byteWidth"]/*' />
public uint byteWidth; public uint byteWidth;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES"]/*' />
/// <unmanaged>D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES</unmanaged> /// <unmanaged>D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES</unmanaged>
public partial struct CustomVertexBufferProperties public partial struct CustomVertexBufferProperties
@@ -5208,7 +5174,6 @@ public partial struct CustomVertexBufferProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES::stride"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES::stride"]/*' />
public uint stride; public uint stride;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_VERTEX_RANGE"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_VERTEX_RANGE"]/*' />
/// <unmanaged>D2D1_VERTEX_RANGE</unmanaged> /// <unmanaged>D2D1_VERTEX_RANGE</unmanaged>
public partial struct VertexRange public partial struct VertexRange
@@ -5219,7 +5184,6 @@ public partial struct VertexRange
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_VERTEX_RANGE::vertexCount"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_VERTEX_RANGE::vertexCount"]/*' />
public uint vertexCount; public uint vertexCount;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BLEND_DESCRIPTION"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BLEND_DESCRIPTION"]/*' />
/// <unmanaged>D2D1_BLEND_DESCRIPTION</unmanaged> /// <unmanaged>D2D1_BLEND_DESCRIPTION</unmanaged>
public partial struct BlendDescription public partial struct BlendDescription
@@ -5245,7 +5209,6 @@ public partial struct BlendDescription
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BLEND_DESCRIPTION::blendFactor"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_BLEND_DESCRIPTION::blendFactor"]/*' />
public unsafe fixed float blendFactor[4]; public unsafe fixed float blendFactor[4];
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INPUT_DESCRIPTION"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INPUT_DESCRIPTION"]/*' />
/// <unmanaged>D2D1_INPUT_DESCRIPTION</unmanaged> /// <unmanaged>D2D1_INPUT_DESCRIPTION</unmanaged>
public partial struct InputDescription public partial struct InputDescription
@@ -5256,7 +5219,6 @@ public partial struct InputDescription
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INPUT_DESCRIPTION::levelOfDetailCount"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INPUT_DESCRIPTION::levelOfDetailCount"]/*' />
public uint levelOfDetailCount; public uint levelOfDetailCount;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_FEATURE_DATA_DOUBLES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_FEATURE_DATA_DOUBLES"]/*' />
/// <unmanaged>D2D1_FEATURE_DATA_DOUBLES</unmanaged> /// <unmanaged>D2D1_FEATURE_DATA_DOUBLES</unmanaged>
public partial struct FeatureDataDoubles public partial struct FeatureDataDoubles
@@ -5264,7 +5226,6 @@ public partial struct FeatureDataDoubles
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_FEATURE_DATA_DOUBLES::doublePrecisionFloatShaderOps"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_FEATURE_DATA_DOUBLES::doublePrecisionFloatShaderOps"]/*' />
public Bool32 doublePrecisionFloatShaderOps; public Bool32 doublePrecisionFloatShaderOps;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS"]/*' />
/// <unmanaged>D2D1_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS</unmanaged> /// <unmanaged>D2D1_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS</unmanaged>
public partial struct FeatureDataD3D10XHardwareOptions public partial struct FeatureDataD3D10XHardwareOptions
@@ -5272,7 +5233,6 @@ public partial struct FeatureDataD3D10XHardwareOptions
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS::computeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS::computeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x"]/*' />
public Bool32 computeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x; public Bool32 computeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SVG_LENGTH"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SVG_LENGTH"]/*' />
/// <unmanaged>D2D1_SVG_LENGTH</unmanaged> /// <unmanaged>D2D1_SVG_LENGTH</unmanaged>
public partial struct SvgLength public partial struct SvgLength
@@ -5283,7 +5243,6 @@ public partial struct SvgLength
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SVG_LENGTH::units"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SVG_LENGTH::units"]/*' />
public SvgLengthUnits units; public SvgLengthUnits units;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SVG_PRESERVE_ASPECT_RATIO"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SVG_PRESERVE_ASPECT_RATIO"]/*' />
/// <unmanaged>D2D1_SVG_PRESERVE_ASPECT_RATIO</unmanaged> /// <unmanaged>D2D1_SVG_PRESERVE_ASPECT_RATIO</unmanaged>
public partial struct SvgPreserveAspectRatio public partial struct SvgPreserveAspectRatio
@@ -5297,7 +5256,6 @@ public partial struct SvgPreserveAspectRatio
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SVG_PRESERVE_ASPECT_RATIO::meetOrSlice"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SVG_PRESERVE_ASPECT_RATIO::meetOrSlice"]/*' />
public SvgAspectScaling meetOrSlice; public SvgAspectScaling meetOrSlice;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SVG_VIEWBOX"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SVG_VIEWBOX"]/*' />
/// <unmanaged>D2D1_SVG_VIEWBOX</unmanaged> /// <unmanaged>D2D1_SVG_VIEWBOX</unmanaged>
public partial struct SvgViewbox public partial struct SvgViewbox
@@ -5314,7 +5272,6 @@ public partial struct SvgViewbox
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SVG_VIEWBOX::height"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SVG_VIEWBOX::height"]/*' />
public float height; public float height;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES"]/*' />
/// <unmanaged>D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES</unmanaged> /// <unmanaged>D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES</unmanaged>
public partial struct TransformedImageSourceProperties public partial struct TransformedImageSourceProperties
@@ -5334,7 +5291,6 @@ public partial struct TransformedImageSourceProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES::options"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES::options"]/*' />
public TransformedImageSourceOptions options; public TransformedImageSourceOptions options;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INK_POINT"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INK_POINT"]/*' />
/// <unmanaged>D2D1_INK_POINT</unmanaged> /// <unmanaged>D2D1_INK_POINT</unmanaged>
public partial struct InkPoint public partial struct InkPoint
@@ -5348,7 +5304,6 @@ public partial struct InkPoint
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INK_POINT::radius"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INK_POINT::radius"]/*' />
public float radius; public float radius;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INK_BEZIER_SEGMENT"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INK_BEZIER_SEGMENT"]/*' />
/// <unmanaged>D2D1_INK_BEZIER_SEGMENT</unmanaged> /// <unmanaged>D2D1_INK_BEZIER_SEGMENT</unmanaged>
public partial struct InkBezierSegment public partial struct InkBezierSegment
@@ -5362,7 +5317,6 @@ public partial struct InkBezierSegment
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INK_BEZIER_SEGMENT::point3"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INK_BEZIER_SEGMENT::point3"]/*' />
public InkPoint point3; public InkPoint point3;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INK_STYLE_PROPERTIES"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INK_STYLE_PROPERTIES"]/*' />
/// <unmanaged>D2D1_INK_STYLE_PROPERTIES</unmanaged> /// <unmanaged>D2D1_INK_STYLE_PROPERTIES</unmanaged>
public partial struct InkStyleProperties public partial struct InkStyleProperties
@@ -5373,7 +5327,6 @@ public partial struct InkStyleProperties
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INK_STYLE_PROPERTIES::nibTransform"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_INK_STYLE_PROPERTIES::nibTransform"]/*' />
public Matrix3x2 nibTransform; public Matrix3x2 nibTransform;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_GRADIENT_MESH_PATCH"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_GRADIENT_MESH_PATCH"]/*' />
/// <unmanaged>D2D1_GRADIENT_MESH_PATCH</unmanaged> /// <unmanaged>D2D1_GRADIENT_MESH_PATCH</unmanaged>
public partial struct GradientMeshPatch public partial struct GradientMeshPatch
@@ -5450,7 +5403,6 @@ public partial struct GradientMeshPatch
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_GRADIENT_MESH_PATCH::rightEdgeMode"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_GRADIENT_MESH_PATCH::rightEdgeMode"]/*' />
public PatchEdgeMode rightEdgeMode; public PatchEdgeMode rightEdgeMode;
} }
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SIMPLE_COLOR_PROFILE"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SIMPLE_COLOR_PROFILE"]/*' />
/// <unmanaged>D2D1_SIMPLE_COLOR_PROFILE</unmanaged> /// <unmanaged>D2D1_SIMPLE_COLOR_PROFILE</unmanaged>
public partial struct SimpleColorProfile public partial struct SimpleColorProfile
@@ -5470,7 +5422,6 @@ public partial struct SimpleColorProfile
/// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SIMPLE_COLOR_PROFILE::gamma"]/*' /> /// <include file='../Direct2D.xml' path='doc/member[@name="D2D1_SIMPLE_COLOR_PROFILE::gamma"]/*' />
public Gamma1 gamma; public Gamma1 gamma;
} }
#endregion Structs #endregion Structs
#region COM Types #region COM Types
@@ -5517,6 +5468,5 @@ public static unsafe partial class Apis
[DllImport("d2d1", ExactSpelling = true)] [DllImport("d2d1", ExactSpelling = true)]
public static extern void D2D1GetGradientMeshInteriorPointsFromCoonsPatch(System.Drawing.PointF* pPoint0, System.Drawing.PointF* pPoint1, System.Drawing.PointF* pPoint2, System.Drawing.PointF* pPoint3, System.Drawing.PointF* pPoint4, System.Drawing.PointF* pPoint5, System.Drawing.PointF* pPoint6, System.Drawing.PointF* pPoint7, System.Drawing.PointF* pPoint8, System.Drawing.PointF* pPoint9, System.Drawing.PointF* pPoint10, System.Drawing.PointF* pPoint11, System.Drawing.PointF* pTensorPoint11, System.Drawing.PointF* pTensorPoint12, System.Drawing.PointF* pTensorPoint21, System.Drawing.PointF* pTensorPoint22); public static extern void D2D1GetGradientMeshInteriorPointsFromCoonsPatch(System.Drawing.PointF* pPoint0, System.Drawing.PointF* pPoint1, System.Drawing.PointF* pPoint2, System.Drawing.PointF* pPoint3, System.Drawing.PointF* pPoint4, System.Drawing.PointF* pPoint5, System.Drawing.PointF* pPoint6, System.Drawing.PointF* pPoint7, System.Drawing.PointF* pPoint8, System.Drawing.PointF* pPoint9, System.Drawing.PointF* pPoint10, System.Drawing.PointF* pPoint11, System.Drawing.PointF* pTensorPoint11, System.Drawing.PointF* pTensorPoint12, System.Drawing.PointF* pTensorPoint21, System.Drawing.PointF* pTensorPoint22);
} }
#endregion Functions #endregion Functions

View File

@@ -331,7 +331,6 @@ public enum DxcOutKind : int
/// <unmanaged>DXC_OUT_EXTRA_OUTPUTS</unmanaged> /// <unmanaged>DXC_OUT_EXTRA_OUTPUTS</unmanaged>
ExtraOutputs = 10, ExtraOutputs = 10,
} }
#endregion Enums #endregion Enums
#region Generated Enums #region Generated Enums
@@ -372,7 +371,6 @@ public enum DxcVersionInfoFlags : uint
/// <unmanaged>DxcVersionInfoFlags_Internal</unmanaged> /// <unmanaged>DxcVersionInfoFlags_Internal</unmanaged>
Internal = 2, Internal = 2,
} }
#endregion Generated Enums #endregion Generated Enums
#region Structs #region Structs
@@ -386,7 +384,6 @@ public partial struct DxcShaderHash
/// <include file='../Direct3D.xml' path='doc/member[@name="DxcShaderHash::HashDigest"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="DxcShaderHash::HashDigest"]/*' />
public unsafe fixed byte HashDigest[16]; public unsafe fixed byte HashDigest[16];
} }
/// <include file='../Direct3D.xml' path='doc/member[@name="DxcBuffer"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="DxcBuffer"]/*' />
/// <unmanaged>DxcBuffer</unmanaged> /// <unmanaged>DxcBuffer</unmanaged>
public partial struct DxcBuffer public partial struct DxcBuffer
@@ -400,7 +397,6 @@ public partial struct DxcBuffer
/// <include file='../Direct3D.xml' path='doc/member[@name="DxcBuffer::Encoding"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="DxcBuffer::Encoding"]/*' />
public uint Encoding; public uint Encoding;
} }
/// <include file='../Direct3D.xml' path='doc/member[@name="DxcDefine"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="DxcDefine"]/*' />
/// <unmanaged>DxcDefine</unmanaged> /// <unmanaged>DxcDefine</unmanaged>
public partial struct DxcDefine public partial struct DxcDefine
@@ -411,7 +407,6 @@ public partial struct DxcDefine
/// <include file='../Direct3D.xml' path='doc/member[@name="DxcDefine::Value"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="DxcDefine::Value"]/*' />
public unsafe ushort* Value; public unsafe ushort* Value;
} }
/// <include file='../Direct3D.xml' path='doc/member[@name="DxcArgPair"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="DxcArgPair"]/*' />
/// <unmanaged>DxcArgPair</unmanaged> /// <unmanaged>DxcArgPair</unmanaged>
public partial struct DxcArgPair public partial struct DxcArgPair
@@ -422,7 +417,6 @@ public partial struct DxcArgPair
/// <include file='../Direct3D.xml' path='doc/member[@name="DxcArgPair::pValue"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="DxcArgPair::pValue"]/*' />
public unsafe ushort* pValue; public unsafe ushort* pValue;
} }
#endregion Structs #endregion Structs
#region COM Types #region COM Types
@@ -436,6 +430,5 @@ public static unsafe partial class Apis
[DllImport("dxcompiler", ExactSpelling = true)] [DllImport("dxcompiler", ExactSpelling = true)]
public static extern HResult DxcCreateInstance2(Com.IMalloc* pMalloc, Guid* rclsid, Guid* riid, void** ppv); public static extern HResult DxcCreateInstance2(Com.IMalloc* pMalloc, Guid* rclsid, Guid* riid, void** ppv);
} }
#endregion Functions #endregion Functions

View File

@@ -0,0 +1,316 @@
// ------------------------------------------------------------------------------
// <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.Direct3D.Fxc;
public static partial class Apis
{
public const uint D3D_COMPILER_VERSION = 47;
public const uint D3D_GET_INST_OFFSETS_INCLUDE_NON_EXECUTABLE = 1;
}
#region Enums
/// <include file='../Direct3D.xml' path='doc/member[@name="D3DCOMPILER_STRIP_FLAGS"]/*' />
/// <unmanaged>D3DCOMPILER_STRIP_FLAGS</unmanaged>
[Flags]
public enum StripFlags : int
{
None = 0,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3DCOMPILER_STRIP_FLAGS::D3DCOMPILER_STRIP_REFLECTION_DATA"]/*' />
/// <unmanaged>D3DCOMPILER_STRIP_REFLECTION_DATA</unmanaged>
ReflectionData = 1,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3DCOMPILER_STRIP_FLAGS::D3DCOMPILER_STRIP_DEBUG_INFO"]/*' />
/// <unmanaged>D3DCOMPILER_STRIP_DEBUG_INFO</unmanaged>
DebugInfo = 2,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3DCOMPILER_STRIP_FLAGS::D3DCOMPILER_STRIP_TEST_BLOBS"]/*' />
/// <unmanaged>D3DCOMPILER_STRIP_TEST_BLOBS</unmanaged>
TestBlobs = 4,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3DCOMPILER_STRIP_FLAGS::D3DCOMPILER_STRIP_PRIVATE_DATA"]/*' />
/// <unmanaged>D3DCOMPILER_STRIP_PRIVATE_DATA</unmanaged>
PrivateData = 8,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3DCOMPILER_STRIP_FLAGS::D3DCOMPILER_STRIP_ROOT_SIGNATURE"]/*' />
/// <unmanaged>D3DCOMPILER_STRIP_ROOT_SIGNATURE</unmanaged>
RootSignature = 16,
}
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART"]/*' />
/// <unmanaged>D3D_BLOB_PART</unmanaged>
public enum BlobPart : int
{
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_INPUT_SIGNATURE_BLOB"]/*' />
/// <unmanaged>D3D_BLOB_INPUT_SIGNATURE_BLOB</unmanaged>
InputSignatureBlob = 0,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_OUTPUT_SIGNATURE_BLOB"]/*' />
/// <unmanaged>D3D_BLOB_OUTPUT_SIGNATURE_BLOB</unmanaged>
OutputSignatureBlob = 1,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_INPUT_AND_OUTPUT_SIGNATURE_BLOB"]/*' />
/// <unmanaged>D3D_BLOB_INPUT_AND_OUTPUT_SIGNATURE_BLOB</unmanaged>
InputAndOutputSignatureBlob = 2,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_PATCH_CONSTANT_SIGNATURE_BLOB"]/*' />
/// <unmanaged>D3D_BLOB_PATCH_CONSTANT_SIGNATURE_BLOB</unmanaged>
PatchConstantSignatureBlob = 3,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_ALL_SIGNATURE_BLOB"]/*' />
/// <unmanaged>D3D_BLOB_ALL_SIGNATURE_BLOB</unmanaged>
AllSignatureBlob = 4,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_DEBUG_INFO"]/*' />
/// <unmanaged>D3D_BLOB_DEBUG_INFO</unmanaged>
DebugInfo = 5,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_LEGACY_SHADER"]/*' />
/// <unmanaged>D3D_BLOB_LEGACY_SHADER</unmanaged>
LegacyShader = 6,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_XNA_PREPASS_SHADER"]/*' />
/// <unmanaged>D3D_BLOB_XNA_PREPASS_SHADER</unmanaged>
XNAPrepassShader = 7,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_XNA_SHADER"]/*' />
/// <unmanaged>D3D_BLOB_XNA_SHADER</unmanaged>
XNAShader = 8,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_PDB"]/*' />
/// <unmanaged>D3D_BLOB_PDB</unmanaged>
Pdb = 9,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_PRIVATE_DATA"]/*' />
/// <unmanaged>D3D_BLOB_PRIVATE_DATA</unmanaged>
PrivateData = 10,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_ROOT_SIGNATURE"]/*' />
/// <unmanaged>D3D_BLOB_ROOT_SIGNATURE</unmanaged>
RootSignature = 11,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_DEBUG_NAME"]/*' />
/// <unmanaged>D3D_BLOB_DEBUG_NAME</unmanaged>
DebugName = 12,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_TEST_ALTERNATE_SHADER"]/*' />
/// <unmanaged>D3D_BLOB_TEST_ALTERNATE_SHADER</unmanaged>
TestAlternateShader = 32768,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_TEST_COMPILE_DETAILS"]/*' />
/// <unmanaged>D3D_BLOB_TEST_COMPILE_DETAILS</unmanaged>
TestCompileDetails = 32769,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_TEST_COMPILE_PERF"]/*' />
/// <unmanaged>D3D_BLOB_TEST_COMPILE_PERF</unmanaged>
TestCompilePerf = 32770,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_BLOB_PART::D3D_BLOB_TEST_COMPILE_REPORT"]/*' />
/// <unmanaged>D3D_BLOB_TEST_COMPILE_REPORT</unmanaged>
TestCompileReport = 32771,
}
#endregion Enums
#region Generated Enums
/// <unmanaged>D3DCOMPILE</unmanaged>
[Flags]
public enum CompileFlags : uint
{
None = 0,
/// <unmanaged>D3DCOMPILE_DEBUG</unmanaged>
Debug = 1,
/// <unmanaged>D3DCOMPILE_SKIP_VALIDATION</unmanaged>
SkipValidation = 2,
/// <unmanaged>D3DCOMPILE_SKIP_OPTIMIZATION</unmanaged>
SkipOptimization = 4,
/// <unmanaged>D3DCOMPILE_PACK_MATRIX_ROW_MAJOR</unmanaged>
PackMatrixRowMajor = 8,
/// <unmanaged>D3DCOMPILE_PACK_MATRIX_COLUMN_MAJOR</unmanaged>
PackMatrixColumnMajor = 16,
/// <unmanaged>D3DCOMPILE_PARTIAL_PRECISION</unmanaged>
PartialPrecision = 32,
/// <unmanaged>D3DCOMPILE_FORCE_VS_SOFTWARE_NO_OPT</unmanaged>
ForceVSSoftwareNoOpt = 64,
/// <unmanaged>D3DCOMPILE_FORCE_PS_SOFTWARE_NO_OPT</unmanaged>
ForcePSSoftwareNoOpt = 128,
/// <unmanaged>D3DCOMPILE_NO_PRESHADER</unmanaged>
NoPreshader = 256,
/// <unmanaged>D3DCOMPILE_AVOID_FLOW_CONTROL</unmanaged>
AvoidFlowControl = 512,
/// <unmanaged>D3DCOMPILE_PREFER_FLOW_CONTROL</unmanaged>
PreferFlowControl = 1024,
/// <unmanaged>D3DCOMPILE_ENABLE_STRICTNESS</unmanaged>
EnableStrictness = 2048,
/// <unmanaged>D3DCOMPILE_ENABLE_BACKWARDS_COMPATIBILITY</unmanaged>
EnableBackwardsCompatibility = 4096,
/// <unmanaged>D3DCOMPILE_IEEE_STRICTNESS</unmanaged>
IeeeStrictness = 8192,
/// <unmanaged>D3DCOMPILE_OPTIMIZATION_LEVEL0</unmanaged>
OptimizationLevel0 = 16384,
/// <unmanaged>D3DCOMPILE_OPTIMIZATION_LEVEL1</unmanaged>
OptimizationLevel1 = 0,
/// <unmanaged>D3DCOMPILE_OPTIMIZATION_LEVEL3</unmanaged>
OptimizationLevel3 = 32768,
/// <unmanaged>D3DCOMPILE_RESERVED16</unmanaged>
Reserved16 = 65536,
/// <unmanaged>D3DCOMPILE_RESERVED17</unmanaged>
Reserved17 = 131072,
/// <unmanaged>D3DCOMPILE_WARNINGS_ARE_ERRORS</unmanaged>
WarningsAreErrors = 262144,
/// <unmanaged>D3DCOMPILE_RESOURCES_MAY_ALIAS</unmanaged>
ResourcesMayAlias = 524288,
/// <unmanaged>D3DCOMPILE_ENABLE_UNBOUNDED_DESCRIPTOR_TABLES</unmanaged>
EnableUnboundedDescriptorTables = 1048576,
/// <unmanaged>D3DCOMPILE_ALL_RESOURCES_BOUND</unmanaged>
AllResourcesBound = 2097152,
/// <unmanaged>D3DCOMPILE_DEBUG_NAME_FOR_SOURCE</unmanaged>
DebugNameForSource = 4194304,
/// <unmanaged>D3DCOMPILE_DEBUG_NAME_FOR_BINARY</unmanaged>
DebugNameForBinary = 8388608,
}
/// <unmanaged>D3DCOMPILE_EFFECT</unmanaged>
[Flags]
public enum CompileEffectFlags : uint
{
None = 0,
/// <unmanaged>D3DCOMPILE_EFFECT_CHILD_EFFECT</unmanaged>
ChildEffect = 1,
/// <unmanaged>D3DCOMPILE_EFFECT_ALLOW_SLOW_OPS</unmanaged>
AllowSlowOps = 2,
}
/// <unmanaged>D3DCOMPILE_FLAGS2</unmanaged>
[Flags]
public enum CompileFlags2 : uint
{
None = 0,
/// <unmanaged>D3DCOMPILE_FLAGS2_FORCE_ROOT_SIGNATURE_LATEST</unmanaged>
ForceRootSignatureLatest = 0,
/// <unmanaged>D3DCOMPILE_FLAGS2_FORCE_ROOT_SIGNATURE_1_0</unmanaged>
ForceRootSignature10 = 16,
/// <unmanaged>D3DCOMPILE_FLAGS2_FORCE_ROOT_SIGNATURE_1_1</unmanaged>
ForceRootSignature11 = 32,
}
/// <unmanaged>D3DCOMPILE_SECDATA</unmanaged>
[Flags]
public enum CompileSecondaryFlags : uint
{
None = 0,
/// <unmanaged>D3DCOMPILE_SECDATA_MERGE_UAV_SLOTS</unmanaged>
MergeUavSlots = 1,
/// <unmanaged>D3DCOMPILE_SECDATA_PRESERVE_TEMPLATE_SLOTS</unmanaged>
PreserveTemplateSlots = 2,
/// <unmanaged>D3DCOMPILE_SECDATA_REQUIRE_TEMPLATE_MATCH</unmanaged>
RequireTemplateMatch = 4,
}
/// <unmanaged>D3D_DISASM</unmanaged>
[Flags]
public enum DisasmFlags : uint
{
None = 0,
/// <unmanaged>D3D_DISASM_ENABLE_COLOR_CODE</unmanaged>
EnableColorCode = 1,
/// <unmanaged>D3D_DISASM_ENABLE_DEFAULT_VALUE_PRINTS</unmanaged>
EnableDefaultValuePrints = 2,
/// <unmanaged>D3D_DISASM_ENABLE_INSTRUCTION_NUMBERING</unmanaged>
EnableInstructionNumbering = 4,
/// <unmanaged>D3D_DISASM_ENABLE_INSTRUCTION_CYCLE</unmanaged>
EnableInstructionCycle = 8,
/// <unmanaged>D3D_DISASM_DISABLE_DEBUG_INFO</unmanaged>
DisableDebugInfo = 16,
/// <unmanaged>D3D_DISASM_ENABLE_INSTRUCTION_OFFSET</unmanaged>
EnableInstructionOffset = 32,
/// <unmanaged>D3D_DISASM_INSTRUCTION_ONLY</unmanaged>
InstructionOnly = 64,
/// <unmanaged>D3D_DISASM_PRINT_HEX_LITERALS</unmanaged>
PrintHexLiterals = 128,
}
/// <unmanaged>D3D_COMPRESS_SHADER</unmanaged>
[Flags]
public enum CompressShaderFlags : uint
{
None = 0,
/// <unmanaged>D3D_COMPRESS_SHADER_KEEP_ALL_PARTS</unmanaged>
KeepAllParts = 1,
}
#endregion Generated Enums
#region Structs
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_DATA"]/*' />
/// <unmanaged>D3D_SHADER_DATA</unmanaged>
public partial struct ShaderData
{
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_DATA::pBytecode"]/*' />
public unsafe void* pBytecode;
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_DATA::BytecodeLength"]/*' />
public nuint BytecodeLength;
}
#endregion Structs
#region Functions
public static unsafe partial class Apis
{
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DReadFileToBlob(ushort* pFileName, Graphics.Direct3D.ID3DBlob** ppContents);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DWriteBlobToFile(Graphics.Direct3D.ID3DBlob* pBlob, ushort* pFileName, Bool32 bOverwrite);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DCompile(void* pSrcData, nuint SrcDataSize, sbyte* pSourceName, Graphics.Direct3D.ShaderMacro* pDefines, Graphics.Direct3D.ID3DInclude* pInclude, sbyte* pEntrypoint, sbyte* pTarget, CompileFlags Flags1, uint Flags2, Graphics.Direct3D.ID3DBlob** ppCode, Graphics.Direct3D.ID3DBlob** ppErrorMsgs);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DCompile2(void* pSrcData, nuint SrcDataSize, sbyte* pSourceName, Graphics.Direct3D.ShaderMacro* pDefines, Graphics.Direct3D.ID3DInclude* pInclude, sbyte* pEntrypoint, sbyte* pTarget, CompileFlags Flags1, uint Flags2, uint SecondaryDataFlags, void* pSecondaryData, nuint SecondaryDataSize, Graphics.Direct3D.ID3DBlob** ppCode, Graphics.Direct3D.ID3DBlob** ppErrorMsgs);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DCompileFromFile(ushort* pFileName, Graphics.Direct3D.ShaderMacro* pDefines, Graphics.Direct3D.ID3DInclude* pInclude, sbyte* pEntrypoint, sbyte* pTarget, CompileFlags Flags1, uint Flags2, Graphics.Direct3D.ID3DBlob** ppCode, Graphics.Direct3D.ID3DBlob** ppErrorMsgs);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DPreprocess(void* pSrcData, nuint SrcDataSize, sbyte* pSourceName, Graphics.Direct3D.ShaderMacro* pDefines, Graphics.Direct3D.ID3DInclude* pInclude, Graphics.Direct3D.ID3DBlob** ppCodeText, Graphics.Direct3D.ID3DBlob** ppErrorMsgs);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DGetDebugInfo(void* pSrcData, nuint SrcDataSize, Graphics.Direct3D.ID3DBlob** ppDebugInfo);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DReflect(void* pSrcData, nuint SrcDataSize, Guid* pInterface, void** ppReflector);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DReflectLibrary(void* pSrcData, nuint SrcDataSize, Guid* riid, void** ppReflector);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DDisassemble(void* pSrcData, nuint SrcDataSize, DisasmFlags Flags, sbyte* szComments, Graphics.Direct3D.ID3DBlob** ppDisassembly);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DDisassembleRegion(void* pSrcData, nuint SrcDataSize, uint Flags, sbyte* szComments, nuint StartByteOffset, nuint NumInsts, nuint* pFinishByteOffset, Graphics.Direct3D.ID3DBlob** ppDisassembly);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DCreateLinker(Graphics.Direct3D11.ID3D11Linker** ppLinker);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DLoadModule(void* pSrcData, nuint cbSrcDataSize, Graphics.Direct3D11.ID3D11Module** ppModule);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DCreateFunctionLinkingGraph(uint uFlags, Graphics.Direct3D11.ID3D11FunctionLinkingGraph** ppFunctionLinkingGraph);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DGetTraceInstructionOffsets(void* pSrcData, nuint SrcDataSize, uint Flags, nuint StartInstIndex, nuint NumInsts, nuint* pOffsets, nuint* pTotalInsts);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DGetInputSignatureBlob(void* pSrcData, nuint SrcDataSize, Graphics.Direct3D.ID3DBlob** ppSignatureBlob);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DGetOutputSignatureBlob(void* pSrcData, nuint SrcDataSize, Graphics.Direct3D.ID3DBlob** ppSignatureBlob);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DGetInputAndOutputSignatureBlob(void* pSrcData, nuint SrcDataSize, Graphics.Direct3D.ID3DBlob** ppSignatureBlob);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DStripShader(void* pShaderBytecode, nuint BytecodeLength, uint uStripFlags, Graphics.Direct3D.ID3DBlob** ppStrippedBlob);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DGetBlobPart(void* pSrcData, nuint SrcDataSize, BlobPart Part, uint Flags, Graphics.Direct3D.ID3DBlob** ppPart);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DSetBlobPart(void* pSrcData, nuint SrcDataSize, BlobPart Part, uint Flags, void* pPart, nuint PartSize, Graphics.Direct3D.ID3DBlob** ppNewShader);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DCreateBlob(nuint Size, Graphics.Direct3D.ID3DBlob** ppBlob);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DCompressShaders(uint uNumShaders, ShaderData* pShaderData, CompressShaderFlags uFlags, Graphics.Direct3D.ID3DBlob** ppCompressedData);
[DllImport("D3DCOMPILER_47", ExactSpelling = true)]
public static extern HResult D3DDecompressShaders(void* pSrcData, nuint SrcDataSize, uint uNumShaders, uint uStartIndex, uint* pIndices, uint uFlags, Graphics.Direct3D.ID3DBlob** ppShaders, uint* pTotalShaders);
}
#endregion Functions

View File

@@ -1193,7 +1193,6 @@ public enum ParameterFlags : int
/// <unmanaged>D3D_PF_OUT</unmanaged> /// <unmanaged>D3D_PF_OUT</unmanaged>
Out = 2, Out = 2,
} }
#endregion Enums #endregion Enums
#region Structs #region Structs
@@ -1207,7 +1206,6 @@ public partial struct ShaderMacro
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_MACRO::Definition"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_MACRO::Definition"]/*' />
public unsafe sbyte* Definition; public unsafe sbyte* Definition;
} }
#endregion Structs #endregion Structs
#region COM Types #region COM Types

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -2183,10 +2183,10 @@ public enum FontSourceType : int
/// <unmanaged>DWRITE_FONT_SOURCE_TYPE_REMOTE_FONT_PROVIDER</unmanaged> /// <unmanaged>DWRITE_FONT_SOURCE_TYPE_REMOTE_FONT_PROVIDER</unmanaged>
RemoteFontProvider = 4, RemoteFontProvider = 4,
} }
#endregion Enums #endregion Enums
#region Unions #region Unions
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_PANOSE"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_PANOSE"]/*' />
/// <unmanaged>DWRITE_PANOSE</unmanaged> /// <unmanaged>DWRITE_PANOSE</unmanaged>
[StructLayout(LayoutKind.Explicit)] [StructLayout(LayoutKind.Explicit)]
@@ -2248,7 +2248,6 @@ public partial struct Panose
/// <include file='../DirectWrite.xml' path='doc/member[@name="_decorative_e__Struct::characterRange"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="_decorative_e__Struct::characterRange"]/*' />
public byte characterRange; public byte characterRange;
} }
public partial struct _text_e__Struct public partial struct _text_e__Struct
{ {
/// <include file='../DirectWrite.xml' path='doc/member[@name="_text_e__Struct::familyKind"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="_text_e__Struct::familyKind"]/*' />
@@ -2281,7 +2280,6 @@ public partial struct Panose
/// <include file='../DirectWrite.xml' path='doc/member[@name="_text_e__Struct::xHeight"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="_text_e__Struct::xHeight"]/*' />
public byte xHeight; public byte xHeight;
} }
public partial struct _symbol_e__Struct public partial struct _symbol_e__Struct
{ {
/// <include file='../DirectWrite.xml' path='doc/member[@name="_symbol_e__Struct::familyKind"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="_symbol_e__Struct::familyKind"]/*' />
@@ -2314,7 +2312,6 @@ public partial struct Panose
/// <include file='../DirectWrite.xml' path='doc/member[@name="_symbol_e__Struct::aspectRatio211"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="_symbol_e__Struct::aspectRatio211"]/*' />
public byte aspectRatio211; public byte aspectRatio211;
} }
public partial struct _script_e__Struct public partial struct _script_e__Struct
{ {
/// <include file='../DirectWrite.xml' path='doc/member[@name="_script_e__Struct::familyKind"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="_script_e__Struct::familyKind"]/*' />
@@ -2347,9 +2344,7 @@ public partial struct Panose
/// <include file='../DirectWrite.xml' path='doc/member[@name="_script_e__Struct::xAscent"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="_script_e__Struct::xAscent"]/*' />
public byte xAscent; public byte xAscent;
} }
} }
#endregion Unions #endregion Unions
#region Structs #region Structs
@@ -2387,7 +2382,6 @@ public partial struct FontMetrics
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_METRICS::strikethroughThickness"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_METRICS::strikethroughThickness"]/*' />
public ushort strikethroughThickness; public ushort strikethroughThickness;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_METRICS"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_METRICS"]/*' />
/// <unmanaged>DWRITE_GLYPH_METRICS</unmanaged> /// <unmanaged>DWRITE_GLYPH_METRICS</unmanaged>
public partial struct GlyphMetrics public partial struct GlyphMetrics
@@ -2413,7 +2407,6 @@ public partial struct GlyphMetrics
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_METRICS::verticalOriginY"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_METRICS::verticalOriginY"]/*' />
public int verticalOriginY; public int verticalOriginY;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_OFFSET"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_OFFSET"]/*' />
/// <unmanaged>DWRITE_GLYPH_OFFSET</unmanaged> /// <unmanaged>DWRITE_GLYPH_OFFSET</unmanaged>
public partial struct GlyphOffset public partial struct GlyphOffset
@@ -2424,7 +2417,6 @@ public partial struct GlyphOffset
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_OFFSET::ascenderOffset"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_OFFSET::ascenderOffset"]/*' />
public float ascenderOffset; public float ascenderOffset;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TEXT_RANGE"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TEXT_RANGE"]/*' />
/// <unmanaged>DWRITE_TEXT_RANGE</unmanaged> /// <unmanaged>DWRITE_TEXT_RANGE</unmanaged>
public partial struct TextRange public partial struct TextRange
@@ -2435,7 +2427,6 @@ public partial struct TextRange
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TEXT_RANGE::length"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TEXT_RANGE::length"]/*' />
public uint length; public uint length;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_FEATURE"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_FEATURE"]/*' />
/// <unmanaged>DWRITE_FONT_FEATURE</unmanaged> /// <unmanaged>DWRITE_FONT_FEATURE</unmanaged>
public partial struct FontFeature public partial struct FontFeature
@@ -2446,7 +2437,6 @@ public partial struct FontFeature
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_FEATURE::parameter"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_FEATURE::parameter"]/*' />
public uint parameter; public uint parameter;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TYPOGRAPHIC_FEATURES"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TYPOGRAPHIC_FEATURES"]/*' />
/// <unmanaged>DWRITE_TYPOGRAPHIC_FEATURES</unmanaged> /// <unmanaged>DWRITE_TYPOGRAPHIC_FEATURES</unmanaged>
public partial struct TypographicFeatures public partial struct TypographicFeatures
@@ -2457,7 +2447,6 @@ public partial struct TypographicFeatures
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TYPOGRAPHIC_FEATURES::featureCount"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TYPOGRAPHIC_FEATURES::featureCount"]/*' />
public uint featureCount; public uint featureCount;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TRIMMING"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TRIMMING"]/*' />
/// <unmanaged>DWRITE_TRIMMING</unmanaged> /// <unmanaged>DWRITE_TRIMMING</unmanaged>
public partial struct Trimming public partial struct Trimming
@@ -2471,7 +2460,6 @@ public partial struct Trimming
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TRIMMING::delimiterCount"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TRIMMING::delimiterCount"]/*' />
public uint delimiterCount; public uint delimiterCount;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SCRIPT_ANALYSIS"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SCRIPT_ANALYSIS"]/*' />
/// <unmanaged>DWRITE_SCRIPT_ANALYSIS</unmanaged> /// <unmanaged>DWRITE_SCRIPT_ANALYSIS</unmanaged>
public partial struct ScriptAnalysis public partial struct ScriptAnalysis
@@ -2482,7 +2470,6 @@ public partial struct ScriptAnalysis
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SCRIPT_ANALYSIS::shapes"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SCRIPT_ANALYSIS::shapes"]/*' />
public ScriptShapes shapes; public ScriptShapes shapes;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_BREAKPOINT"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_BREAKPOINT"]/*' />
/// <unmanaged>DWRITE_LINE_BREAKPOINT</unmanaged> /// <unmanaged>DWRITE_LINE_BREAKPOINT</unmanaged>
public partial struct LineBreakpoint public partial struct LineBreakpoint
@@ -2490,7 +2477,6 @@ public partial struct LineBreakpoint
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_BREAKPOINT::_bitfield"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_BREAKPOINT::_bitfield"]/*' />
public byte _bitfield; public byte _bitfield;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SHAPING_TEXT_PROPERTIES"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SHAPING_TEXT_PROPERTIES"]/*' />
/// <unmanaged>DWRITE_SHAPING_TEXT_PROPERTIES</unmanaged> /// <unmanaged>DWRITE_SHAPING_TEXT_PROPERTIES</unmanaged>
public partial struct ShapingTextProperties public partial struct ShapingTextProperties
@@ -2498,7 +2484,6 @@ public partial struct ShapingTextProperties
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SHAPING_TEXT_PROPERTIES::_bitfield"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SHAPING_TEXT_PROPERTIES::_bitfield"]/*' />
public ushort _bitfield; public ushort _bitfield;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SHAPING_GLYPH_PROPERTIES"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SHAPING_GLYPH_PROPERTIES"]/*' />
/// <unmanaged>DWRITE_SHAPING_GLYPH_PROPERTIES</unmanaged> /// <unmanaged>DWRITE_SHAPING_GLYPH_PROPERTIES</unmanaged>
public partial struct ShapingGlyphProperties public partial struct ShapingGlyphProperties
@@ -2506,7 +2491,6 @@ public partial struct ShapingGlyphProperties
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SHAPING_GLYPH_PROPERTIES::_bitfield"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SHAPING_GLYPH_PROPERTIES::_bitfield"]/*' />
public ushort _bitfield; public ushort _bitfield;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_RUN"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_RUN"]/*' />
/// <unmanaged>DWRITE_GLYPH_RUN</unmanaged> /// <unmanaged>DWRITE_GLYPH_RUN</unmanaged>
public partial struct GlyphRun public partial struct GlyphRun
@@ -2535,7 +2519,6 @@ public partial struct GlyphRun
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_RUN::bidiLevel"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_RUN::bidiLevel"]/*' />
public uint bidiLevel; public uint bidiLevel;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_RUN_DESCRIPTION"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_RUN_DESCRIPTION"]/*' />
/// <unmanaged>DWRITE_GLYPH_RUN_DESCRIPTION</unmanaged> /// <unmanaged>DWRITE_GLYPH_RUN_DESCRIPTION</unmanaged>
public partial struct GlyphRunDescription public partial struct GlyphRunDescription
@@ -2555,7 +2538,6 @@ public partial struct GlyphRunDescription
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_RUN_DESCRIPTION::textPosition"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_RUN_DESCRIPTION::textPosition"]/*' />
public uint textPosition; public uint textPosition;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_UNDERLINE"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_UNDERLINE"]/*' />
/// <unmanaged>DWRITE_UNDERLINE</unmanaged> /// <unmanaged>DWRITE_UNDERLINE</unmanaged>
public partial struct Underline public partial struct Underline
@@ -2584,7 +2566,6 @@ public partial struct Underline
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_UNDERLINE::measuringMode"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_UNDERLINE::measuringMode"]/*' />
public MeasuringMode measuringMode; public MeasuringMode measuringMode;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_STRIKETHROUGH"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_STRIKETHROUGH"]/*' />
/// <unmanaged>DWRITE_STRIKETHROUGH</unmanaged> /// <unmanaged>DWRITE_STRIKETHROUGH</unmanaged>
public partial struct Strikethrough public partial struct Strikethrough
@@ -2610,7 +2591,6 @@ public partial struct Strikethrough
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_STRIKETHROUGH::measuringMode"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_STRIKETHROUGH::measuringMode"]/*' />
public MeasuringMode measuringMode; public MeasuringMode measuringMode;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_METRICS"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_METRICS"]/*' />
/// <unmanaged>DWRITE_LINE_METRICS</unmanaged> /// <unmanaged>DWRITE_LINE_METRICS</unmanaged>
public partial struct LineMetrics public partial struct LineMetrics
@@ -2633,7 +2613,6 @@ public partial struct LineMetrics
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_METRICS::isTrimmed"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_METRICS::isTrimmed"]/*' />
public Bool32 isTrimmed; public Bool32 isTrimmed;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_CLUSTER_METRICS"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_CLUSTER_METRICS"]/*' />
/// <unmanaged>DWRITE_CLUSTER_METRICS</unmanaged> /// <unmanaged>DWRITE_CLUSTER_METRICS</unmanaged>
public partial struct ClusterMetrics public partial struct ClusterMetrics
@@ -2647,7 +2626,6 @@ public partial struct ClusterMetrics
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_CLUSTER_METRICS::_bitfield"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_CLUSTER_METRICS::_bitfield"]/*' />
public ushort _bitfield; public ushort _bitfield;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TEXT_METRICS"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TEXT_METRICS"]/*' />
/// <unmanaged>DWRITE_TEXT_METRICS</unmanaged> /// <unmanaged>DWRITE_TEXT_METRICS</unmanaged>
public partial struct TextMetrics public partial struct TextMetrics
@@ -2679,7 +2657,6 @@ public partial struct TextMetrics
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TEXT_METRICS::lineCount"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TEXT_METRICS::lineCount"]/*' />
public uint lineCount; public uint lineCount;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_INLINE_OBJECT_METRICS"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_INLINE_OBJECT_METRICS"]/*' />
/// <unmanaged>DWRITE_INLINE_OBJECT_METRICS</unmanaged> /// <unmanaged>DWRITE_INLINE_OBJECT_METRICS</unmanaged>
public partial struct InlineObjectMetrics public partial struct InlineObjectMetrics
@@ -2696,7 +2673,6 @@ public partial struct InlineObjectMetrics
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_INLINE_OBJECT_METRICS::supportsSideways"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_INLINE_OBJECT_METRICS::supportsSideways"]/*' />
public Bool32 supportsSideways; public Bool32 supportsSideways;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_OVERHANG_METRICS"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_OVERHANG_METRICS"]/*' />
/// <unmanaged>DWRITE_OVERHANG_METRICS</unmanaged> /// <unmanaged>DWRITE_OVERHANG_METRICS</unmanaged>
public partial struct OverhangMetrics public partial struct OverhangMetrics
@@ -2713,7 +2689,6 @@ public partial struct OverhangMetrics
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_OVERHANG_METRICS::bottom"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_OVERHANG_METRICS::bottom"]/*' />
public float bottom; public float bottom;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_HIT_TEST_METRICS"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_HIT_TEST_METRICS"]/*' />
/// <unmanaged>DWRITE_HIT_TEST_METRICS</unmanaged> /// <unmanaged>DWRITE_HIT_TEST_METRICS</unmanaged>
public partial struct HitTestMetrics public partial struct HitTestMetrics
@@ -2745,7 +2720,6 @@ public partial struct HitTestMetrics
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_HIT_TEST_METRICS::isTrimmed"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_HIT_TEST_METRICS::isTrimmed"]/*' />
public Bool32 isTrimmed; public Bool32 isTrimmed;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_METRICS1"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_METRICS1"]/*' />
/// <unmanaged>DWRITE_FONT_METRICS1</unmanaged> /// <unmanaged>DWRITE_FONT_METRICS1</unmanaged>
public partial struct FontMetrics1 public partial struct FontMetrics1
@@ -2792,7 +2766,6 @@ public partial struct FontMetrics1
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_METRICS1::hasTypographicMetrics"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_METRICS1::hasTypographicMetrics"]/*' />
public Bool32 hasTypographicMetrics; public Bool32 hasTypographicMetrics;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_CARET_METRICS"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_CARET_METRICS"]/*' />
/// <unmanaged>DWRITE_CARET_METRICS</unmanaged> /// <unmanaged>DWRITE_CARET_METRICS</unmanaged>
public partial struct CaretMetrics public partial struct CaretMetrics
@@ -2806,7 +2779,6 @@ public partial struct CaretMetrics
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_CARET_METRICS::offset"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_CARET_METRICS::offset"]/*' />
public short offset; public short offset;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_UNICODE_RANGE"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_UNICODE_RANGE"]/*' />
/// <unmanaged>DWRITE_UNICODE_RANGE</unmanaged> /// <unmanaged>DWRITE_UNICODE_RANGE</unmanaged>
public partial struct UnicodeRange public partial struct UnicodeRange
@@ -2817,7 +2789,6 @@ public partial struct UnicodeRange
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_UNICODE_RANGE::last"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_UNICODE_RANGE::last"]/*' />
public uint last; public uint last;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SCRIPT_PROPERTIES"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SCRIPT_PROPERTIES"]/*' />
/// <unmanaged>DWRITE_SCRIPT_PROPERTIES</unmanaged> /// <unmanaged>DWRITE_SCRIPT_PROPERTIES</unmanaged>
public partial struct ScriptProperties public partial struct ScriptProperties
@@ -2837,7 +2808,6 @@ public partial struct ScriptProperties
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SCRIPT_PROPERTIES::_bitfield"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_SCRIPT_PROPERTIES::_bitfield"]/*' />
public uint _bitfield; public uint _bitfield;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_JUSTIFICATION_OPPORTUNITY"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_JUSTIFICATION_OPPORTUNITY"]/*' />
/// <unmanaged>DWRITE_JUSTIFICATION_OPPORTUNITY</unmanaged> /// <unmanaged>DWRITE_JUSTIFICATION_OPPORTUNITY</unmanaged>
public partial struct JustificationOpportunity public partial struct JustificationOpportunity
@@ -2854,7 +2824,6 @@ public partial struct JustificationOpportunity
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_JUSTIFICATION_OPPORTUNITY::_bitfield"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_JUSTIFICATION_OPPORTUNITY::_bitfield"]/*' />
public uint _bitfield; public uint _bitfield;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TEXT_METRICS1"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TEXT_METRICS1"]/*' />
/// <unmanaged>DWRITE_TEXT_METRICS1</unmanaged> /// <unmanaged>DWRITE_TEXT_METRICS1</unmanaged>
public partial struct TextMetrics1 public partial struct TextMetrics1
@@ -2865,7 +2834,6 @@ public partial struct TextMetrics1
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TEXT_METRICS1::heightIncludingTrailingWhitespace"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_TEXT_METRICS1::heightIncludingTrailingWhitespace"]/*' />
public float heightIncludingTrailingWhitespace; public float heightIncludingTrailingWhitespace;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_COLOR_GLYPH_RUN"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_COLOR_GLYPH_RUN"]/*' />
/// <unmanaged>DWRITE_COLOR_GLYPH_RUN</unmanaged> /// <unmanaged>DWRITE_COLOR_GLYPH_RUN</unmanaged>
public partial struct ColorGlyphRun public partial struct ColorGlyphRun
@@ -2888,7 +2856,6 @@ public partial struct ColorGlyphRun
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_COLOR_GLYPH_RUN::paletteIndex"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_COLOR_GLYPH_RUN::paletteIndex"]/*' />
public ushort paletteIndex; public ushort paletteIndex;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_PROPERTY"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_PROPERTY"]/*' />
/// <unmanaged>DWRITE_FONT_PROPERTY</unmanaged> /// <unmanaged>DWRITE_FONT_PROPERTY</unmanaged>
public partial struct FontProperty public partial struct FontProperty
@@ -2902,7 +2869,6 @@ public partial struct FontProperty
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_PROPERTY::localeName"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_PROPERTY::localeName"]/*' />
public unsafe ushort* localeName; public unsafe ushort* localeName;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_METRICS1"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_METRICS1"]/*' />
/// <unmanaged>DWRITE_LINE_METRICS1</unmanaged> /// <unmanaged>DWRITE_LINE_METRICS1</unmanaged>
public partial struct LineMetrics1 public partial struct LineMetrics1
@@ -2916,7 +2882,6 @@ public partial struct LineMetrics1
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_METRICS1::leadingAfter"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_METRICS1::leadingAfter"]/*' />
public float leadingAfter; public float leadingAfter;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_SPACING"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_SPACING"]/*' />
/// <unmanaged>DWRITE_LINE_SPACING</unmanaged> /// <unmanaged>DWRITE_LINE_SPACING</unmanaged>
public partial struct LineSpacing public partial struct LineSpacing
@@ -2936,7 +2901,6 @@ public partial struct LineSpacing
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_SPACING::fontLineGapUsage"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_LINE_SPACING::fontLineGapUsage"]/*' />
public FontLineGapUsage fontLineGapUsage; public FontLineGapUsage fontLineGapUsage;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_COLOR_GLYPH_RUN1"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_COLOR_GLYPH_RUN1"]/*' />
/// <unmanaged>DWRITE_COLOR_GLYPH_RUN1</unmanaged> /// <unmanaged>DWRITE_COLOR_GLYPH_RUN1</unmanaged>
public partial struct ColorGlyphRun1 public partial struct ColorGlyphRun1
@@ -2950,7 +2914,6 @@ public partial struct ColorGlyphRun1
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_COLOR_GLYPH_RUN1::measuringMode"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_COLOR_GLYPH_RUN1::measuringMode"]/*' />
public MeasuringMode measuringMode; public MeasuringMode measuringMode;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_IMAGE_DATA"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_IMAGE_DATA"]/*' />
/// <unmanaged>DWRITE_GLYPH_IMAGE_DATA</unmanaged> /// <unmanaged>DWRITE_GLYPH_IMAGE_DATA</unmanaged>
public partial struct GlyphImageData public partial struct GlyphImageData
@@ -2982,7 +2945,6 @@ public partial struct GlyphImageData
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_IMAGE_DATA::verticalBottomOrigin"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_GLYPH_IMAGE_DATA::verticalBottomOrigin"]/*' />
public System.Drawing.Point verticalBottomOrigin; public System.Drawing.Point verticalBottomOrigin;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FILE_FRAGMENT"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FILE_FRAGMENT"]/*' />
/// <unmanaged>DWRITE_FILE_FRAGMENT</unmanaged> /// <unmanaged>DWRITE_FILE_FRAGMENT</unmanaged>
public partial struct FileFragment public partial struct FileFragment
@@ -2993,7 +2955,6 @@ public partial struct FileFragment
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FILE_FRAGMENT::fragmentSize"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FILE_FRAGMENT::fragmentSize"]/*' />
public ulong fragmentSize; public ulong fragmentSize;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_AXIS_VALUE"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_AXIS_VALUE"]/*' />
/// <unmanaged>DWRITE_FONT_AXIS_VALUE</unmanaged> /// <unmanaged>DWRITE_FONT_AXIS_VALUE</unmanaged>
public partial struct FontAxisValue public partial struct FontAxisValue
@@ -3004,7 +2965,6 @@ public partial struct FontAxisValue
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_AXIS_VALUE::value"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_AXIS_VALUE::value"]/*' />
public float value; public float value;
} }
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_AXIS_RANGE"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_AXIS_RANGE"]/*' />
/// <unmanaged>DWRITE_FONT_AXIS_RANGE</unmanaged> /// <unmanaged>DWRITE_FONT_AXIS_RANGE</unmanaged>
public partial struct FontAxisRange public partial struct FontAxisRange
@@ -3018,7 +2978,6 @@ public partial struct FontAxisRange
/// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_AXIS_RANGE::maxValue"]/*' /> /// <include file='../DirectWrite.xml' path='doc/member[@name="DWRITE_FONT_AXIS_RANGE::maxValue"]/*' />
public float maxValue; public float maxValue;
} }
#endregion Structs #endregion Structs
#region COM Types #region COM Types
@@ -3029,6 +2988,5 @@ public static unsafe partial class Apis
{ {
[DllImport("DWrite", ExactSpelling = true)] [DllImport("DWrite", ExactSpelling = true)]
public static extern HResult DWriteCreateFactory(FactoryType factoryType, Guid* iid, IUnknown** factory); public static extern HResult DWriteCreateFactory(FactoryType factoryType, Guid* iid, IUnknown** factory);
} }
#endregion Functions #endregion Functions

View File

@@ -540,7 +540,6 @@ public enum AlphaMode : uint
/// <unmanaged>DXGI_ALPHA_MODE_IGNORE</unmanaged> /// <unmanaged>DXGI_ALPHA_MODE_IGNORE</unmanaged>
Ignore = 3, Ignore = 3,
} }
#endregion Enums #endregion Enums
#region Generated Enums #region Generated Enums
@@ -558,7 +557,6 @@ public enum CpuAccess : uint
/// <unmanaged>DXGI_CPU_ACCESS_FIELD</unmanaged> /// <unmanaged>DXGI_CPU_ACCESS_FIELD</unmanaged>
Field = 15, Field = 15,
} }
#endregion Generated Enums #endregion Generated Enums
#region Structs #region Structs
@@ -572,7 +570,6 @@ public partial struct Rational
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_RATIONAL::Denominator"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_RATIONAL::Denominator"]/*' />
public uint Denominator; public uint Denominator;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SAMPLE_DESC"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SAMPLE_DESC"]/*' />
/// <unmanaged>DXGI_SAMPLE_DESC</unmanaged> /// <unmanaged>DXGI_SAMPLE_DESC</unmanaged>
public partial struct SampleDescription public partial struct SampleDescription
@@ -583,7 +580,6 @@ public partial struct SampleDescription
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SAMPLE_DESC::Quality"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SAMPLE_DESC::Quality"]/*' />
public uint Quality; public uint Quality;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_RGB"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_RGB"]/*' />
/// <unmanaged>DXGI_RGB</unmanaged> /// <unmanaged>DXGI_RGB</unmanaged>
public partial struct Rgb public partial struct Rgb
@@ -597,7 +593,6 @@ public partial struct Rgb
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_RGB::Blue"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_RGB::Blue"]/*' />
public float Blue; public float Blue;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_GAMMA_CONTROL"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_GAMMA_CONTROL"]/*' />
/// <unmanaged>DXGI_GAMMA_CONTROL</unmanaged> /// <unmanaged>DXGI_GAMMA_CONTROL</unmanaged>
public partial struct GammaControl public partial struct GammaControl
@@ -1657,7 +1652,6 @@ public partial struct GammaControl
} }
} }
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_GAMMA_CONTROL_CAPABILITIES"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_GAMMA_CONTROL_CAPABILITIES"]/*' />
/// <unmanaged>DXGI_GAMMA_CONTROL_CAPABILITIES</unmanaged> /// <unmanaged>DXGI_GAMMA_CONTROL_CAPABILITIES</unmanaged>
public partial struct GammaControlCapabilities public partial struct GammaControlCapabilities
@@ -1677,7 +1671,6 @@ public partial struct GammaControlCapabilities
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_GAMMA_CONTROL_CAPABILITIES::ControlPointPositions"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_GAMMA_CONTROL_CAPABILITIES::ControlPointPositions"]/*' />
public unsafe fixed float ControlPointPositions[1025]; public unsafe fixed float ControlPointPositions[1025];
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MODE_DESC"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MODE_DESC"]/*' />
/// <unmanaged>DXGI_MODE_DESC</unmanaged> /// <unmanaged>DXGI_MODE_DESC</unmanaged>
public partial struct ModeDescription public partial struct ModeDescription
@@ -1700,7 +1693,6 @@ public partial struct ModeDescription
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MODE_DESC::Scaling"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MODE_DESC::Scaling"]/*' />
public ModeScaling Scaling; public ModeScaling Scaling;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_JPEG_DC_HUFFMAN_TABLE"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_JPEG_DC_HUFFMAN_TABLE"]/*' />
/// <unmanaged>DXGI_JPEG_DC_HUFFMAN_TABLE</unmanaged> /// <unmanaged>DXGI_JPEG_DC_HUFFMAN_TABLE</unmanaged>
public partial struct JpegDCHuffmanTable public partial struct JpegDCHuffmanTable
@@ -1711,7 +1703,6 @@ public partial struct JpegDCHuffmanTable
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_JPEG_DC_HUFFMAN_TABLE::CodeValues"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_JPEG_DC_HUFFMAN_TABLE::CodeValues"]/*' />
public unsafe fixed byte CodeValues[12]; public unsafe fixed byte CodeValues[12];
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_JPEG_AC_HUFFMAN_TABLE"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_JPEG_AC_HUFFMAN_TABLE"]/*' />
/// <unmanaged>DXGI_JPEG_AC_HUFFMAN_TABLE</unmanaged> /// <unmanaged>DXGI_JPEG_AC_HUFFMAN_TABLE</unmanaged>
public partial struct JpegAcHuffmanTable public partial struct JpegAcHuffmanTable
@@ -1722,7 +1713,6 @@ public partial struct JpegAcHuffmanTable
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_JPEG_AC_HUFFMAN_TABLE::CodeValues"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_JPEG_AC_HUFFMAN_TABLE::CodeValues"]/*' />
public unsafe fixed byte CodeValues[162]; public unsafe fixed byte CodeValues[162];
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_JPEG_QUANTIZATION_TABLE"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_JPEG_QUANTIZATION_TABLE"]/*' />
/// <unmanaged>DXGI_JPEG_QUANTIZATION_TABLE</unmanaged> /// <unmanaged>DXGI_JPEG_QUANTIZATION_TABLE</unmanaged>
public partial struct JpegQuantizationTable public partial struct JpegQuantizationTable
@@ -1730,6 +1720,5 @@ public partial struct JpegQuantizationTable
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_JPEG_QUANTIZATION_TABLE::Elements"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_JPEG_QUANTIZATION_TABLE::Elements"]/*' />
public unsafe fixed byte Elements[64]; public unsafe fixed byte Elements[64];
} }
#endregion Structs #endregion Structs

View File

@@ -1638,7 +1638,6 @@ public enum MessageId : int
/// <unmanaged>DXGI_MSG_Phone_IDXGISwapChain_GetBackgroundColor_FlipSequentialRequired</unmanaged> /// <unmanaged>DXGI_MSG_Phone_IDXGISwapChain_GetBackgroundColor_FlipSequentialRequired</unmanaged>
Phone_IDXGISwapChain_GetBackgroundColor_FlipSequentialRequired = 1031, Phone_IDXGISwapChain_GetBackgroundColor_FlipSequentialRequired = 1031,
} }
#endregion Enums #endregion Enums
#region Generated Enums #region Generated Enums
@@ -1730,7 +1729,6 @@ public enum WindowAssociationFlags : uint
/// <unmanaged>DXGI_MWA_VALID</unmanaged> /// <unmanaged>DXGI_MWA_VALID</unmanaged>
Valid = 7, Valid = 7,
} }
#endregion Generated Enums #endregion Generated Enums
#region Structs #region Structs
@@ -1753,7 +1751,6 @@ public partial struct FrameStatistics
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_FRAME_STATISTICS::SyncGPUTime"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_FRAME_STATISTICS::SyncGPUTime"]/*' />
public LargeInteger SyncGPUTime; public LargeInteger SyncGPUTime;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MAPPED_RECT"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MAPPED_RECT"]/*' />
/// <unmanaged>DXGI_MAPPED_RECT</unmanaged> /// <unmanaged>DXGI_MAPPED_RECT</unmanaged>
public partial struct MappedRect public partial struct MappedRect
@@ -1764,7 +1761,6 @@ public partial struct MappedRect
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MAPPED_RECT::pBits"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MAPPED_RECT::pBits"]/*' />
public unsafe byte* pBits; public unsafe byte* pBits;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC"]/*' />
/// <unmanaged>DXGI_ADAPTER_DESC</unmanaged> /// <unmanaged>DXGI_ADAPTER_DESC</unmanaged>
public partial struct AdapterDescription public partial struct AdapterDescription
@@ -1796,7 +1792,6 @@ public partial struct AdapterDescription
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC::AdapterLuid"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC::AdapterLuid"]/*' />
public Luid AdapterLuid; public Luid AdapterLuid;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTPUT_DESC"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTPUT_DESC"]/*' />
/// <unmanaged>DXGI_OUTPUT_DESC</unmanaged> /// <unmanaged>DXGI_OUTPUT_DESC</unmanaged>
public partial struct OutputDescription public partial struct OutputDescription
@@ -1816,7 +1811,6 @@ public partial struct OutputDescription
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTPUT_DESC::Monitor"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTPUT_DESC::Monitor"]/*' />
public IntPtr Monitor; public IntPtr Monitor;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SHARED_RESOURCE"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SHARED_RESOURCE"]/*' />
/// <unmanaged>DXGI_SHARED_RESOURCE</unmanaged> /// <unmanaged>DXGI_SHARED_RESOURCE</unmanaged>
public partial struct SharedResource public partial struct SharedResource
@@ -1824,7 +1818,6 @@ public partial struct SharedResource
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SHARED_RESOURCE::Handle"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SHARED_RESOURCE::Handle"]/*' />
public Handle Handle; public Handle Handle;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SURFACE_DESC"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SURFACE_DESC"]/*' />
/// <unmanaged>DXGI_SURFACE_DESC</unmanaged> /// <unmanaged>DXGI_SURFACE_DESC</unmanaged>
public partial struct SurfaceDescription public partial struct SurfaceDescription
@@ -1841,7 +1834,6 @@ public partial struct SurfaceDescription
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SURFACE_DESC::SampleDesc"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SURFACE_DESC::SampleDesc"]/*' />
public Common.SampleDescription SampleDesc; public Common.SampleDescription SampleDesc;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_DESC"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_DESC"]/*' />
/// <unmanaged>DXGI_SWAP_CHAIN_DESC</unmanaged> /// <unmanaged>DXGI_SWAP_CHAIN_DESC</unmanaged>
public partial struct SwapChainDescription public partial struct SwapChainDescription
@@ -1870,7 +1862,6 @@ public partial struct SwapChainDescription
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_DESC::Flags"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_DESC::Flags"]/*' />
public SwapChainFlags Flags; public SwapChainFlags Flags;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC1"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC1"]/*' />
/// <unmanaged>DXGI_ADAPTER_DESC1</unmanaged> /// <unmanaged>DXGI_ADAPTER_DESC1</unmanaged>
public partial struct AdapterDescription1 public partial struct AdapterDescription1
@@ -1905,7 +1896,6 @@ public partial struct AdapterDescription1
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC1::Flags"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC1::Flags"]/*' />
public AdapterFlags Flags; public AdapterFlags Flags;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_DISPLAY_COLOR_SPACE"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_DISPLAY_COLOR_SPACE"]/*' />
/// <unmanaged>DXGI_DISPLAY_COLOR_SPACE</unmanaged> /// <unmanaged>DXGI_DISPLAY_COLOR_SPACE</unmanaged>
public partial struct DisplayColorSpace public partial struct DisplayColorSpace
@@ -1916,7 +1906,6 @@ public partial struct DisplayColorSpace
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_DISPLAY_COLOR_SPACE::WhitePoints"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_DISPLAY_COLOR_SPACE::WhitePoints"]/*' />
public unsafe fixed float WhitePoints[32]; public unsafe fixed float WhitePoints[32];
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_MOVE_RECT"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_MOVE_RECT"]/*' />
/// <unmanaged>DXGI_OUTDUPL_MOVE_RECT</unmanaged> /// <unmanaged>DXGI_OUTDUPL_MOVE_RECT</unmanaged>
public partial struct OutduplMoveRect public partial struct OutduplMoveRect
@@ -1927,7 +1916,6 @@ public partial struct OutduplMoveRect
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_MOVE_RECT::DestinationRect"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_MOVE_RECT::DestinationRect"]/*' />
public RawRect DestinationRect; public RawRect DestinationRect;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_DESC"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_DESC"]/*' />
/// <unmanaged>DXGI_OUTDUPL_DESC</unmanaged> /// <unmanaged>DXGI_OUTDUPL_DESC</unmanaged>
public partial struct OutduplDescription public partial struct OutduplDescription
@@ -1941,7 +1929,6 @@ public partial struct OutduplDescription
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_DESC::DesktopImageInSystemMemory"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_DESC::DesktopImageInSystemMemory"]/*' />
public Bool32 DesktopImageInSystemMemory; public Bool32 DesktopImageInSystemMemory;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_POINTER_POSITION"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_POINTER_POSITION"]/*' />
/// <unmanaged>DXGI_OUTDUPL_POINTER_POSITION</unmanaged> /// <unmanaged>DXGI_OUTDUPL_POINTER_POSITION</unmanaged>
public partial struct OutduplPointerPosition public partial struct OutduplPointerPosition
@@ -1952,7 +1939,6 @@ public partial struct OutduplPointerPosition
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_POINTER_POSITION::Visible"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_POINTER_POSITION::Visible"]/*' />
public Bool32 Visible; public Bool32 Visible;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_POINTER_SHAPE_INFO"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_POINTER_SHAPE_INFO"]/*' />
/// <unmanaged>DXGI_OUTDUPL_POINTER_SHAPE_INFO</unmanaged> /// <unmanaged>DXGI_OUTDUPL_POINTER_SHAPE_INFO</unmanaged>
public partial struct OutduplPointerShapeInfo public partial struct OutduplPointerShapeInfo
@@ -1972,7 +1958,6 @@ public partial struct OutduplPointerShapeInfo
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_POINTER_SHAPE_INFO::HotSpot"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_POINTER_SHAPE_INFO::HotSpot"]/*' />
public System.Drawing.Point HotSpot; public System.Drawing.Point HotSpot;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_FRAME_INFO"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_FRAME_INFO"]/*' />
/// <unmanaged>DXGI_OUTDUPL_FRAME_INFO</unmanaged> /// <unmanaged>DXGI_OUTDUPL_FRAME_INFO</unmanaged>
public partial struct OutduplFrameInfo public partial struct OutduplFrameInfo
@@ -2001,7 +1986,6 @@ public partial struct OutduplFrameInfo
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_FRAME_INFO::PointerShapeBufferSize"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTDUPL_FRAME_INFO::PointerShapeBufferSize"]/*' />
public uint PointerShapeBufferSize; public uint PointerShapeBufferSize;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MODE_DESC1"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MODE_DESC1"]/*' />
/// <unmanaged>DXGI_MODE_DESC1</unmanaged> /// <unmanaged>DXGI_MODE_DESC1</unmanaged>
public partial struct ModeDescription1 public partial struct ModeDescription1
@@ -2027,7 +2011,6 @@ public partial struct ModeDescription1
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MODE_DESC1::Stereo"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MODE_DESC1::Stereo"]/*' />
public Bool32 Stereo; public Bool32 Stereo;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_DESC1"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_DESC1"]/*' />
/// <unmanaged>DXGI_SWAP_CHAIN_DESC1</unmanaged> /// <unmanaged>DXGI_SWAP_CHAIN_DESC1</unmanaged>
public partial struct SwapChainDescription1 public partial struct SwapChainDescription1
@@ -2065,7 +2048,6 @@ public partial struct SwapChainDescription1
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_DESC1::Flags"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_DESC1::Flags"]/*' />
public SwapChainFlags Flags; public SwapChainFlags Flags;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_FULLSCREEN_DESC"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_FULLSCREEN_DESC"]/*' />
/// <unmanaged>DXGI_SWAP_CHAIN_FULLSCREEN_DESC</unmanaged> /// <unmanaged>DXGI_SWAP_CHAIN_FULLSCREEN_DESC</unmanaged>
public partial struct SwapChainFullscreenDescription public partial struct SwapChainFullscreenDescription
@@ -2082,7 +2064,6 @@ public partial struct SwapChainFullscreenDescription
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_FULLSCREEN_DESC::Windowed"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_FULLSCREEN_DESC::Windowed"]/*' />
public Bool32 Windowed; public Bool32 Windowed;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_PRESENT_PARAMETERS"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_PRESENT_PARAMETERS"]/*' />
/// <unmanaged>DXGI_PRESENT_PARAMETERS</unmanaged> /// <unmanaged>DXGI_PRESENT_PARAMETERS</unmanaged>
public partial struct PresentParameters public partial struct PresentParameters
@@ -2099,7 +2080,6 @@ public partial struct PresentParameters
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_PRESENT_PARAMETERS::pScrollOffset"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_PRESENT_PARAMETERS::pScrollOffset"]/*' />
public unsafe System.Drawing.Point* pScrollOffset; public unsafe System.Drawing.Point* pScrollOffset;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC2"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC2"]/*' />
/// <unmanaged>DXGI_ADAPTER_DESC2</unmanaged> /// <unmanaged>DXGI_ADAPTER_DESC2</unmanaged>
public partial struct AdapterDescription2 public partial struct AdapterDescription2
@@ -2140,7 +2120,6 @@ public partial struct AdapterDescription2
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC2::ComputePreemptionGranularity"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC2::ComputePreemptionGranularity"]/*' />
public ComputePreemptionGranularity ComputePreemptionGranularity; public ComputePreemptionGranularity ComputePreemptionGranularity;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_DECODE_SWAP_CHAIN_DESC"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_DECODE_SWAP_CHAIN_DESC"]/*' />
/// <unmanaged>DXGI_DECODE_SWAP_CHAIN_DESC</unmanaged> /// <unmanaged>DXGI_DECODE_SWAP_CHAIN_DESC</unmanaged>
public partial struct DecodeSwapChainDescription public partial struct DecodeSwapChainDescription
@@ -2148,7 +2127,6 @@ public partial struct DecodeSwapChainDescription
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_DECODE_SWAP_CHAIN_DESC::Flags"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_DECODE_SWAP_CHAIN_DESC::Flags"]/*' />
public SwapChainFlags Flags; public SwapChainFlags Flags;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_FRAME_STATISTICS_MEDIA"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_FRAME_STATISTICS_MEDIA"]/*' />
/// <unmanaged>DXGI_FRAME_STATISTICS_MEDIA</unmanaged> /// <unmanaged>DXGI_FRAME_STATISTICS_MEDIA</unmanaged>
public partial struct FrameStatisticsMedia public partial struct FrameStatisticsMedia
@@ -2174,7 +2152,6 @@ public partial struct FrameStatisticsMedia
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_FRAME_STATISTICS_MEDIA::ApprovedPresentDuration"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_FRAME_STATISTICS_MEDIA::ApprovedPresentDuration"]/*' />
public uint ApprovedPresentDuration; public uint ApprovedPresentDuration;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_QUERY_VIDEO_MEMORY_INFO"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_QUERY_VIDEO_MEMORY_INFO"]/*' />
/// <unmanaged>DXGI_QUERY_VIDEO_MEMORY_INFO</unmanaged> /// <unmanaged>DXGI_QUERY_VIDEO_MEMORY_INFO</unmanaged>
public partial struct QueryVideoMemoryInfo public partial struct QueryVideoMemoryInfo
@@ -2191,7 +2168,6 @@ public partial struct QueryVideoMemoryInfo
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_QUERY_VIDEO_MEMORY_INFO::CurrentReservation"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_QUERY_VIDEO_MEMORY_INFO::CurrentReservation"]/*' />
public ulong CurrentReservation; public ulong CurrentReservation;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_HDR_METADATA_HDR10"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_HDR_METADATA_HDR10"]/*' />
/// <unmanaged>DXGI_HDR_METADATA_HDR10</unmanaged> /// <unmanaged>DXGI_HDR_METADATA_HDR10</unmanaged>
public partial struct HDRMetadataHdr10 public partial struct HDRMetadataHdr10
@@ -2220,7 +2196,6 @@ public partial struct HDRMetadataHdr10
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_HDR_METADATA_HDR10::MaxFrameAverageLightLevel"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_HDR_METADATA_HDR10::MaxFrameAverageLightLevel"]/*' />
public ushort MaxFrameAverageLightLevel; public ushort MaxFrameAverageLightLevel;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_HDR_METADATA_HDR10PLUS"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_HDR_METADATA_HDR10PLUS"]/*' />
/// <unmanaged>DXGI_HDR_METADATA_HDR10PLUS</unmanaged> /// <unmanaged>DXGI_HDR_METADATA_HDR10PLUS</unmanaged>
public partial struct HDRMetadataHdr10plus public partial struct HDRMetadataHdr10plus
@@ -2228,7 +2203,6 @@ public partial struct HDRMetadataHdr10plus
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_HDR_METADATA_HDR10PLUS::Data"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_HDR_METADATA_HDR10PLUS::Data"]/*' />
public unsafe fixed byte Data[72]; public unsafe fixed byte Data[72];
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC3"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC3"]/*' />
/// <unmanaged>DXGI_ADAPTER_DESC3</unmanaged> /// <unmanaged>DXGI_ADAPTER_DESC3</unmanaged>
public partial struct AdapterDescription3 public partial struct AdapterDescription3
@@ -2269,7 +2243,6 @@ public partial struct AdapterDescription3
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC3::ComputePreemptionGranularity"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_ADAPTER_DESC3::ComputePreemptionGranularity"]/*' />
public ComputePreemptionGranularity ComputePreemptionGranularity; public ComputePreemptionGranularity ComputePreemptionGranularity;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTPUT_DESC1"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTPUT_DESC1"]/*' />
/// <unmanaged>DXGI_OUTPUT_DESC1</unmanaged> /// <unmanaged>DXGI_OUTPUT_DESC1</unmanaged>
public partial struct OutputDescription1 public partial struct OutputDescription1
@@ -2316,7 +2289,6 @@ public partial struct OutputDescription1
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTPUT_DESC1::MaxFullFrameLuminance"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OUTPUT_DESC1::MaxFullFrameLuminance"]/*' />
public float MaxFullFrameLuminance; public float MaxFullFrameLuminance;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_INFO_QUEUE_MESSAGE"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_INFO_QUEUE_MESSAGE"]/*' />
/// <unmanaged>DXGI_INFO_QUEUE_MESSAGE</unmanaged> /// <unmanaged>DXGI_INFO_QUEUE_MESSAGE</unmanaged>
public partial struct InfoQueueMessage public partial struct InfoQueueMessage
@@ -2339,7 +2311,6 @@ public partial struct InfoQueueMessage
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_INFO_QUEUE_MESSAGE::DescriptionByteLength"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_INFO_QUEUE_MESSAGE::DescriptionByteLength"]/*' />
public nuint DescriptionByteLength; public nuint DescriptionByteLength;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_INFO_QUEUE_FILTER_DESC"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_INFO_QUEUE_FILTER_DESC"]/*' />
/// <unmanaged>DXGI_INFO_QUEUE_FILTER_DESC</unmanaged> /// <unmanaged>DXGI_INFO_QUEUE_FILTER_DESC</unmanaged>
public partial struct InfoQueueFilterDescription public partial struct InfoQueueFilterDescription
@@ -2362,7 +2333,6 @@ public partial struct InfoQueueFilterDescription
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_INFO_QUEUE_FILTER_DESC::pIDList"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_INFO_QUEUE_FILTER_DESC::pIDList"]/*' />
public unsafe int* pIDList; public unsafe int* pIDList;
} }
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_INFO_QUEUE_FILTER"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_INFO_QUEUE_FILTER"]/*' />
/// <unmanaged>DXGI_INFO_QUEUE_FILTER</unmanaged> /// <unmanaged>DXGI_INFO_QUEUE_FILTER</unmanaged>
public partial struct InfoQueueFilter public partial struct InfoQueueFilter
@@ -2373,7 +2343,6 @@ public partial struct InfoQueueFilter
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_INFO_QUEUE_FILTER::DenyList"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_INFO_QUEUE_FILTER::DenyList"]/*' />
public InfoQueueFilterDescription DenyList; public InfoQueueFilterDescription DenyList;
} }
#endregion Structs #endregion Structs
#region COM Types #region COM Types
@@ -2396,6 +2365,5 @@ public static unsafe partial class Apis
[DllImport("dxgi", ExactSpelling = true)] [DllImport("dxgi", ExactSpelling = true)]
public static extern HResult DXGIDeclareAdapterRemovalSupport(); public static extern HResult DXGIDeclareAdapterRemovalSupport();
} }
#endregion Functions #endregion Functions

View File

@@ -37,6 +37,5 @@ public enum AffineTransform2DInterpolationMode : uint
/// <unmanaged>D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC</unmanaged> /// <unmanaged>D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC</unmanaged>
HighQualityCubic = 5, HighQualityCubic = 5,
} }
#endregion Enums #endregion Enums

View File

@@ -7449,7 +7449,6 @@ public enum WICPersistOptions : int
/// <unmanaged>WICPersistOptionMask</unmanaged> /// <unmanaged>WICPersistOptionMask</unmanaged>
WICPersistOptionMask = 65535, WICPersistOptionMask = 65535,
} }
#endregion Enums #endregion Enums
#region Structs #region Structs
@@ -7472,7 +7471,6 @@ public partial struct WICBitmapPattern
/// <include file='../Imaging.xml' path='doc/member[@name="WICBitmapPattern::EndOfStream"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICBitmapPattern::EndOfStream"]/*' />
public Bool32 EndOfStream; public Bool32 EndOfStream;
} }
/// <include file='../Imaging.xml' path='doc/member[@name="WICImageParameters"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICImageParameters"]/*' />
/// <unmanaged>WICImageParameters</unmanaged> /// <unmanaged>WICImageParameters</unmanaged>
public partial struct WICImageParameters public partial struct WICImageParameters
@@ -7498,7 +7496,6 @@ public partial struct WICImageParameters
/// <include file='../Imaging.xml' path='doc/member[@name="WICImageParameters::PixelHeight"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICImageParameters::PixelHeight"]/*' />
public uint PixelHeight; public uint PixelHeight;
} }
/// <include file='../Imaging.xml' path='doc/member[@name="WICBitmapPlaneDescription"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICBitmapPlaneDescription"]/*' />
/// <unmanaged>WICBitmapPlaneDescription</unmanaged> /// <unmanaged>WICBitmapPlaneDescription</unmanaged>
public partial struct WICBitmapPlaneDescription public partial struct WICBitmapPlaneDescription
@@ -7512,7 +7509,6 @@ public partial struct WICBitmapPlaneDescription
/// <include file='../Imaging.xml' path='doc/member[@name="WICBitmapPlaneDescription::Height"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICBitmapPlaneDescription::Height"]/*' />
public uint Height; public uint Height;
} }
/// <include file='../Imaging.xml' path='doc/member[@name="WICBitmapPlane"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICBitmapPlane"]/*' />
/// <unmanaged>WICBitmapPlane</unmanaged> /// <unmanaged>WICBitmapPlane</unmanaged>
public partial struct WICBitmapPlane public partial struct WICBitmapPlane
@@ -7529,7 +7525,6 @@ public partial struct WICBitmapPlane
/// <include file='../Imaging.xml' path='doc/member[@name="WICBitmapPlane::cbBufferSize"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICBitmapPlane::cbBufferSize"]/*' />
public uint cbBufferSize; public uint cbBufferSize;
} }
/// <include file='../Imaging.xml' path='doc/member[@name="WICJpegFrameHeader"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICJpegFrameHeader"]/*' />
/// <unmanaged>WICJpegFrameHeader</unmanaged> /// <unmanaged>WICJpegFrameHeader</unmanaged>
public partial struct WICJpegFrameHeader public partial struct WICJpegFrameHeader
@@ -7558,7 +7553,6 @@ public partial struct WICJpegFrameHeader
/// <include file='../Imaging.xml' path='doc/member[@name="WICJpegFrameHeader::QuantizationTableIndices"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICJpegFrameHeader::QuantizationTableIndices"]/*' />
public uint QuantizationTableIndices; public uint QuantizationTableIndices;
} }
/// <include file='../Imaging.xml' path='doc/member[@name="WICJpegScanHeader"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICJpegScanHeader"]/*' />
/// <unmanaged>WICJpegScanHeader</unmanaged> /// <unmanaged>WICJpegScanHeader</unmanaged>
public partial struct WICJpegScanHeader public partial struct WICJpegScanHeader
@@ -7587,7 +7581,6 @@ public partial struct WICJpegScanHeader
/// <include file='../Imaging.xml' path='doc/member[@name="WICJpegScanHeader::SuccessiveApproximationLow"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICJpegScanHeader::SuccessiveApproximationLow"]/*' />
public byte SuccessiveApproximationLow; public byte SuccessiveApproximationLow;
} }
/// <include file='../Imaging.xml' path='doc/member[@name="WICRawCapabilitiesInfo"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICRawCapabilitiesInfo"]/*' />
/// <unmanaged>WICRawCapabilitiesInfo</unmanaged> /// <unmanaged>WICRawCapabilitiesInfo</unmanaged>
public partial struct WICRawCapabilitiesInfo public partial struct WICRawCapabilitiesInfo
@@ -7646,7 +7639,6 @@ public partial struct WICRawCapabilitiesInfo
/// <include file='../Imaging.xml' path='doc/member[@name="WICRawCapabilitiesInfo::RenderModeSupport"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICRawCapabilitiesInfo::RenderModeSupport"]/*' />
public WICRawCapabilities RenderModeSupport; public WICRawCapabilities RenderModeSupport;
} }
/// <include file='../Imaging.xml' path='doc/member[@name="WICRawToneCurvePoint"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICRawToneCurvePoint"]/*' />
/// <unmanaged>WICRawToneCurvePoint</unmanaged> /// <unmanaged>WICRawToneCurvePoint</unmanaged>
public partial struct WICRawToneCurvePoint public partial struct WICRawToneCurvePoint
@@ -7657,7 +7649,6 @@ public partial struct WICRawToneCurvePoint
/// <include file='../Imaging.xml' path='doc/member[@name="WICRawToneCurvePoint::Output"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICRawToneCurvePoint::Output"]/*' />
public double Output; public double Output;
} }
/// <include file='../Imaging.xml' path='doc/member[@name="WICRawToneCurve"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICRawToneCurve"]/*' />
/// <unmanaged>WICRawToneCurve</unmanaged> /// <unmanaged>WICRawToneCurve</unmanaged>
public partial struct WICRawToneCurve public partial struct WICRawToneCurve
@@ -7690,7 +7681,6 @@ public partial struct WICRawToneCurve
} }
} }
} }
/// <include file='../Imaging.xml' path='doc/member[@name="WICDdsParameters"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICDdsParameters"]/*' />
/// <unmanaged>WICDdsParameters</unmanaged> /// <unmanaged>WICDdsParameters</unmanaged>
public partial struct WICDdsParameters public partial struct WICDdsParameters
@@ -7719,7 +7709,6 @@ public partial struct WICDdsParameters
/// <include file='../Imaging.xml' path='doc/member[@name="WICDdsParameters::AlphaMode"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICDdsParameters::AlphaMode"]/*' />
public WICDdsAlphaMode AlphaMode; public WICDdsAlphaMode AlphaMode;
} }
/// <include file='../Imaging.xml' path='doc/member[@name="WICDdsFormatInfo"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICDdsFormatInfo"]/*' />
/// <unmanaged>WICDdsFormatInfo</unmanaged> /// <unmanaged>WICDdsFormatInfo</unmanaged>
public partial struct WICDdsFormatInfo public partial struct WICDdsFormatInfo
@@ -7736,7 +7725,6 @@ public partial struct WICDdsFormatInfo
/// <include file='../Imaging.xml' path='doc/member[@name="WICDdsFormatInfo::BlockHeight"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICDdsFormatInfo::BlockHeight"]/*' />
public uint BlockHeight; public uint BlockHeight;
} }
/// <include file='../Imaging.xml' path='doc/member[@name="WICMetadataPattern"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICMetadataPattern"]/*' />
/// <unmanaged>WICMetadataPattern</unmanaged> /// <unmanaged>WICMetadataPattern</unmanaged>
public partial struct WICMetadataPattern public partial struct WICMetadataPattern
@@ -7756,7 +7744,6 @@ public partial struct WICMetadataPattern
/// <include file='../Imaging.xml' path='doc/member[@name="WICMetadataPattern::DataOffset"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICMetadataPattern::DataOffset"]/*' />
public ULargeInteger DataOffset; public ULargeInteger DataOffset;
} }
/// <include file='../Imaging.xml' path='doc/member[@name="WICMetadataHeader"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICMetadataHeader"]/*' />
/// <unmanaged>WICMetadataHeader</unmanaged> /// <unmanaged>WICMetadataHeader</unmanaged>
public partial struct WICMetadataHeader public partial struct WICMetadataHeader
@@ -7773,7 +7760,6 @@ public partial struct WICMetadataHeader
/// <include file='../Imaging.xml' path='doc/member[@name="WICMetadataHeader::DataOffset"]/*' /> /// <include file='../Imaging.xml' path='doc/member[@name="WICMetadataHeader::DataOffset"]/*' />
public ULargeInteger DataOffset; public ULargeInteger DataOffset;
} }
#endregion Structs #endregion Structs
#region COM Types #region COM Types
@@ -7808,6 +7794,5 @@ public static unsafe partial class Apis
[DllImport("WindowsCodecs", ExactSpelling = true)] [DllImport("WindowsCodecs", ExactSpelling = true)]
public static extern HResult WICGetMetadataContentSize(Guid* guidContainerFormat, IWICMetadataWriter* pIWriter, ULargeInteger* pcbSize); public static extern HResult WICGetMetadataContentSize(Guid* guidContainerFormat, IWICMetadataWriter* pIWriter, ULargeInteger* pcbSize);
} }
#endregion Functions #endregion Functions

View File

@@ -0,0 +1,147 @@
// Copyright © Amer Koleci and Contributors.
// Licensed under the MIT License (MIT). See LICENSE in the repository root for more information.
using System.Buffers;
using System.Text;
using System.Text.RegularExpressions;
using static Win32.Apis;
namespace Win32.Graphics.Direct3D.Fxc;
public static unsafe partial class Apis
{
public static ID3DInclude* D3D_COMPILE_STANDARD_FILE_INCLUDE => (ID3DInclude*)(nuint)1;
public static ComPtr<ID3DBlob> D3DCompile(
ReadOnlySpan<char> source,
ReadOnlySpan<char> entryPoint,
ReadOnlySpan<char> target,
CompileFlags flags = CompileFlags.None)
{
int maxLength = Encoding.ASCII.GetMaxByteCount(source.Length);
byte[] sourceBuffer = ArrayPool<byte>.Shared.Rent(maxLength);
int writtenBytes = Encoding.ASCII.GetBytes(source, sourceBuffer);
maxLength = Encoding.ASCII.GetMaxByteCount(entryPoint.Length);
byte[] entryPointBuffer = ArrayPool<byte>.Shared.Rent(maxLength);
int entryPointWrittenBytes = Encoding.ASCII.GetBytes(entryPoint, entryPointBuffer);
maxLength = Encoding.ASCII.GetMaxByteCount(target.Length);
byte[] targetBuffer = ArrayPool<byte>.Shared.Rent(maxLength);
int targetWrittenBytes = Encoding.ASCII.GetBytes(target, targetBuffer);
try
{
using ComPtr<ID3DBlob> d3dBlobBytecode = default;
using ComPtr<ID3DBlob> d3dBlobErrors = default;
HResult hr = D3DCompile(
sourceBuffer.AsSpan(0, writtenBytes),
entryPointBuffer.AsSpan(0, entryPointWrittenBytes),
targetBuffer.AsSpan(0, targetWrittenBytes),
flags,
d3dBlobBytecode.GetAddressOf(),
d3dBlobErrors.GetAddressOf());
if (hr.Failure)
{
// Throw if an error was retrieved, then also double check the HRESULT
if (d3dBlobErrors.Get() is not null)
{
ThrowHslsCompilationException(d3dBlobErrors.Get());
}
}
hr.ThrowIfFailed();
return d3dBlobBytecode.Move();
}
finally
{
ArrayPool<byte>.Shared.Return(sourceBuffer);
ArrayPool<byte>.Shared.Return(entryPointBuffer);
ArrayPool<byte>.Shared.Return(targetBuffer);
}
}
public static HResult D3DCompile(
ReadOnlySpan<byte> source,
ReadOnlySpan<byte> entryPoint,
ReadOnlySpan<byte> target,
CompileFlags flags,
ID3DBlob** byteCode,
ID3DBlob** errorMessage)
{
fixed (byte* sourcePtr = source)
fixed (byte* entryPointPtr = entryPoint)
fixed (byte* targetPtr = target)
{
HResult hr = D3DCompile(
pSrcData: sourcePtr,
SrcDataSize: (nuint)source.Length,
pSourceName: null,
pDefines: null,
pInclude: D3D_COMPILE_STANDARD_FILE_INCLUDE,
pEntrypoint: (sbyte*)entryPointPtr,
pTarget: (sbyte*)targetPtr,
Flags1: flags,
Flags2: 0u,
ppCode: byteCode,
ppErrorMsgs: errorMessage);
return hr;
}
}
public static HResult D3DCompile(
ReadOnlySpan<byte> source,
ReadOnlySpan<byte> entryPoint,
ReadOnlySpan<byte> target,
ID3DInclude* includeHandler,
CompileFlags flags,
ID3DBlob** byteCode,
ID3DBlob** errorMessage)
{
fixed (byte* sourcePtr = source)
fixed (byte* entryPointPtr = entryPoint)
fixed (byte* targetPtr = target)
{
HResult hr = D3DCompile(
pSrcData: sourcePtr,
SrcDataSize: (nuint)source.Length,
pSourceName: null,
pDefines: null,
pInclude: includeHandler,
pEntrypoint: (sbyte*)entryPointPtr,
pTarget: (sbyte*)targetPtr,
Flags1: flags,
Flags2: 0u,
ppCode: byteCode,
ppErrorMsgs: errorMessage);
return hr;
}
}
#if NET6_0_OR_GREATER
[DoesNotReturn]
#endif
[MethodImpl(MethodImplOptions.NoInlining)]
private static void ThrowHslsCompilationException(ID3DBlob* d3DOperationResult)
{
string message = new((sbyte*)d3DOperationResult->GetBufferPointer());
// The error message will be in a format like this:
// "C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\Roslyn\Shader@0x0000019AD1B4BA70(22,32-35): error X3004: undeclared identifier 'this'"
// This regex tries to match the unnecessary header and remove it, if present. This doesn't need to be bulletproof, and this regex should match all cases anyway.
message = Regex.Replace(message, @"^[A-Z]:\\[^:]+: (\w+ \w+:)", static m => m.Groups[1].Value, RegexOptions.Multiline).Trim();
// Add a trailing '.' if not present
if (message is { Length: > 0 } &&
message[message.Length - 1] != '.')
{
message += '.';
}
throw new FxcCompilationException(message);
}
}

View File

@@ -0,0 +1,40 @@
// Copyright © Amer Koleci and Contributors.
// Licensed under the MIT License (MIT). See LICENSE in the repository root for more information.
using System.Text;
namespace Win32.Graphics.Direct3D.Fxc;
/// <summary>
/// A custom <see cref="Exception"/> type that indicates when a shader compilation with the FXC compiler has failed.
/// </summary>
public sealed class FxcCompilationException : Exception
{
/// <summary>
/// Creates a new <see cref="FxcCompilationException"/> instance.
/// </summary>
/// <param name="error">The error message produced by the DXC compiler.</param>
internal FxcCompilationException(string error)
: base(GetExceptionMessage(error))
{
}
/// <summary>
/// Gets a formatted exception message for a given compilation error.
/// </summary>
/// <param name="error">The input compilatin error message from the FXC compiler.</param>
/// <returns>A formatted error message for a new <see cref="FxcCompilationException"/> instance.</returns>
private static string GetExceptionMessage(string error)
{
StringBuilder builder = new(512);
builder.AppendLine("The FXC compiler encountered one or more errors while trying to compile the shader:");
builder.AppendLine();
builder.AppendLine(error.Trim());
builder.AppendLine();
builder.AppendLine("Make sure to only be using supported features by checking the README file in the ComputeSharp repository: https://github.com/Sergio0694/ComputeSharp.");
builder.Append("If you're sure that your C# shader code is valid, please open an issue an include a working repro and this error message.");
return builder.ToString();
}
}

View File

@@ -3,6 +3,8 @@
#if !NET6_0_OR_GREATER #if !NET6_0_OR_GREATER
using System.Text;
namespace Win32; namespace Win32;
internal static unsafe class Extensions internal static unsafe class Extensions
@@ -56,7 +58,6 @@ internal static unsafe class Extensions
} }
} }
internal static class MemoryMarshal internal static class MemoryMarshal
{ {
/// <inheritdoc cref="global::System.Runtime.InteropServices.MemoryMarshal.GetReference{T}(Span{T})"/> /// <inheritdoc cref="global::System.Runtime.InteropServices.MemoryMarshal.GetReference{T}(Span{T})"/>
@@ -98,4 +99,40 @@ internal static class MemoryMarshal
} }
} }
/// <summary>
/// A polyfill type that mirrors some methods from <see cref="Encoding"/> on .NET 5.
/// </summary>
internal static class EncodingExtensions
{
/// <summary>
/// Encodes into a span of bytes a set of characters from the specified read-only span.
/// </summary>
/// <param name="encoding">The input <see cref="Encoding"/> instance to use.</param>
/// <param name="chars">The span containing the set of characters to encode.</param>
/// <param name="bytes">The byte span to hold the encoded bytes.</param>
/// <returns>The number of encoded bytes.</returns>
public static unsafe int GetBytes(this Encoding encoding, ReadOnlySpan<char> chars, Span<byte> bytes)
{
fixed (char* charsPtr = &MemoryMarshal.GetReference(chars))
fixed (byte* bytesPtr = &MemoryMarshal.GetReference(bytes))
{
return encoding.GetBytes(charsPtr, chars.Length, bytesPtr, bytes.Length);
}
}
/// <summary>
/// Decodes a text from a sequence of bytes.
/// </summary>
/// <param name="encoding">The input <see cref="Encoding"/> instance to use.</param>
/// <param name="bytes">The byte span that holds the encoded bytes.</param>
/// <returns>The resulting text.</returns>
public static unsafe string GetString(this Encoding encoding, ReadOnlySpan<byte> bytes)
{
fixed (byte* bytesPtr = &MemoryMarshal.GetReference(bytes))
{
return encoding.GetString(bytesPtr, bytes.Length);
}
}
}
#endif #endif

View File

@@ -34,19 +34,9 @@ public static unsafe class StringUtilities
if (source is not null) if (source is not null)
{ {
int maxLength = Encoding.UTF8.GetMaxByteCount(source.Length); int maxLength = Encoding.UTF8.GetMaxByteCount(source.Length);
#if NET6_0_OR_GREATER byte[] bytes = new byte[maxLength + 1];
var bytes = new byte[maxLength + 1]; var length = Encoding.UTF8.GetBytes(source.AsSpan(), bytes);
var length = Encoding.UTF8.GetBytes(source, bytes);
result = bytes.AsSpan(0, length); result = bytes.AsSpan(0, length);
#else
byte* bytes = stackalloc byte[maxLength + 1];
fixed (char* namePtr = source)
{
Encoding.UTF8.GetBytes(namePtr, source.Length, bytes, maxLength);
}
bytes[maxLength] = 0;
result = new(bytes, source.Length);
#endif
} }
else else
{ {
@@ -167,10 +157,6 @@ public static unsafe class StringUtilities
if (span.GetPointer() == null) if (span.GetPointer() == null)
return null; return null;
#if NET6_0_OR_GREATER
return Encoding.UTF8.GetString(span.As<sbyte, byte>()); return Encoding.UTF8.GetString(span.As<sbyte, byte>());
#else
return Encoding.UTF8.GetString(span.As<sbyte, byte>().GetPointer(), span.Length);
#endif
} }
} }

View File

@@ -3,7 +3,7 @@
<PropertyGroup> <PropertyGroup>
<TargetFrameworks>netstandard2.0;net6.0;net7.0</TargetFrameworks> <TargetFrameworks>netstandard2.0;net6.0;net7.0</TargetFrameworks>
<Description>Windows API low level bindings.</Description> <Description>Windows API low level bindings.</Description>
<VersionPrefix>1.6.1</VersionPrefix> <VersionPrefix>1.6.2</VersionPrefix>
<VersionSuffix Condition="'$(VersionSuffix)' == ''"></VersionSuffix> <VersionSuffix Condition="'$(VersionSuffix)' == ''"></VersionSuffix>
<GenerateDocumentationFile>true</GenerateDocumentationFile> <GenerateDocumentationFile>true</GenerateDocumentationFile>
<EnablePreviewFeatures>True</EnablePreviewFeatures> <EnablePreviewFeatures>True</EnablePreviewFeatures>