diff --git a/Silk.NET.sln b/Silk.NET.sln
index 963c9e6e66..d4831b99e1 100644
--- a/Silk.NET.sln
+++ b/Silk.NET.sln
@@ -610,6 +610,12 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HelloWorld", "examples\CSha
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.OpenXR.Extensions.NV", "src\OpenXR\Extensions\Silk.NET.OpenXR.Extensions.NV\Silk.NET.OpenXR.Extensions.NV.csproj", "{34D35A41-E974-40C9-8888-3510A0F074AA}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.OpenXR.Extensions.LEIA", "src\OpenXR\Extensions\Silk.NET.OpenXR.Extensions.LEIA\Silk.NET.OpenXR.Extensions.LEIA.csproj", "{B70533BB-FB84-4BC3-888C-88E5F40FD22D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.OpenXR.Extensions.ANDROIDX", "src\OpenXR\Extensions\Silk.NET.OpenXR.Extensions.ANDROIDX\Silk.NET.OpenXR.Extensions.ANDROIDX.csproj", "{25ABCA5E-4FF6-43ED-9A5E-443E1373EC5C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.OpenXR.Extensions.ANDROIDSYS", "src\OpenXR\Extensions\Silk.NET.OpenXR.Extensions.ANDROIDSYS\Silk.NET.OpenXR.Extensions.ANDROIDSYS.csproj", "{01B6FFA0-5B37-44EA-ABDF-7BABD05874C5}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -3715,6 +3721,42 @@ Global
{34D35A41-E974-40C9-8888-3510A0F074AA}.Release|x64.Build.0 = Release|Any CPU
{34D35A41-E974-40C9-8888-3510A0F074AA}.Release|x86.ActiveCfg = Release|Any CPU
{34D35A41-E974-40C9-8888-3510A0F074AA}.Release|x86.Build.0 = Release|Any CPU
+ {B70533BB-FB84-4BC3-888C-88E5F40FD22D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {B70533BB-FB84-4BC3-888C-88E5F40FD22D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {B70533BB-FB84-4BC3-888C-88E5F40FD22D}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {B70533BB-FB84-4BC3-888C-88E5F40FD22D}.Debug|x64.Build.0 = Debug|Any CPU
+ {B70533BB-FB84-4BC3-888C-88E5F40FD22D}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {B70533BB-FB84-4BC3-888C-88E5F40FD22D}.Debug|x86.Build.0 = Debug|Any CPU
+ {B70533BB-FB84-4BC3-888C-88E5F40FD22D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {B70533BB-FB84-4BC3-888C-88E5F40FD22D}.Release|Any CPU.Build.0 = Release|Any CPU
+ {B70533BB-FB84-4BC3-888C-88E5F40FD22D}.Release|x64.ActiveCfg = Release|Any CPU
+ {B70533BB-FB84-4BC3-888C-88E5F40FD22D}.Release|x64.Build.0 = Release|Any CPU
+ {B70533BB-FB84-4BC3-888C-88E5F40FD22D}.Release|x86.ActiveCfg = Release|Any CPU
+ {B70533BB-FB84-4BC3-888C-88E5F40FD22D}.Release|x86.Build.0 = Release|Any CPU
+ {25ABCA5E-4FF6-43ED-9A5E-443E1373EC5C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {25ABCA5E-4FF6-43ED-9A5E-443E1373EC5C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {25ABCA5E-4FF6-43ED-9A5E-443E1373EC5C}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {25ABCA5E-4FF6-43ED-9A5E-443E1373EC5C}.Debug|x64.Build.0 = Debug|Any CPU
+ {25ABCA5E-4FF6-43ED-9A5E-443E1373EC5C}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {25ABCA5E-4FF6-43ED-9A5E-443E1373EC5C}.Debug|x86.Build.0 = Debug|Any CPU
+ {25ABCA5E-4FF6-43ED-9A5E-443E1373EC5C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {25ABCA5E-4FF6-43ED-9A5E-443E1373EC5C}.Release|Any CPU.Build.0 = Release|Any CPU
+ {25ABCA5E-4FF6-43ED-9A5E-443E1373EC5C}.Release|x64.ActiveCfg = Release|Any CPU
+ {25ABCA5E-4FF6-43ED-9A5E-443E1373EC5C}.Release|x64.Build.0 = Release|Any CPU
+ {25ABCA5E-4FF6-43ED-9A5E-443E1373EC5C}.Release|x86.ActiveCfg = Release|Any CPU
+ {25ABCA5E-4FF6-43ED-9A5E-443E1373EC5C}.Release|x86.Build.0 = Release|Any CPU
+ {01B6FFA0-5B37-44EA-ABDF-7BABD05874C5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {01B6FFA0-5B37-44EA-ABDF-7BABD05874C5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {01B6FFA0-5B37-44EA-ABDF-7BABD05874C5}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {01B6FFA0-5B37-44EA-ABDF-7BABD05874C5}.Debug|x64.Build.0 = Debug|Any CPU
+ {01B6FFA0-5B37-44EA-ABDF-7BABD05874C5}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {01B6FFA0-5B37-44EA-ABDF-7BABD05874C5}.Debug|x86.Build.0 = Debug|Any CPU
+ {01B6FFA0-5B37-44EA-ABDF-7BABD05874C5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {01B6FFA0-5B37-44EA-ABDF-7BABD05874C5}.Release|Any CPU.Build.0 = Release|Any CPU
+ {01B6FFA0-5B37-44EA-ABDF-7BABD05874C5}.Release|x64.ActiveCfg = Release|Any CPU
+ {01B6FFA0-5B37-44EA-ABDF-7BABD05874C5}.Release|x64.Build.0 = Release|Any CPU
+ {01B6FFA0-5B37-44EA-ABDF-7BABD05874C5}.Release|x86.ActiveCfg = Release|Any CPU
+ {01B6FFA0-5B37-44EA-ABDF-7BABD05874C5}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -4012,6 +4054,9 @@ Global
{FD0C9C4B-3777-4755-A87B-60FE65D92750} = {6842A2C6-5C7B-42DD-9825-0EDE91BFEBF7}
{9CB90BB8-946F-4962-9365-A97BF5C6550A} = {FD0C9C4B-3777-4755-A87B-60FE65D92750}
{34D35A41-E974-40C9-8888-3510A0F074AA} = {90471225-AC23-424E-B62E-F6EC4C6ECAC0}
+ {B70533BB-FB84-4BC3-888C-88E5F40FD22D} = {90471225-AC23-424E-B62E-F6EC4C6ECAC0}
+ {25ABCA5E-4FF6-43ED-9A5E-443E1373EC5C} = {90471225-AC23-424E-B62E-F6EC4C6ECAC0}
+ {01B6FFA0-5B37-44EA-ABDF-7BABD05874C5} = {90471225-AC23-424E-B62E-F6EC4C6ECAC0}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {F5273D7F-3334-48DF-94E3-41AE6816CD4D}
diff --git a/build/cache/gl.json.gz b/build/cache/gl.json.gz
index 01aa98e02b..d1b89178eb 100644
Binary files a/build/cache/gl.json.gz and b/build/cache/gl.json.gz differ
diff --git a/build/cache/glcore.json.gz b/build/cache/glcore.json.gz
index eb60f76a97..18a7bf7914 100644
Binary files a/build/cache/glcore.json.gz and b/build/cache/glcore.json.gz differ
diff --git a/build/cache/gles2.json.gz b/build/cache/gles2.json.gz
index 46cb8ffd0d..4f19a62455 100644
Binary files a/build/cache/gles2.json.gz and b/build/cache/gles2.json.gz differ
diff --git a/build/props/common.props b/build/props/common.props
index 2947b1d609..9e1ac0d316 100644
--- a/build/props/common.props
+++ b/build/props/common.props
@@ -12,22 +12,49 @@
10
.NET Foundation and Contributors
- Silk.NET December 2023 Update
+ Silk.NET April 2024 Update
- - Added support for UTF-8 file paths in GLFW and SDL windows (thanks @WinstonMao)
- - Updated to OpenXR 1.0.32.1
- - Updated to Vulkan 1.3.273
- - Updated to latest OpenGL specifications
- - Updated to latest OpenCL specifications
- - Fixed Matrix2X2.GetDeterminant returning incorrect values
- - Fixed ALC_SOFT_reopen_device being a non-context extension (thanks @okaniku, @doobah)
+ - Added nint overloads for the cases where OpenGL represents a native-sized integer as a void pointer.
+ - Added support for executing Windowing loops during repaint and drag events on GLFW in some cases. (thanks @otac0n)
+ - Added a distinction between "unset" (-1) and "default" (null) for Windowing depth/stencil buffer bits, defaulting to 24/8 on all platforms unless overridden.
+ - Added support for 64-bit Arm Linux for Assimp, GLFW (+ Windowing & Input), OpenAL Soft, SDL, Vkd3d, Vulkan Loader, SwiftShader, and WGPU. (thanks @alexrp)
+ - Added support for Apple Silicon Macs for OpenAL Soft, Vulkan Loader, and SwiftShader. (thanks @alexrp)
+ - Added support for 32-bit Arm Linux for Assimp, GLFW, OpenAL Soft, SDL, Shaderc, SPIR-V Cross, SPIR-V Reflect, Vkd3d, SwiftShader, and WGPU. (thanks @alexrp)
+ - Added support for 64-bit Windows on Arm for Assimp, OpenAL Soft, VulkanLoader, and SwiftShader. (thanks @alexrp)
+ - Added limited native library support (SPIR-V Tools and Shaderc) for glibc versions as old as 2.17 on Linux platforms.
+ - Added support for new standard cursor shapes in Input and GLFW.
+ - Updated to use `ref readonly` instead of `in`.
+ - Updated to OpenXR 1.1.36.
+ - Updated to DirectStorage 1.2.2.
+ - Updated to Vulkan 1.3.281.
+ - Updated to SDL 2.30.1.
+ - Updated to latest OpenCL specifications.
+ - Updated to latest SPIR-V Reflect.
+ - Updated to latest WebGPU/Dawn/WGPU headers.
+ - Updated Vkd3d native binaries.
+ - Fixed string marshalling occasionally resulting in memory access violations on newer .NET 8 versions.
+ - Fixed Windowing crashing on .NET Framework builds with prefer 32-bit set using GLFW.
+ - Fixed extension loading generic type usage issues with full IL trimming enabled.
+ - Fixed erroneous BreakneckLock acquisition logic slowing input events on mobile/SDL. (thanks @ZingBallyhoo)
+ - Fixed windowing losing events when using multiple windows on desktop with the mobile/SDL implementation. (thanks @ZingBallyhoo)
+ - Fixed some packages not referencing their native counterparts where appropriate. (thanks @alexrp)
+ - Fixed Input events for standalone joysticks not being tracked on GLFW.
+ - Fixed Input events no longer being tracked after 3-10 reopens of the same window on GLFW.
+ - Fixed V-Sync configuration not persisting over window state changes in Windowing.
+ - Fixed Circle.Contains erroneously comparing the squared vector distance from its center against its non-squared radius. (thanks @djoyahoy)
+
+ After this update:
+ - Apple Silicon support is complete except for missing ANGLE binaries.
+ - Arm Linux support is complete except for missing DXVK, ANGLE, and Vulkan Loader (missing on 32-bit only) binaries.
+ - 64-bit Windows on Arm support is complete except for missing DXVK and ANGLE binaries.
+ - 32-bit Windows on Arm remains unsupported except for DirectStorage.
OpenCL;OpenGL;OpenAL;OpenGLES;GLES;Vulkan;Assimp;DirectX;GLFW;SDL;Windowing;Input;Gamepad;Joystick;Keyboard;Mouse;SilkTouch;Source;Generator;C#;F#;.NET;DotNet;Mono;Vector;Math;Maths;Numerics;Game;Graphics;Compute;Audio;Sound;Engine;Silk;Silk.NET;Slim.NET;ElgarTK;GPU;Sharp;Science;Scientific;Visualization;Visual;Audiovisual;Windows;macOS;Linux;Android;Bindings;OSX;Wrapper;Native
true
$(MSBuildThisFileDirectory)/../output_packages
https://github.com/dotnet/Silk.NET
Git
- 2.20.0
+ 2.21.0
Silk.NET is a high-speed, advanced library, providing bindings to popular low-level APIs such as OpenGL, OpenCL, OpenAL, OpenXR, GLFW, SDL, Vulkan, Assimp, and DirectX.
diff --git a/generator.json b/generator.json
index 664f137ba8..a8acf4a210 100644
--- a/generator.json
+++ b/generator.json
@@ -77,6 +77,44 @@
"glPointSizePointerOES"
]
},
+ "glIntAsPtr": {
+ "EdgeFlagPointer": ["pointer"],
+ "EdgeFlagPointerEXT": ["pointer"],
+ "EdgeFlagPointerListIBM": ["pointer"],
+ "VertexPointer": ["pointer"],
+ "VertexPointerEXT": ["pointer"],
+ "VertexPointerListIBM": ["pointer"],
+ "VertexPointervINTEL": ["pointer"],
+ "ColorPointer": ["pointer"],
+ "ColorPointerEXT": ["pointer"],
+ "ColorPointerListIBM": ["pointer"],
+ "ColorPointervINTEL": ["pointer"],
+ "IndexPointer": ["pointer"],
+ "IndexPointerEXT": ["pointer"],
+ "IndexPointerListIBM": ["pointer"],
+ "NormalPointer": ["pointer"],
+ "NormalPointerEXT": ["pointer"],
+ "NormalPointerListIBM": ["pointer"],
+ "NormalPointervINTEL": ["pointer"],
+ "TexCoordPointer": ["pointer"],
+ "TexCoordPointerEXT": ["pointer"],
+ "TexCoordPointerListIBM": ["pointer"],
+ "TexCoordPointervINTEL": ["pointer"],
+ "MultiTexCoordPointerEXT": ["pointer"],
+ "FogCoordPointer": ["pointer"],
+ "FogCoordPointerEXT": ["pointer"],
+ "FogCoordPointerListIBM": ["pointer"],
+ "SecondaryColorPointer": ["pointer"],
+ "SecondaryColorPointerEXT": ["pointer"],
+ "SecondaryColorPointerListIBM": ["pointer"],
+ "VertexAttribPointer": ["pointer"],
+ "VertexAttribPointerARB": ["pointer"],
+ "VertexAttribPointerNV": ["pointer"],
+ "VertexAttribIPointer": ["pointer"],
+ "VertexAttribIPointerEXT": ["pointer"],
+ "TangentPointerEXT": ["pointer"],
+ "BinormalPointerEXT": ["pointer"]
+ },
"extensionsNamespace": "Silk.NET.OpenGL.Extensions",
"typeMaps": [
{
@@ -124,6 +162,44 @@
"Boolean"
],
"namespace": "Silk.NET.OpenGL.Legacy",
+ "glIntAsPtr": {
+ "EdgeFlagPointer": ["pointer"],
+ "EdgeFlagPointerEXT": ["pointer"],
+ "EdgeFlagPointerListIBM": ["pointer"],
+ "VertexPointer": ["pointer"],
+ "VertexPointerEXT": ["pointer"],
+ "VertexPointerListIBM": ["pointer"],
+ "VertexPointervINTEL": ["pointer"],
+ "ColorPointer": ["pointer"],
+ "ColorPointerEXT": ["pointer"],
+ "ColorPointerListIBM": ["pointer"],
+ "ColorPointervINTEL": ["pointer"],
+ "IndexPointer": ["pointer"],
+ "IndexPointerEXT": ["pointer"],
+ "IndexPointerListIBM": ["pointer"],
+ "NormalPointer": ["pointer"],
+ "NormalPointerEXT": ["pointer"],
+ "NormalPointerListIBM": ["pointer"],
+ "NormalPointervINTEL": ["pointer"],
+ "TexCoordPointer": ["pointer"],
+ "TexCoordPointerEXT": ["pointer"],
+ "TexCoordPointerListIBM": ["pointer"],
+ "TexCoordPointervINTEL": ["pointer"],
+ "MultiTexCoordPointerEXT": ["pointer"],
+ "FogCoordPointer": ["pointer"],
+ "FogCoordPointerEXT": ["pointer"],
+ "FogCoordPointerListIBM": ["pointer"],
+ "SecondaryColorPointer": ["pointer"],
+ "SecondaryColorPointerEXT": ["pointer"],
+ "SecondaryColorPointerListIBM": ["pointer"],
+ "VertexAttribPointer": ["pointer"],
+ "VertexAttribPointerARB": ["pointer"],
+ "VertexAttribPointerNV": ["pointer"],
+ "VertexAttribIPointer": ["pointer"],
+ "VertexAttribIPointerEXT": ["pointer"],
+ "TangentPointerEXT": ["pointer"],
+ "BinormalPointerEXT": ["pointer"]
+ },
"extensionsNamespace": "Silk.NET.OpenGL.Legacy.Extensions",
"overloadExclusions": {
"RefOverloader": [
@@ -212,6 +288,44 @@
"Boolean"
],
"namespace": "Silk.NET.OpenGLES",
+ "glIntAsPtr": {
+ "EdgeFlagPointer": ["pointer"],
+ "EdgeFlagPointerEXT": ["pointer"],
+ "EdgeFlagPointerListIBM": ["pointer"],
+ "VertexPointer": ["pointer"],
+ "VertexPointerEXT": ["pointer"],
+ "VertexPointerListIBM": ["pointer"],
+ "VertexPointervINTEL": ["pointer"],
+ "ColorPointer": ["pointer"],
+ "ColorPointerEXT": ["pointer"],
+ "ColorPointerListIBM": ["pointer"],
+ "ColorPointervINTEL": ["pointer"],
+ "IndexPointer": ["pointer"],
+ "IndexPointerEXT": ["pointer"],
+ "IndexPointerListIBM": ["pointer"],
+ "NormalPointer": ["pointer"],
+ "NormalPointerEXT": ["pointer"],
+ "NormalPointerListIBM": ["pointer"],
+ "NormalPointervINTEL": ["pointer"],
+ "TexCoordPointer": ["pointer"],
+ "TexCoordPointerEXT": ["pointer"],
+ "TexCoordPointerListIBM": ["pointer"],
+ "TexCoordPointervINTEL": ["pointer"],
+ "MultiTexCoordPointerEXT": ["pointer"],
+ "FogCoordPointer": ["pointer"],
+ "FogCoordPointerEXT": ["pointer"],
+ "FogCoordPointerListIBM": ["pointer"],
+ "SecondaryColorPointer": ["pointer"],
+ "SecondaryColorPointerEXT": ["pointer"],
+ "SecondaryColorPointerListIBM": ["pointer"],
+ "VertexAttribPointer": ["pointer"],
+ "VertexAttribPointerARB": ["pointer"],
+ "VertexAttribPointerNV": ["pointer"],
+ "VertexAttribIPointer": ["pointer"],
+ "VertexAttribIPointerEXT": ["pointer"],
+ "TangentPointerEXT": ["pointer"],
+ "BinormalPointerEXT": ["pointer"]
+ },
"extensionsNamespace": "Silk.NET.OpenGLES.Extensions",
"overloadExclusions": {
"RefOverloader": [
@@ -763,6 +877,9 @@
"typeMaps": [
{
"$typemapPrecedesInjections": "true",
+ "XrFutureEXT": "FutureEXT",
+ "PFN_xrGetInstanceProcAddr": "PfnGetInstanceProcAddr",
+ "PFN_xrCreateApiLayerInstance": "PfnCreateApiLayerInstance",
"char": "byte",
"XR_DEFINE_ATOM": "uint64_t",
"LUID": "ulong",
diff --git a/src/Core/Silk.NET.BuildTools/Bind/ClassWriter.cs b/src/Core/Silk.NET.BuildTools/Bind/ClassWriter.cs
index 31022310ff..d68ba65763 100644
--- a/src/Core/Silk.NET.BuildTools/Bind/ClassWriter.cs
+++ b/src/Core/Silk.NET.BuildTools/Bind/ClassWriter.cs
@@ -276,10 +276,7 @@ static string GetSignature(Function func)
sw.WriteLine(" public bool TryGetExtension(out T ext)");
sw.WriteLine($" where T:NativeExtension<{@class.ClassName}>");
sw.WriteLine(" {");
- sw.WriteLine(" ext = IsExtensionPresent(GetExtensionAttribute(typeof(T)).Name)");
- sw.WriteLine(" ? (T) Activator.CreateInstance(typeof(T), Context)");
- sw.WriteLine(" : null;");
- sw.WriteLine(" return ext is not null;");
+ sw.WriteLine(" throw new NotImplementedException();");
sw.WriteLine(" }");
sw.WriteLine();
sw.WriteLine(" public override bool IsExtensionPresent(string extension)");
diff --git a/src/Core/Silk.NET.BuildTools/Common/Builders/TypeSignatureBuilder.cs b/src/Core/Silk.NET.BuildTools/Common/Builders/TypeSignatureBuilder.cs
index d042f3725c..1e869a62a7 100644
--- a/src/Core/Silk.NET.BuildTools/Common/Builders/TypeSignatureBuilder.cs
+++ b/src/Core/Silk.NET.BuildTools/Common/Builders/TypeSignatureBuilder.cs
@@ -37,6 +37,8 @@ public sealed class TypeSignatureBuilder
private Function _newFunctionPointerSignature;
private List _newGenericParams;
+
+ private bool _newIsIntAsPtr;
///
/// Initializes a new instance of the class.
@@ -56,6 +58,7 @@ public TypeSignatureBuilder(Type typeSignature)
_newIsGenericType = typeSignature.IsGenericTypeParameterReference;
_newFunctionPointerSignature = typeSignature.FunctionPointerSignature;
_newGenericParams = typeSignature.GenericTypes;
+ _newIsIntAsPtr = typeSignature.IsIntAsPtr;
}
///
@@ -142,7 +145,8 @@ public Type Build()
OriginalGroup = _newOriginalGroup,
OriginalClass = _newOriginalClass,
IsGenericTypeParameterReference = _newIsGenericType,
- GenericTypes = _newGenericParams
+ GenericTypes = _newGenericParams,
+ IsIntAsPtr = _newIsIntAsPtr
};
}
@@ -191,6 +195,12 @@ public TypeSignatureBuilder WithGenericTypes(params Type[] parameters)
_newGenericParams = parameters.ToList();
return this;
}
+
+ public TypeSignatureBuilder WithIsIntAsPtr(bool isIntAsPtr)
+ {
+ _newIsIntAsPtr = isIntAsPtr;
+ return this;
+ }
// ReSharper restore UnusedParameter.Global
}
}
diff --git a/src/Core/Silk.NET.BuildTools/Common/Functions/Type.cs b/src/Core/Silk.NET.BuildTools/Common/Functions/Type.cs
index 0481ffb5dd..8c74c89bfd 100644
--- a/src/Core/Silk.NET.BuildTools/Common/Functions/Type.cs
+++ b/src/Core/Silk.NET.BuildTools/Common/Functions/Type.cs
@@ -102,6 +102,12 @@ public int IndirectionLevels
///
public bool IsThis { get; set; }
+ ///
+ /// Gets or sets a value indicating whether this is a pointer that is actually an integer and not a pointer to a
+ /// memory location.
+ ///
+ public bool IsIntAsPtr { get; set; }
+
///
/// Gets or sets the function pointer signature if this type is a function pointer. May be null.
///
diff --git a/src/Core/Silk.NET.BuildTools/Config.cs b/src/Core/Silk.NET.BuildTools/Config.cs
index 186974d2b6..74e7e6f694 100644
--- a/src/Core/Silk.NET.BuildTools/Config.cs
+++ b/src/Core/Silk.NET.BuildTools/Config.cs
@@ -44,6 +44,7 @@ public class BindTask
[JsonProperty("exclude")] public List ExcludedNativeNames { get; set; } = new();
[JsonProperty("rename")] public Dictionary RenamedNativeNames { get; set; } = new();
[JsonProperty("copy")] public Dictionary CopyFiles { get; set; } = new();
+ [JsonProperty("glIntAsPtr")] public Dictionary IntAsPtr { get; set; } = new();
public void InjectTypeMap(Dictionary map)
=> TypeMaps.Insert
diff --git a/src/Core/Silk.NET.BuildTools/Converters/Khronos/VulkanSpecification.cs b/src/Core/Silk.NET.BuildTools/Converters/Khronos/VulkanSpecification.cs
index 229f603076..5c40bf7f0d 100644
--- a/src/Core/Silk.NET.BuildTools/Converters/Khronos/VulkanSpecification.cs
+++ b/src/Core/Silk.NET.BuildTools/Converters/Khronos/VulkanSpecification.cs
@@ -1,4 +1,5 @@
using System.Collections.Generic;
+using System.Globalization;
using System.IO;
using System.Linq;
using System.Xml.Linq;
@@ -48,18 +49,37 @@ public VulkanSpecification(
Enums = enums.ToArray();
}
+ static long? ParseLong(string token)
+ {
+ return token.StartsWith("0x")
+ ? long.TryParse(token[2..], NumberStyles.HexNumber, null, out var result) ? result : null
+ : long.TryParse(token, out var result2)
+ ? result2
+ : null;
+ }
+
public static VulkanSpecification LoadFromXmlStream(Stream specFileStream)
{
var spec = XDocument.Load(specFileStream);
var registry = spec.Element("registry");
- var commands = registry.Element("commands");
- var commandDefinitions = commands.Elements("command")
+ var commandDefinitions = registry.Elements("commands").Elements("command")
.Select(commandx => CommandDefinition.CreateFromXml(commandx)).ToArray();
var constantDefinitions = registry.Elements("enums")
.Where(enumx => enumx.Attribute("name").Value == "API Constants")
.SelectMany(enumx => enumx.Elements("enum"))
- .Select(enumxx => ConstantDefinition.CreateFromXml(enumxx)).ToArray();
+ .Select(enumxx => ConstantDefinition.CreateFromXml(enumxx))
+ .Concat(
+ registry.Elements("types")
+ .Elements("type")
+ .Where(x => x.HasCategoryAttribute("define"))
+ .Select(x => x.Element("name")?.Value is { Length: > 0 } nm &&
+ ParseLong(x.Value.Replace("#define", "").Replace(nm, "").Trim()) is {} val
+ ? new ConstantDefinition(nm, val.ToString(), "", null)
+ : null
+ )
+ .OfType()
+ ).ToArray();
var types = registry.Elements("types");
var typedefDefinitions = types.Elements("type").Where(xe => xe.Value.Contains("typedef") && xe.HasCategoryAttribute("bitmask"))
diff --git a/src/Core/Silk.NET.BuildTools/Converters/Readers/OpenGLReader.cs b/src/Core/Silk.NET.BuildTools/Converters/Readers/OpenGLReader.cs
index f8b5ea8a0e..9ff82c8628 100644
--- a/src/Core/Silk.NET.BuildTools/Converters/Readers/OpenGLReader.cs
+++ b/src/Core/Silk.NET.BuildTools/Converters/Readers/OpenGLReader.cs
@@ -168,7 +168,7 @@ IEnumerable CoreReadFunctions()
), task.FunctionPrefix
),
NativeName = function,
- Parameters = ParseParameters(xf),
+ Parameters = ParseParameters(xf, task.IntAsPtr),
ProfileName = name,
ProfileVersion = apiVersion,
ReturnType = ParseTypeSignature
@@ -448,7 +448,7 @@ static bool IsMath(ReadOnlySpan span)
throw new InvalidDataException("No valid count could be parsed from the input.");
}
- private static List ParseParameters(XElement functionElement)
+ private static List ParseParameters(XElement functionElement, Dictionary? intAsPtr)
{
var parameterElements = functionElement.Elements().Where(e => e.Name == "param");
var parametersWithComputedCounts =
@@ -470,6 +470,16 @@ private static List ParseParameters(XElement functionElement)
out _
);
+ if ((intAsPtr?.TryGetValue(
+ functionElement.Attribute("name")!.Value,
+ out var intAsPtrParams
+ ) ?? false) &&
+ intAsPtrParams.Contains(parameter.Name)
+ )
+ {
+ parameter.Type.IsIntAsPtr = true;
+ }
+
if (hasComputedCount)
{
parametersWithComputedCounts.Add((parameter, computedCountParameterNames));
diff --git a/src/Core/Silk.NET.BuildTools/Overloading/Overloader.cs b/src/Core/Silk.NET.BuildTools/Overloading/Overloader.cs
index 666dc9f924..2bb0472e76 100644
--- a/src/Core/Silk.NET.BuildTools/Overloading/Overloader.cs
+++ b/src/Core/Silk.NET.BuildTools/Overloading/Overloader.cs
@@ -7,6 +7,7 @@
using System.Linq;
using Silk.NET.BuildTools.Common;
using Silk.NET.BuildTools.Common.Functions;
+using Attribute = Silk.NET.BuildTools.Common.Attribute;
namespace Silk.NET.BuildTools.Overloading
{
@@ -18,7 +19,8 @@ public static class Overloader
{
new GroupOverloader(),
new ClassOverloader(),
- new OpenCLUngroupCompatOverloader()
+ new OpenCLUngroupCompatOverloader(),
+ new UndoIntAsPtrOverloader()
},
new ISimpleParameterOverloader[]
{
@@ -84,6 +86,30 @@ IEnumerable Get(IEnumerable functions, ISimpleParameterOverl
foreach (var overload in SimpleParameterOverloader.GetWithOverloads
(function, profile, overloaders.Filter(function, overloadExcludedFunctions)))
{
+ if (!overload.Attributes.Any(x => x.Name.Contains("Obsolete")) &&
+ overload.Parameters
+ .Where(x => x.Type.IsIntAsPtr && (x.Type.IsByRef || x.Type.IsIn || x.Type.IsOut))
+ .Select(x => x.Name)
+ .ToArray() is { Length: > 0 } intAsPtrParams
+ )
+ {
+ var paramStr = string.Join(", ", intAsPtrParams);
+ overload.Attributes.Add
+ (
+ new Attribute
+ {
+ Name = "Obsolete",
+ Arguments = new List
+ {
+ "\"This overload exposes native-sized integer parameters (which are " +
+ "expressed as pointers in the original C function) as C# references due to a " +
+ "historical error, please consider using overloads that expose the following " +
+ $"parameters as raw pointers or native integers instead: {paramStr}\""
+ }
+ }
+ );
+ }
+
yield return overload;
}
}
diff --git a/src/Core/Silk.NET.BuildTools/Overloading/Simple/UndoIntAsPtrOverloader.cs b/src/Core/Silk.NET.BuildTools/Overloading/Simple/UndoIntAsPtrOverloader.cs
new file mode 100644
index 0000000000..8bfeba0ad0
--- /dev/null
+++ b/src/Core/Silk.NET.BuildTools/Overloading/Simple/UndoIntAsPtrOverloader.cs
@@ -0,0 +1,32 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+using Silk.NET.BuildTools.Common;
+using Silk.NET.BuildTools.Common.Builders;
+using Silk.NET.BuildTools.Common.Functions;
+
+namespace Silk.NET.BuildTools.Overloading;
+
+public class UndoIntAsPtrOverloader : ISimpleParameterOverloader
+{
+ public bool TryGetParameterVariant(Parameter parameter, out Parameter varied, Profile profile)
+ {
+ if (!parameter.Type.IsIntAsPtr || parameter.Type.IndirectionLevels == 0)
+ {
+ varied = null;
+ return false;
+ }
+
+ varied = new ParameterSignatureBuilder(parameter)
+ .WithType
+ (
+ new TypeSignatureBuilder(parameter.Type)
+ .WithIndirectionLevel(parameter.Type.IndirectionLevels - 1)
+ .WithName("nint")
+ .WithIsIntAsPtr(false)
+ .Build()
+ )
+ .Build();
+ return true;
+ }
+}
diff --git a/src/Core/Silk.NET.Core.Win32Extras/Windows.cs b/src/Core/Silk.NET.Core.Win32Extras/Windows.cs
index 5cd72b89c3..634a916c20 100644
--- a/src/Core/Silk.NET.Core.Win32Extras/Windows.cs
+++ b/src/Core/Silk.NET.Core.Win32Extras/Windows.cs
@@ -23,10 +23,7 @@ public static Windows GetApi()
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return ext is not null;
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/Input/Silk.NET.Input.Common/Enums/StandardCursor.cs b/src/Input/Silk.NET.Input.Common/Enums/StandardCursor.cs
index e5bd71a745..003b9c7a00 100644
--- a/src/Input/Silk.NET.Input.Common/Enums/StandardCursor.cs
+++ b/src/Input/Silk.NET.Input.Common/Enums/StandardCursor.cs
@@ -45,6 +45,36 @@ public enum StandardCursor
///
/// Vertical resize arrow cursor.
///
- VResize
+ VResize,
+
+ ///
+ /// Top-left to bottom-right diagonal resize/move arrow cursor.
+ ///
+ NwseResize,
+
+ ///
+ /// Top-right to bottom-left diagonal resize/move arrow cursor.
+ ///
+ NeswResize,
+
+ ///
+ /// Omni-directional resize/move cursor.
+ ///
+ ResizeAll,
+
+ ///
+ /// Operation not allowed cursor.
+ ///
+ NotAllowed,
+
+ ///
+ /// Hourglass/waiting cursor.
+ ///
+ Wait,
+
+ ///
+ /// Regular arrow but with an hourglass/waiting icon cursor.
+ ///
+ WaitArrow
}
}
diff --git a/src/Input/Silk.NET.Input.Common/PublicAPI/net5.0/PublicAPI.Shipped.txt b/src/Input/Silk.NET.Input.Common/PublicAPI/net5.0/PublicAPI.Shipped.txt
index 7645bc3d8b..fcd931642f 100644
--- a/src/Input/Silk.NET.Input.Common/PublicAPI/net5.0/PublicAPI.Shipped.txt
+++ b/src/Input/Silk.NET.Input.Common/PublicAPI/net5.0/PublicAPI.Shipped.txt
@@ -341,3 +341,7 @@ static Silk.NET.Input.InputWindowExtensions.ShouldLoadFirstPartyPlatforms(bool s
static Silk.NET.Input.InputWindowExtensions.TryAdd(string! assemblyName) -> bool
static Silk.NET.Input.ScrollWheel.operator !=(Silk.NET.Input.ScrollWheel left, Silk.NET.Input.ScrollWheel right) -> bool
static Silk.NET.Input.ScrollWheel.operator ==(Silk.NET.Input.ScrollWheel left, Silk.NET.Input.ScrollWheel right) -> bool
+static Silk.NET.Input.GamepadExtensions.LeftThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
+static Silk.NET.Input.GamepadExtensions.LeftThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
+static Silk.NET.Input.GamepadExtensions.RightThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
+static Silk.NET.Input.GamepadExtensions.RightThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
diff --git a/src/Input/Silk.NET.Input.Common/PublicAPI/net5.0/PublicAPI.Unshipped.txt b/src/Input/Silk.NET.Input.Common/PublicAPI/net5.0/PublicAPI.Unshipped.txt
index 862d9e4729..601f586cb1 100644
--- a/src/Input/Silk.NET.Input.Common/PublicAPI/net5.0/PublicAPI.Unshipped.txt
+++ b/src/Input/Silk.NET.Input.Common/PublicAPI/net5.0/PublicAPI.Unshipped.txt
@@ -1,5 +1,7 @@
#nullable enable
-static Silk.NET.Input.GamepadExtensions.LeftThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
-static Silk.NET.Input.GamepadExtensions.LeftThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
-static Silk.NET.Input.GamepadExtensions.RightThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
-static Silk.NET.Input.GamepadExtensions.RightThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
+Silk.NET.Input.StandardCursor.ResizeAll = 9 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.NeswResize = 8 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.NotAllowed = 10 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.NwseResize = 7 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.Wait = 11 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.WaitArrow = 12 -> Silk.NET.Input.StandardCursor
diff --git a/src/Input/Silk.NET.Input.Common/PublicAPI/netcoreapp3.1/PublicAPI.Shipped.txt b/src/Input/Silk.NET.Input.Common/PublicAPI/netcoreapp3.1/PublicAPI.Shipped.txt
index 7645bc3d8b..fcd931642f 100644
--- a/src/Input/Silk.NET.Input.Common/PublicAPI/netcoreapp3.1/PublicAPI.Shipped.txt
+++ b/src/Input/Silk.NET.Input.Common/PublicAPI/netcoreapp3.1/PublicAPI.Shipped.txt
@@ -341,3 +341,7 @@ static Silk.NET.Input.InputWindowExtensions.ShouldLoadFirstPartyPlatforms(bool s
static Silk.NET.Input.InputWindowExtensions.TryAdd(string! assemblyName) -> bool
static Silk.NET.Input.ScrollWheel.operator !=(Silk.NET.Input.ScrollWheel left, Silk.NET.Input.ScrollWheel right) -> bool
static Silk.NET.Input.ScrollWheel.operator ==(Silk.NET.Input.ScrollWheel left, Silk.NET.Input.ScrollWheel right) -> bool
+static Silk.NET.Input.GamepadExtensions.LeftThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
+static Silk.NET.Input.GamepadExtensions.LeftThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
+static Silk.NET.Input.GamepadExtensions.RightThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
+static Silk.NET.Input.GamepadExtensions.RightThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
diff --git a/src/Input/Silk.NET.Input.Common/PublicAPI/netcoreapp3.1/PublicAPI.Unshipped.txt b/src/Input/Silk.NET.Input.Common/PublicAPI/netcoreapp3.1/PublicAPI.Unshipped.txt
index 862d9e4729..601f586cb1 100644
--- a/src/Input/Silk.NET.Input.Common/PublicAPI/netcoreapp3.1/PublicAPI.Unshipped.txt
+++ b/src/Input/Silk.NET.Input.Common/PublicAPI/netcoreapp3.1/PublicAPI.Unshipped.txt
@@ -1,5 +1,7 @@
#nullable enable
-static Silk.NET.Input.GamepadExtensions.LeftThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
-static Silk.NET.Input.GamepadExtensions.LeftThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
-static Silk.NET.Input.GamepadExtensions.RightThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
-static Silk.NET.Input.GamepadExtensions.RightThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
+Silk.NET.Input.StandardCursor.ResizeAll = 9 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.NeswResize = 8 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.NotAllowed = 10 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.NwseResize = 7 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.Wait = 11 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.WaitArrow = 12 -> Silk.NET.Input.StandardCursor
diff --git a/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.0/PublicAPI.Shipped.txt b/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.0/PublicAPI.Shipped.txt
index 7645bc3d8b..fcd931642f 100644
--- a/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.0/PublicAPI.Shipped.txt
+++ b/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.0/PublicAPI.Shipped.txt
@@ -341,3 +341,7 @@ static Silk.NET.Input.InputWindowExtensions.ShouldLoadFirstPartyPlatforms(bool s
static Silk.NET.Input.InputWindowExtensions.TryAdd(string! assemblyName) -> bool
static Silk.NET.Input.ScrollWheel.operator !=(Silk.NET.Input.ScrollWheel left, Silk.NET.Input.ScrollWheel right) -> bool
static Silk.NET.Input.ScrollWheel.operator ==(Silk.NET.Input.ScrollWheel left, Silk.NET.Input.ScrollWheel right) -> bool
+static Silk.NET.Input.GamepadExtensions.LeftThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
+static Silk.NET.Input.GamepadExtensions.LeftThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
+static Silk.NET.Input.GamepadExtensions.RightThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
+static Silk.NET.Input.GamepadExtensions.RightThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
diff --git a/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.0/PublicAPI.Unshipped.txt b/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.0/PublicAPI.Unshipped.txt
index 862d9e4729..601f586cb1 100644
--- a/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.0/PublicAPI.Unshipped.txt
+++ b/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.0/PublicAPI.Unshipped.txt
@@ -1,5 +1,7 @@
#nullable enable
-static Silk.NET.Input.GamepadExtensions.LeftThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
-static Silk.NET.Input.GamepadExtensions.LeftThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
-static Silk.NET.Input.GamepadExtensions.RightThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
-static Silk.NET.Input.GamepadExtensions.RightThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
+Silk.NET.Input.StandardCursor.ResizeAll = 9 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.NeswResize = 8 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.NotAllowed = 10 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.NwseResize = 7 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.Wait = 11 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.WaitArrow = 12 -> Silk.NET.Input.StandardCursor
diff --git a/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.1/PublicAPI.Shipped.txt b/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.1/PublicAPI.Shipped.txt
index 7645bc3d8b..fcd931642f 100644
--- a/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.1/PublicAPI.Shipped.txt
+++ b/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.1/PublicAPI.Shipped.txt
@@ -341,3 +341,7 @@ static Silk.NET.Input.InputWindowExtensions.ShouldLoadFirstPartyPlatforms(bool s
static Silk.NET.Input.InputWindowExtensions.TryAdd(string! assemblyName) -> bool
static Silk.NET.Input.ScrollWheel.operator !=(Silk.NET.Input.ScrollWheel left, Silk.NET.Input.ScrollWheel right) -> bool
static Silk.NET.Input.ScrollWheel.operator ==(Silk.NET.Input.ScrollWheel left, Silk.NET.Input.ScrollWheel right) -> bool
+static Silk.NET.Input.GamepadExtensions.LeftThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
+static Silk.NET.Input.GamepadExtensions.LeftThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
+static Silk.NET.Input.GamepadExtensions.RightThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
+static Silk.NET.Input.GamepadExtensions.RightThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
diff --git a/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.1/PublicAPI.Unshipped.txt b/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.1/PublicAPI.Unshipped.txt
index 862d9e4729..601f586cb1 100644
--- a/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.1/PublicAPI.Unshipped.txt
+++ b/src/Input/Silk.NET.Input.Common/PublicAPI/netstandard2.1/PublicAPI.Unshipped.txt
@@ -1,5 +1,7 @@
#nullable enable
-static Silk.NET.Input.GamepadExtensions.LeftThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
-static Silk.NET.Input.GamepadExtensions.LeftThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
-static Silk.NET.Input.GamepadExtensions.RightThumbstick(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Thumbstick
-static Silk.NET.Input.GamepadExtensions.RightThumbstickButton(this Silk.NET.Input.IGamepad! gamepad) -> Silk.NET.Input.Button
+Silk.NET.Input.StandardCursor.ResizeAll = 9 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.NeswResize = 8 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.NotAllowed = 10 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.NwseResize = 7 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.Wait = 11 -> Silk.NET.Input.StandardCursor
+Silk.NET.Input.StandardCursor.WaitArrow = 12 -> Silk.NET.Input.StandardCursor
diff --git a/src/Input/Silk.NET.Input.Glfw/GlfwCursor.cs b/src/Input/Silk.NET.Input.Glfw/GlfwCursor.cs
index e6edf2bbf5..4e38655426 100644
--- a/src/Input/Silk.NET.Input.Glfw/GlfwCursor.cs
+++ b/src/Input/Silk.NET.Input.Glfw/GlfwCursor.cs
@@ -22,6 +22,10 @@ internal class GlfwCursor : ICursor, IDisposable
{StandardCursor.Hand, CursorShape.Hand},
{StandardCursor.HResize, CursorShape.HResize},
{StandardCursor.VResize, CursorShape.VResize},
+ {StandardCursor.ResizeAll, CursorShape.AllResize},
+ {StandardCursor.NeswResize, CursorShape.NeswResize},
+ {StandardCursor.NwseResize, CursorShape.NwseResize},
+ {StandardCursor.NotAllowed, CursorShape.NotAllowed}
};
private const int BytesPerCursorPixel = 4;
@@ -76,8 +80,8 @@ public StandardCursor StandardCursor
{
if (_standardCursor != value)
{
- _standardCursor = value;
UpdateStandardCursor();
+ _standardCursor = value;
}
}
}
@@ -162,6 +166,8 @@ public bool IsSupported(CursorMode mode)
///
public bool IsSupported(StandardCursor standardCursor)
{
+ GlfwProvider.GLFW.Value.GetVersion(out var major, out var minor, out _);
+ var is34OrLater = major > 3 || major == 3 && minor >= 4;
return standardCursor switch
{
StandardCursor.Default => true,
@@ -171,6 +177,10 @@ public bool IsSupported(StandardCursor standardCursor)
StandardCursor.Hand => true,
StandardCursor.HResize => true,
StandardCursor.VResize => true,
+ StandardCursor.NeswResize when is34OrLater => true,
+ StandardCursor.NwseResize when is34OrLater => true,
+ StandardCursor.ResizeAll when is34OrLater => true,
+ StandardCursor.NotAllowed when is34OrLater => true,
_ => false
};
}
diff --git a/src/Input/Silk.NET.Input.Glfw/GlfwInputPlatform.cs b/src/Input/Silk.NET.Input.Glfw/GlfwInputPlatform.cs
index d38e95867c..5b5cc28e7a 100644
--- a/src/Input/Silk.NET.Input.Glfw/GlfwInputPlatform.cs
+++ b/src/Input/Silk.NET.Input.Glfw/GlfwInputPlatform.cs
@@ -26,10 +26,11 @@ internal class GlfwInputPlatform : IInputPlatform
internal static unsafe void RegisterWindow(WindowHandle* handle, IEnumerable subscribers)
{
- var events = _subs.ContainsKey
- ((nint) handle)
- ? _subs[(nint) handle]
- : _subs[(nint) handle] = new GlfwEvents(handle);
+ if (_subs.ContainsKey((nint) handle))
+ {
+ throw new InvalidOperationException($"More than one input context for window {(nint) handle}.");
+ }
+ var events = _subs[(nint) handle] = new GlfwEvents(handle);
foreach (var subscriber in subscribers)
{
subscriber.Subscribe(events);
@@ -38,13 +39,19 @@ internal static unsafe void RegisterWindow(WindowHandle* handle, IEnumerable subscribers)
{
- var events = _subs.ContainsKey
- ((nint) handle)
- ? _subs[(nint) handle]
- : _subs[(nint) handle] = new GlfwEvents(handle);
- foreach (var subscriber in subscribers)
+ if (_subs.TryGetValue((nint) handle, out var events))
+ {
+ foreach (var subscriber in subscribers)
+ {
+ subscriber.Unsubscribe(events);
+ }
+
+ events.Dispose();
+ _subs.Remove((nint) handle);
+ }
+ else
{
- subscriber.Unsubscribe(events);
+ throw new ObjectDisposedException($"Input context already disposed for window {(nint) handle}");
}
}
}
diff --git a/src/Input/Silk.NET.Input.Sdl/SdlCursor.cs b/src/Input/Silk.NET.Input.Sdl/SdlCursor.cs
index 129fd4b3ee..8f3201bff7 100644
--- a/src/Input/Silk.NET.Input.Sdl/SdlCursor.cs
+++ b/src/Input/Silk.NET.Input.Sdl/SdlCursor.cs
@@ -19,6 +19,12 @@ internal class SdlCursor : ICursor
{StandardCursor.Hand, SystemCursor.SystemCursorHand},
{StandardCursor.HResize, SystemCursor.SystemCursorSizewe},
{StandardCursor.VResize, SystemCursor.SystemCursorSizens},
+ {StandardCursor.NwseResize, SystemCursor.SystemCursorSizenwse},
+ {StandardCursor.NeswResize, SystemCursor.SystemCursorSizenesw},
+ {StandardCursor.ResizeAll, SystemCursor.SystemCursorSizeall},
+ {StandardCursor.NotAllowed, SystemCursor.SystemCursorNo},
+ {StandardCursor.Wait, SystemCursor.SystemCursorWait},
+ {StandardCursor.WaitArrow, SystemCursor.SystemCursorWaitarrow}
};
private const int BytesPerCursorPixel = 4;
diff --git a/src/Microsoft/Silk.NET.DXGI/DXGI.cs b/src/Microsoft/Silk.NET.DXGI/DXGI.cs
index f2afb1e8ac..8f376cda9d 100644
--- a/src/Microsoft/Silk.NET.DXGI/DXGI.cs
+++ b/src/Microsoft/Silk.NET.DXGI/DXGI.cs
@@ -70,10 +70,7 @@ public static DXGI GetApi(INativeWindowSource window, bool forceDxvk = false)
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(ExtensionAttribute.GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return !(ext is null);
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/Microsoft/Silk.NET.DXVA/DXVA.cs b/src/Microsoft/Silk.NET.DXVA/DXVA.cs
index a7fe89b02c..855b597c9c 100644
--- a/src/Microsoft/Silk.NET.DXVA/DXVA.cs
+++ b/src/Microsoft/Silk.NET.DXVA/DXVA.cs
@@ -23,10 +23,7 @@ public static DXVA GetApi()
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return ext is not null;
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/Microsoft/Silk.NET.Direct2D/Direct2D/D2D.cs b/src/Microsoft/Silk.NET.Direct2D/Direct2D/D2D.cs
index 3f117cab13..fb87a56033 100644
--- a/src/Microsoft/Silk.NET.Direct2D/Direct2D/D2D.cs
+++ b/src/Microsoft/Silk.NET.Direct2D/Direct2D/D2D.cs
@@ -23,10 +23,7 @@ public static D2D GetApi()
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return ext is not null;
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/Microsoft/Silk.NET.Direct2D/DirectWrite/DWrite.cs b/src/Microsoft/Silk.NET.Direct2D/DirectWrite/DWrite.cs
index b99b5a7ee6..2a96c807d0 100644
--- a/src/Microsoft/Silk.NET.Direct2D/DirectWrite/DWrite.cs
+++ b/src/Microsoft/Silk.NET.Direct2D/DirectWrite/DWrite.cs
@@ -23,10 +23,7 @@ public static DWrite GetApi()
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return ext is not null;
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/Microsoft/Silk.NET.Direct2D/WindowsCodecs/WindowsCodecs.cs b/src/Microsoft/Silk.NET.Direct2D/WindowsCodecs/WindowsCodecs.cs
index 2244a05de3..3e0fbd7049 100644
--- a/src/Microsoft/Silk.NET.Direct2D/WindowsCodecs/WindowsCodecs.cs
+++ b/src/Microsoft/Silk.NET.Direct2D/WindowsCodecs/WindowsCodecs.cs
@@ -23,10 +23,7 @@ public static WindowsCodecs GetApi()
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return ext is not null;
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/Microsoft/Silk.NET.Direct3D.Compilers/D3DCompiler.cs b/src/Microsoft/Silk.NET.Direct3D.Compilers/D3DCompiler.cs
index ceb1898b0a..34710f321a 100644
--- a/src/Microsoft/Silk.NET.Direct3D.Compilers/D3DCompiler.cs
+++ b/src/Microsoft/Silk.NET.Direct3D.Compilers/D3DCompiler.cs
@@ -29,10 +29,7 @@ public static D3DCompiler GetApi()
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(ExtensionAttribute.GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return !(ext is null);
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/Microsoft/Silk.NET.Direct3D.Compilers/DXC.cs b/src/Microsoft/Silk.NET.Direct3D.Compilers/DXC.cs
index 08a14c469b..caaaceea62 100644
--- a/src/Microsoft/Silk.NET.Direct3D.Compilers/DXC.cs
+++ b/src/Microsoft/Silk.NET.Direct3D.Compilers/DXC.cs
@@ -18,10 +18,7 @@ public static DXC GetApi()
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(ExtensionAttribute.GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return !(ext is null);
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/Microsoft/Silk.NET.Direct3D12/D3D12.cs b/src/Microsoft/Silk.NET.Direct3D12/D3D12.cs
index 463635009b..4da483b4d8 100644
--- a/src/Microsoft/Silk.NET.Direct3D12/D3D12.cs
+++ b/src/Microsoft/Silk.NET.Direct3D12/D3D12.cs
@@ -18,10 +18,7 @@ public static D3D12 GetApi()
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(ExtensionAttribute.GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return !(ext is null);
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/Microsoft/Silk.NET.Direct3D9/D3D9.cs b/src/Microsoft/Silk.NET.Direct3D9/D3D9.cs
index adf7bb9007..2e27d1efde 100644
--- a/src/Microsoft/Silk.NET.Direct3D9/D3D9.cs
+++ b/src/Microsoft/Silk.NET.Direct3D9/D3D9.cs
@@ -70,10 +70,7 @@ public static D3D9 GetApi(INativeWindowSource window, bool forceDxvk = false)
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(ExtensionAttribute.GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return !(ext is null);
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/Microsoft/Silk.NET.DirectComposition/DComp.cs b/src/Microsoft/Silk.NET.DirectComposition/DComp.cs
index 2f5934eb89..6fdddfe9bf 100644
--- a/src/Microsoft/Silk.NET.DirectComposition/DComp.cs
+++ b/src/Microsoft/Silk.NET.DirectComposition/DComp.cs
@@ -23,10 +23,7 @@ public static DComp GetApi()
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return ext is not null;
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/Microsoft/Silk.NET.DirectStorage/DStorage.cs b/src/Microsoft/Silk.NET.DirectStorage/DStorage.cs
index 23287ab45d..186e0a3664 100644
--- a/src/Microsoft/Silk.NET.DirectStorage/DStorage.cs
+++ b/src/Microsoft/Silk.NET.DirectStorage/DStorage.cs
@@ -23,10 +23,7 @@ public static DStorage GetApi()
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return ext is not null;
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/Microsoft/Silk.NET.XInput/XInput.cs b/src/Microsoft/Silk.NET.XInput/XInput.cs
index 34900081d2..b7f838bb86 100644
--- a/src/Microsoft/Silk.NET.XInput/XInput.cs
+++ b/src/Microsoft/Silk.NET.XInput/XInput.cs
@@ -18,10 +18,7 @@ public static XInput GetApi()
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(ExtensionAttribute.GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return ext is not null;
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/Native/Silk.NET.Assimp.Native/Silk.NET.Assimp.Native.csproj b/src/Native/Silk.NET.Assimp.Native/Silk.NET.Assimp.Native.csproj
index 1594bca00b..efb913a3ae 100644
--- a/src/Native/Silk.NET.Assimp.Native/Silk.NET.Assimp.Native.csproj
+++ b/src/Native/Silk.NET.Assimp.Native/Silk.NET.Assimp.Native.csproj
@@ -5,7 +5,7 @@
netstandard2.0;net4.6.1
Ultz.Native.Assimp
- 5.3.1
+ 5.3.1.1
.NET Foundation and Contributors
true
BSD-3-Clause
diff --git a/src/Native/Silk.NET.GLFW.Native/Silk.NET.GLFW.Native.csproj b/src/Native/Silk.NET.GLFW.Native/Silk.NET.GLFW.Native.csproj
index 3a1a8e19a5..d164c4149b 100644
--- a/src/Native/Silk.NET.GLFW.Native/Silk.NET.GLFW.Native.csproj
+++ b/src/Native/Silk.NET.GLFW.Native/Silk.NET.GLFW.Native.csproj
@@ -5,7 +5,7 @@
netstandard2.0;net4.6.1
Ultz.Native.GLFW
- 3.3.9.2
+ 3.4.0
.NET Foundation and Contributors
true
Zlib
diff --git a/src/Native/Silk.NET.OpenAL.Soft.Native/Silk.NET.OpenAL.Soft.Native.csproj b/src/Native/Silk.NET.OpenAL.Soft.Native/Silk.NET.OpenAL.Soft.Native.csproj
index 1208da3da1..4a5295fe26 100644
--- a/src/Native/Silk.NET.OpenAL.Soft.Native/Silk.NET.OpenAL.Soft.Native.csproj
+++ b/src/Native/Silk.NET.OpenAL.Soft.Native/Silk.NET.OpenAL.Soft.Native.csproj
@@ -4,7 +4,7 @@
netstandard2.0;net4.6.1
- 1.21.1.2
+ 1.23.1
.NET Foundation and Contributors
true
LGPL-2.0-or-later
diff --git a/src/Native/Silk.NET.SDL.Native/Silk.NET.SDL.Native.csproj b/src/Native/Silk.NET.SDL.Native/Silk.NET.SDL.Native.csproj
index 9b8d0eaf4f..70aace360a 100644
--- a/src/Native/Silk.NET.SDL.Native/Silk.NET.SDL.Native.csproj
+++ b/src/Native/Silk.NET.SDL.Native/Silk.NET.SDL.Native.csproj
@@ -5,7 +5,7 @@
netstandard2.0;net4.6.1
Ultz.Native.SDL
- 2.28.4
+ 2.30.1
.NET Foundation and Contributors
true
Zlib
diff --git a/src/Native/Silk.NET.Vkd3d.Native/Silk.NET.Vkd3d.Native.csproj b/src/Native/Silk.NET.Vkd3d.Native/Silk.NET.Vkd3d.Native.csproj
index 63063077e5..af55566378 100644
--- a/src/Native/Silk.NET.Vkd3d.Native/Silk.NET.Vkd3d.Native.csproj
+++ b/src/Native/Silk.NET.Vkd3d.Native/Silk.NET.Vkd3d.Native.csproj
@@ -5,7 +5,6 @@
netstandard2.0;net4.6.1
Silk.NET.Vkd3d.Native
- 2.17.0
.NET Foundation and Contributors
true
Zlib
diff --git a/src/OpenAL/Silk.NET.OpenAL/AL/AL.cs b/src/OpenAL/Silk.NET.OpenAL/AL/AL.cs
index 275eea7457..6f169f3b1a 100644
--- a/src/OpenAL/Silk.NET.OpenAL/AL/AL.cs
+++ b/src/OpenAL/Silk.NET.OpenAL/AL/AL.cs
@@ -2,6 +2,7 @@
// The .NET Foundation licenses this file to you under the MIT license.
using System;
+using System.Diagnostics.CodeAnalysis;
using System.Numerics;
using Silk.NET.Core.Attributes;
using Silk.NET.Core.Contexts;
@@ -376,7 +377,11 @@ public static AL GetApi(bool soft = false)
/// The loaded extension.
/// Type of to load.
/// true if the extension was loaded, otherwise false.
+#if NET5_0_OR_GREATER
+ public bool TryGetExtension<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors)] T>(out T ext)
+#else
public bool TryGetExtension(out T ext)
+#endif
where T : NativeExtension
{
ext = IsExtensionPresent(ExtensionAttribute.GetExtensionAttribute(typeof(T)).Name)
@@ -395,7 +400,11 @@ public bool TryGetExtension(out T ext)
"This method has been deprecated and will be removed in Silk.NET 3.0. " +
"Please use TryGetExtension instead."
)]
+#if NET5_0_OR_GREATER
+ public TExtension GetExtension<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors)] TExtension>()
+#else
public TExtension GetExtension()
+#endif
where TExtension : NativeExtension
{
return IsExtensionPresent(ExtensionAttribute.GetExtensionAttribute(typeof(TExtension)).Name)
diff --git a/src/OpenAL/Silk.NET.OpenAL/ALC/ALContext.cs b/src/OpenAL/Silk.NET.OpenAL/ALC/ALContext.cs
index f6d7a0fac3..516d922c72 100644
--- a/src/OpenAL/Silk.NET.OpenAL/ALC/ALContext.cs
+++ b/src/OpenAL/Silk.NET.OpenAL/ALC/ALContext.cs
@@ -2,6 +2,7 @@
// The .NET Foundation licenses this file to you under the MIT license.
using System;
+using System.Diagnostics.CodeAnalysis;
using Silk.NET.Core.Attributes;
using Silk.NET.Core.Contexts;
using Silk.NET.Core.Loader;
@@ -117,7 +118,11 @@ public static unsafe ALContext GetApi(bool soft = false)
/// The device the context is on.
/// The extension to check for.
/// Whether the extension is available.
+#if NET5_0_OR_GREATER
+ public unsafe bool TryGetExtension<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors)] T>(Device* device, out T ext) where T : NativeExtension
+#else
public unsafe bool TryGetExtension(Device* device, out T ext) where T : NativeExtension
+#endif
=> !((ext = IsExtensionPresent(device, ExtensionAttribute.GetExtensionAttribute(typeof(T)).Name)
? (T) Activator.CreateInstance(typeof(T), Context)
: null) is null);
diff --git a/src/OpenCL/Silk.NET.OpenCL/CL.cs b/src/OpenCL/Silk.NET.OpenCL/CL.cs
index f357d59b15..715a7658fd 100644
--- a/src/OpenCL/Silk.NET.OpenCL/CL.cs
+++ b/src/OpenCL/Silk.NET.OpenCL/CL.cs
@@ -1,4 +1,5 @@
using System;
+using System.Diagnostics.CodeAnalysis;
using Microsoft.Extensions.DependencyModel;
using Silk.NET.Core.Attributes;
using Silk.NET.Core.Contexts;
@@ -14,7 +15,11 @@ public static CL GetApi()
return new CL(CreateDefaultContext(new OpenCLLibraryNameContainer().GetLibraryNames()));
}
+#if NET5_0_OR_GREATER
+ public bool TryGetExtension<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors)] T>(out T ext)
+#else
public bool TryGetExtension(out T ext)
+#endif
where T : NativeExtension
{
ext = IsExtensionPresent(ExtensionAttribute.GetExtensionAttribute(typeof(T)).Name)
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Extensions.EXT/ExtDirectStateAccess.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Extensions.EXT/ExtDirectStateAccess.gen.cs
index bb839a3fea..69a9f16800 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Extensions.EXT/ExtDirectStateAccess.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Extensions.EXT/ExtDirectStateAccess.gen.cs
@@ -2174,15 +2174,27 @@ public unsafe partial class ExtDirectStateAccess : NativeExtension
[NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] TextureUnit texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] TextureUnit texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] TextureUnit texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] TextureUnit texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glMultiTexEnvfEXT", Convention = CallingConvention.Winapi)]
public partial void MultiTexEnv([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT target, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT pname, [Flow(Silk.NET.Core.Native.FlowDirection.In)] float param);
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Extensions.OVR/OvrMultiview.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Extensions.OVR/OvrMultiview.gen.cs
index 2a8d804a26..bc03c34f98 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Extensions.OVR/OvrMultiview.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Extensions.OVR/OvrMultiview.gen.cs
@@ -32,6 +32,12 @@ public unsafe partial class OvrMultiview : NativeExtension
[NativeApi(EntryPoint = "glFramebufferTextureMultiviewOVR", Convention = CallingConvention.Winapi)]
public partial void FramebufferTextureMultiview([Flow(Silk.NET.Core.Native.FlowDirection.In)] FramebufferTarget target, [Flow(Silk.NET.Core.Native.FlowDirection.In)] FramebufferAttachment attachment, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint texture, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int level, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int baseViewIndex, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint numViews);
+ [NativeApi(EntryPoint = "glNamedFramebufferTextureMultiviewOVR", Convention = CallingConvention.Winapi)]
+ public partial void NamedFramebufferTextureMultiview([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint framebuffer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] OVR attachment, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint texture, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int level, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int baseViewIndex, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint numViews);
+
+ [NativeApi(EntryPoint = "glNamedFramebufferTextureMultiviewOVR", Convention = CallingConvention.Winapi)]
+ public partial void NamedFramebufferTextureMultiview([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint framebuffer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] FramebufferAttachment attachment, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint texture, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int level, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int baseViewIndex, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint numViews);
+
public OvrMultiview(INativeContext ctx)
: base(ctx)
{
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.ARB/ArbVertexProgram.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.ARB/ArbVertexProgram.gen.cs
index d75b687b43..00458012d8 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.ARB/ArbVertexProgram.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.ARB/ArbVertexProgram.gen.cs
@@ -485,9 +485,15 @@ public unsafe partial class ArbVertexProgram : NativeExtension
[NativeApi(EntryPoint = "glVertexAttribPointerARB", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ARB type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribPointerARB", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ARB type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glVertexAttribPointerARB", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribPointerARB", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
public unsafe void DeleteProgram([Count(Parameter = "n"), Flow(Silk.NET.Core.Native.FlowDirection.In)] uint programs)
{
// ArrayParameterOverloader
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.ARB/ArbVertexShader.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.ARB/ArbVertexShader.gen.cs
index 9767133825..39af2793fa 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.ARB/ArbVertexShader.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.ARB/ArbVertexShader.gen.cs
@@ -422,9 +422,15 @@ public unsafe partial class ArbVertexShader : NativeExtension
[NativeApi(EntryPoint = "glVertexAttribPointerARB", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ARB type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribPointerARB", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ARB type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glVertexAttribPointerARB", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribPointerARB", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
public unsafe void GetActiveAttrib([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint programObj, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Count(Count = 1), Flow(Silk.NET.Core.Native.FlowDirection.Out)] uint* length, [Count(Count = 1), Flow(Silk.NET.Core.Native.FlowDirection.Out)] int* size, [Count(Count = 1), Flow(Silk.NET.Core.Native.FlowDirection.Out)] ARB* type, [Count(Parameter = "maxLength"), Flow(Silk.NET.Core.Native.FlowDirection.Out)] Span name)
{
// ImplicitCountSpanOverloader
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtCoordinateFrame.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtCoordinateFrame.gen.cs
index 0d9cfd9034..141e79a095 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtCoordinateFrame.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtCoordinateFrame.gen.cs
@@ -68,9 +68,15 @@ public unsafe partial class ExtCoordinateFrame : NativeExtension
[NativeApi(EntryPoint = "glBinormalPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void BinormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glBinormalPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void BinormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glBinormalPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void BinormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] BinormalPointerTypeEXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glBinormalPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void BinormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] BinormalPointerTypeEXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glTangent3bEXT", Convention = CallingConvention.Winapi)]
public partial void Tangent3([Flow(Silk.NET.Core.Native.FlowDirection.In)] sbyte tx, [Flow(Silk.NET.Core.Native.FlowDirection.In)] sbyte ty, [Flow(Silk.NET.Core.Native.FlowDirection.In)] sbyte tz);
@@ -119,9 +125,15 @@ public unsafe partial class ExtCoordinateFrame : NativeExtension
[NativeApi(EntryPoint = "glTangentPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void TangentPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glTangentPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void TangentPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glTangentPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void TangentPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] TangentPointerTypeEXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glTangentPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void TangentPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] TangentPointerTypeEXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
public ExtCoordinateFrame(INativeContext ctx)
: base(ctx)
{
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtDirectStateAccess.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtDirectStateAccess.gen.cs
index 2858af4713..f72c803663 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtDirectStateAccess.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtDirectStateAccess.gen.cs
@@ -2174,15 +2174,27 @@ public unsafe partial class ExtDirectStateAccess : NativeExtension
[NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] TextureUnit texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] TextureUnit texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] TextureUnit texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glMultiTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void MultiTexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] TextureUnit texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glMultiTexEnvfEXT", Convention = CallingConvention.Winapi)]
public partial void MultiTexEnv([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT texunit, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT target, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT pname, [Flow(Silk.NET.Core.Native.FlowDirection.In)] float param);
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtFogCoord.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtFogCoord.gen.cs
index 3672cf5f3f..8b39f98209 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtFogCoord.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtFogCoord.gen.cs
@@ -41,9 +41,15 @@ public unsafe partial class ExtFogCoord : NativeExtension
[NativeApi(EntryPoint = "glFogCoordPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void FogCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glFogCoordPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void FogCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glFogCoordPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void FogCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] FogPointerTypeEXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glFogCoordPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void FogCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] FogPointerTypeEXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
public ExtFogCoord(INativeContext ctx)
: base(ctx)
{
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtGpuShader4.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtGpuShader4.gen.cs
index fd229429c7..0aa7ff5e33 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtGpuShader4.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtGpuShader4.gen.cs
@@ -206,9 +206,15 @@ public unsafe partial class ExtGpuShader4 : NativeExtension
[NativeApi(EntryPoint = "glVertexAttribIPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribIPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glVertexAttribIPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribIType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribIPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribIType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
public unsafe void Uniform1([Flow(Silk.NET.Core.Native.FlowDirection.In)] int location, [Count(Parameter = "count", Expression = "*1"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan value)
{
// ImplicitCountSpanOverloader
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtSecondaryColor.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtSecondaryColor.gen.cs
index 290daa54fd..445c0ce811 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtSecondaryColor.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtSecondaryColor.gen.cs
@@ -98,9 +98,15 @@ public unsafe partial class ExtSecondaryColor : NativeExtension
[NativeApi(EntryPoint = "glSecondaryColorPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void SecondaryColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glSecondaryColorPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void SecondaryColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glSecondaryColorPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void SecondaryColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ColorPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glSecondaryColorPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void SecondaryColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ColorPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
public ExtSecondaryColor(INativeContext ctx)
: base(ctx)
{
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtVertexArray.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtVertexArray.gen.cs
index 3f8dafc260..49e490aa94 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtVertexArray.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtVertexArray.gen.cs
@@ -26,9 +26,15 @@ public unsafe partial class ExtVertexArray : NativeExtension
[NativeApi(EntryPoint = "glColorPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "size, type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glColorPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "size, type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glColorPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ColorPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "size, type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glColorPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ColorPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "size, type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glDrawArraysEXT", Convention = CallingConvention.Winapi)]
public partial void DrawArrays([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT mode, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int first, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count);
@@ -38,9 +44,13 @@ public unsafe partial class ExtVertexArray : NativeExtension
[NativeApi(EntryPoint = "glEdgeFlagPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void EdgeFlagPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] bool* pointer);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glEdgeFlagPointerEXT", Convention = CallingConvention.Winapi)]
public partial void EdgeFlagPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in bool pointer);
+ [NativeApi(EntryPoint = "glEdgeFlagPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void EdgeFlagPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glGetPointervEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void GetPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT pname, [Count(Count = 1), Flow(Silk.NET.Core.Native.FlowDirection.Out)] void** @params);
@@ -56,27 +66,51 @@ public unsafe partial class ExtVertexArray : NativeExtension
[NativeApi(EntryPoint = "glIndexPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void IndexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glIndexPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void IndexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glIndexPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void IndexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] IndexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glIndexPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void IndexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] IndexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glNormalPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glNormalPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glNormalPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] NormalPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glNormalPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] NormalPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "size, type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "size, type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "size, type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glTexCoordPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "size, type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glVertexPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "size, type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "size, type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glVertexPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "size, type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "size, type, stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
public unsafe void* GetPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] EXT pname)
{
// ReturnTypeOverloader
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtVertexArrayOverloads.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtVertexArrayOverloads.gen.cs
index 77a6437859..c748fe6835 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtVertexArrayOverloads.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.EXT/ExtVertexArrayOverloads.gen.cs
@@ -16,6 +16,7 @@ namespace Silk.NET.OpenGL.Legacy.Extensions.EXT
{
public static class ExtVertexArrayOverloads
{
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
public static unsafe void EdgeFlagPointer(this ExtVertexArray thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Computed = "stride, count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer)
{
// SpanOverloader
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.IBM/IbmVertexArrayLists.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.IBM/IbmVertexArrayLists.gen.cs
index b81a58c096..e004ba9467 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.IBM/IbmVertexArrayLists.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.IBM/IbmVertexArrayLists.gen.cs
@@ -23,93 +23,198 @@ public unsafe partial class IbmVertexArrayLists : NativeExtension
[NativeApi(EntryPoint = "glColorPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void ColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glColorPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void ColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [NativeApi(EntryPoint = "glColorPointerListIBM", Convention = CallingConvention.Winapi)]
+ public unsafe partial void ColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
+ [NativeApi(EntryPoint = "glColorPointerListIBM", Convention = CallingConvention.Winapi)]
+ public partial void ColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
[NativeApi(EntryPoint = "glColorPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void ColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ColorPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glColorPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void ColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ColorPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [NativeApi(EntryPoint = "glColorPointerListIBM", Convention = CallingConvention.Winapi)]
+ public unsafe partial void ColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ColorPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
+ [NativeApi(EntryPoint = "glColorPointerListIBM", Convention = CallingConvention.Winapi)]
+ public partial void ColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ColorPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
[NativeApi(EntryPoint = "glEdgeFlagPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void EdgeFlagPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] bool** pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glEdgeFlagPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void EdgeFlagPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in bool* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [NativeApi(EntryPoint = "glEdgeFlagPointerListIBM", Convention = CallingConvention.Winapi)]
+ public unsafe partial void EdgeFlagPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
+ [NativeApi(EntryPoint = "glEdgeFlagPointerListIBM", Convention = CallingConvention.Winapi)]
+ public partial void EdgeFlagPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
[NativeApi(EntryPoint = "glFogCoordPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void FogCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glFogCoordPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void FogCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [NativeApi(EntryPoint = "glFogCoordPointerListIBM", Convention = CallingConvention.Winapi)]
+ public unsafe partial void FogCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
+ [NativeApi(EntryPoint = "glFogCoordPointerListIBM", Convention = CallingConvention.Winapi)]
+ public partial void FogCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
[NativeApi(EntryPoint = "glFogCoordPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void FogCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] FogPointerTypeIBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glFogCoordPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void FogCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] FogPointerTypeIBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [NativeApi(EntryPoint = "glFogCoordPointerListIBM", Convention = CallingConvention.Winapi)]
+ public unsafe partial void FogCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] FogPointerTypeIBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
+ [NativeApi(EntryPoint = "glFogCoordPointerListIBM", Convention = CallingConvention.Winapi)]
+ public partial void FogCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] FogPointerTypeIBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
[NativeApi(EntryPoint = "glIndexPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void IndexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glIndexPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void IndexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [NativeApi(EntryPoint = "glIndexPointerListIBM", Convention = CallingConvention.Winapi)]
+ public unsafe partial void IndexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
+ [NativeApi(EntryPoint = "glIndexPointerListIBM", Convention = CallingConvention.Winapi)]
+ public partial void IndexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
[NativeApi(EntryPoint = "glIndexPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void IndexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IndexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glIndexPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void IndexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IndexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [NativeApi(EntryPoint = "glIndexPointerListIBM", Convention = CallingConvention.Winapi)]
+ public unsafe partial void IndexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IndexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
+ [NativeApi(EntryPoint = "glIndexPointerListIBM", Convention = CallingConvention.Winapi)]
+ public partial void IndexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IndexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
[NativeApi(EntryPoint = "glNormalPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void NormalPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glNormalPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void NormalPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [NativeApi(EntryPoint = "glNormalPointerListIBM", Convention = CallingConvention.Winapi)]
+ public unsafe partial void NormalPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
+ [NativeApi(EntryPoint = "glNormalPointerListIBM", Convention = CallingConvention.Winapi)]
+ public partial void NormalPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
[NativeApi(EntryPoint = "glNormalPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void NormalPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] NormalPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glNormalPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void NormalPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] NormalPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [NativeApi(EntryPoint = "glNormalPointerListIBM", Convention = CallingConvention.Winapi)]
+ public unsafe partial void NormalPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] NormalPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
+ [NativeApi(EntryPoint = "glNormalPointerListIBM", Convention = CallingConvention.Winapi)]
+ public partial void NormalPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] NormalPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
[NativeApi(EntryPoint = "glSecondaryColorPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void SecondaryColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glSecondaryColorPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void SecondaryColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [NativeApi(EntryPoint = "glSecondaryColorPointerListIBM", Convention = CallingConvention.Winapi)]
+ public unsafe partial void SecondaryColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
+ [NativeApi(EntryPoint = "glSecondaryColorPointerListIBM", Convention = CallingConvention.Winapi)]
+ public partial void SecondaryColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
[NativeApi(EntryPoint = "glSecondaryColorPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void SecondaryColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] SecondaryColorPointerTypeIBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glSecondaryColorPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void SecondaryColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] SecondaryColorPointerTypeIBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [NativeApi(EntryPoint = "glSecondaryColorPointerListIBM", Convention = CallingConvention.Winapi)]
+ public unsafe partial void SecondaryColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] SecondaryColorPointerTypeIBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
+ [NativeApi(EntryPoint = "glSecondaryColorPointerListIBM", Convention = CallingConvention.Winapi)]
+ public partial void SecondaryColorPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] SecondaryColorPointerTypeIBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
[NativeApi(EntryPoint = "glTexCoordPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void TexCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glTexCoordPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void TexCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [NativeApi(EntryPoint = "glTexCoordPointerListIBM", Convention = CallingConvention.Winapi)]
+ public unsafe partial void TexCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
+ [NativeApi(EntryPoint = "glTexCoordPointerListIBM", Convention = CallingConvention.Winapi)]
+ public partial void TexCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
[NativeApi(EntryPoint = "glTexCoordPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void TexCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glTexCoordPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void TexCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [NativeApi(EntryPoint = "glTexCoordPointerListIBM", Convention = CallingConvention.Winapi)]
+ public unsafe partial void TexCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
+ [NativeApi(EntryPoint = "glTexCoordPointerListIBM", Convention = CallingConvention.Winapi)]
+ public partial void TexCoordPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
[NativeApi(EntryPoint = "glVertexPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glVertexPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [NativeApi(EntryPoint = "glVertexPointerListIBM", Convention = CallingConvention.Winapi)]
+ public unsafe partial void VertexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
+ [NativeApi(EntryPoint = "glVertexPointerListIBM", Convention = CallingConvention.Winapi)]
+ public partial void VertexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
[NativeApi(EntryPoint = "glVertexPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glVertexPointerListIBM", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+ [NativeApi(EntryPoint = "glVertexPointerListIBM", Convention = CallingConvention.Winapi)]
+ public unsafe partial void VertexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
+ [NativeApi(EntryPoint = "glVertexPointerListIBM", Convention = CallingConvention.Winapi)]
+ public partial void VertexPointerList([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride);
+
public IbmVertexArrayLists(INativeContext ctx)
: base(ctx)
{
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.IBM/IbmVertexArrayListsOverloads.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.IBM/IbmVertexArrayListsOverloads.gen.cs
new file mode 100644
index 0000000000..ea640b02e6
--- /dev/null
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.IBM/IbmVertexArrayListsOverloads.gen.cs
@@ -0,0 +1,111 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenGL.Legacy.Extensions.IBM
+{
+ public static class IbmVertexArrayListsOverloads
+ {
+ public static unsafe void ColorPointerList(this IbmVertexArrayLists thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride)
+ {
+ // SpanOverloader
+ thisApi.ColorPointerList(size, type, stride, in pointer.GetPinnableReference(), ptrstride);
+ }
+
+ public static unsafe void ColorPointerList(this IbmVertexArrayLists thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ColorPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride)
+ {
+ // SpanOverloader
+ thisApi.ColorPointerList(size, type, stride, in pointer.GetPinnableReference(), ptrstride);
+ }
+
+ public static unsafe void EdgeFlagPointerList(this IbmVertexArrayLists thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride)
+ {
+ // SpanOverloader
+ thisApi.EdgeFlagPointerList(stride, in pointer.GetPinnableReference(), ptrstride);
+ }
+
+ public static unsafe void FogCoordPointerList(this IbmVertexArrayLists thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride)
+ {
+ // SpanOverloader
+ thisApi.FogCoordPointerList(type, stride, in pointer.GetPinnableReference(), ptrstride);
+ }
+
+ public static unsafe void FogCoordPointerList(this IbmVertexArrayLists thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] FogPointerTypeIBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride)
+ {
+ // SpanOverloader
+ thisApi.FogCoordPointerList(type, stride, in pointer.GetPinnableReference(), ptrstride);
+ }
+
+ public static unsafe void IndexPointerList(this IbmVertexArrayLists thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride)
+ {
+ // SpanOverloader
+ thisApi.IndexPointerList(type, stride, in pointer.GetPinnableReference(), ptrstride);
+ }
+
+ public static unsafe void IndexPointerList(this IbmVertexArrayLists thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IndexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride)
+ {
+ // SpanOverloader
+ thisApi.IndexPointerList(type, stride, in pointer.GetPinnableReference(), ptrstride);
+ }
+
+ public static unsafe void NormalPointerList(this IbmVertexArrayLists thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride)
+ {
+ // SpanOverloader
+ thisApi.NormalPointerList(type, stride, in pointer.GetPinnableReference(), ptrstride);
+ }
+
+ public static unsafe void NormalPointerList(this IbmVertexArrayLists thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] NormalPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride)
+ {
+ // SpanOverloader
+ thisApi.NormalPointerList(type, stride, in pointer.GetPinnableReference(), ptrstride);
+ }
+
+ public static unsafe void SecondaryColorPointerList(this IbmVertexArrayLists thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride)
+ {
+ // SpanOverloader
+ thisApi.SecondaryColorPointerList(size, type, stride, in pointer.GetPinnableReference(), ptrstride);
+ }
+
+ public static unsafe void SecondaryColorPointerList(this IbmVertexArrayLists thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] SecondaryColorPointerTypeIBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride)
+ {
+ // SpanOverloader
+ thisApi.SecondaryColorPointerList(size, type, stride, in pointer.GetPinnableReference(), ptrstride);
+ }
+
+ public static unsafe void TexCoordPointerList(this IbmVertexArrayLists thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride)
+ {
+ // SpanOverloader
+ thisApi.TexCoordPointerList(size, type, stride, in pointer.GetPinnableReference(), ptrstride);
+ }
+
+ public static unsafe void TexCoordPointerList(this IbmVertexArrayLists thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride)
+ {
+ // SpanOverloader
+ thisApi.TexCoordPointerList(size, type, stride, in pointer.GetPinnableReference(), ptrstride);
+ }
+
+ public static unsafe void VertexPointerList(this IbmVertexArrayLists thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] IBM type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride)
+ {
+ // SpanOverloader
+ thisApi.VertexPointerList(size, type, stride, in pointer.GetPinnableReference(), ptrstride);
+ }
+
+ public static unsafe void VertexPointerList(this IbmVertexArrayLists thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int ptrstride)
+ {
+ // SpanOverloader
+ thisApi.VertexPointerList(size, type, stride, in pointer.GetPinnableReference(), ptrstride);
+ }
+
+ }
+}
+
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.INTEL/IntelParallelArrays.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.INTEL/IntelParallelArrays.gen.cs
index 989bdd8da3..60cbf5a061 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.INTEL/IntelParallelArrays.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.INTEL/IntelParallelArrays.gen.cs
@@ -23,51 +23,107 @@ public unsafe partial class IntelParallelArrays : NativeExtension
[NativeApi(EntryPoint = "glColorPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glColorPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer);
+ [NativeApi(EntryPoint = "glColorPointervINTEL", Convention = CallingConvention.Winapi)]
+ public unsafe partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer);
+
+ [NativeApi(EntryPoint = "glColorPointervINTEL", Convention = CallingConvention.Winapi)]
+ public partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer);
+
[NativeApi(EntryPoint = "glColorPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glColorPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer);
+ [NativeApi(EntryPoint = "glColorPointervINTEL", Convention = CallingConvention.Winapi)]
+ public unsafe partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer);
+
+ [NativeApi(EntryPoint = "glColorPointervINTEL", Convention = CallingConvention.Winapi)]
+ public partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer);
+
[NativeApi(EntryPoint = "glNormalPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glNormalPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer);
+ [NativeApi(EntryPoint = "glNormalPointervINTEL", Convention = CallingConvention.Winapi)]
+ public unsafe partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer);
+
+ [NativeApi(EntryPoint = "glNormalPointervINTEL", Convention = CallingConvention.Winapi)]
+ public partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer);
+
[NativeApi(EntryPoint = "glNormalPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] NormalPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glNormalPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] NormalPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer);
+ [NativeApi(EntryPoint = "glNormalPointervINTEL", Convention = CallingConvention.Winapi)]
+ public unsafe partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] NormalPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer);
+
+ [NativeApi(EntryPoint = "glNormalPointervINTEL", Convention = CallingConvention.Winapi)]
+ public partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] NormalPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer);
+
[NativeApi(EntryPoint = "glTexCoordPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glTexCoordPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer);
+ [NativeApi(EntryPoint = "glTexCoordPointervINTEL", Convention = CallingConvention.Winapi)]
+ public unsafe partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer);
+
+ [NativeApi(EntryPoint = "glTexCoordPointervINTEL", Convention = CallingConvention.Winapi)]
+ public partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer);
+
[NativeApi(EntryPoint = "glTexCoordPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glTexCoordPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer);
+ [NativeApi(EntryPoint = "glTexCoordPointervINTEL", Convention = CallingConvention.Winapi)]
+ public unsafe partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer);
+
+ [NativeApi(EntryPoint = "glTexCoordPointervINTEL", Convention = CallingConvention.Winapi)]
+ public partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer);
+
[NativeApi(EntryPoint = "glVertexPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glVertexPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer);
+ [NativeApi(EntryPoint = "glVertexPointervINTEL", Convention = CallingConvention.Winapi)]
+ public unsafe partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer);
+
+ [NativeApi(EntryPoint = "glVertexPointervINTEL", Convention = CallingConvention.Winapi)]
+ public partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer);
+
[NativeApi(EntryPoint = "glVertexPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] void** pointer);
+ [Obsolete("This overload exposes native-sized integer parameters (which are expressed as pointers in the original C function) as C# references due to a historical error, please consider using overloads that expose the following parameters as raw pointers or native integers instead: pointer")]
[NativeApi(EntryPoint = "glVertexPointervINTEL", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in void* pointer);
+ [NativeApi(EntryPoint = "glVertexPointervINTEL", Convention = CallingConvention.Winapi)]
+ public unsafe partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint* pointer);
+
+ [NativeApi(EntryPoint = "glVertexPointervINTEL", Convention = CallingConvention.Winapi)]
+ public partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in nint pointer);
+
public IntelParallelArrays(INativeContext ctx)
: base(ctx)
{
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.INTEL/IntelParallelArraysOverloads.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.INTEL/IntelParallelArraysOverloads.gen.cs
new file mode 100644
index 0000000000..6b343fa187
--- /dev/null
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.INTEL/IntelParallelArraysOverloads.gen.cs
@@ -0,0 +1,69 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenGL.Legacy.Extensions.INTEL
+{
+ public static class IntelParallelArraysOverloads
+ {
+ public static unsafe void ColorPointer(this IntelParallelArrays thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer)
+ {
+ // SpanOverloader
+ thisApi.ColorPointer(size, type, in pointer.GetPinnableReference());
+ }
+
+ public static unsafe void ColorPointer(this IntelParallelArrays thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer)
+ {
+ // SpanOverloader
+ thisApi.ColorPointer(size, type, in pointer.GetPinnableReference());
+ }
+
+ public static unsafe void NormalPointer(this IntelParallelArrays thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer)
+ {
+ // SpanOverloader
+ thisApi.NormalPointer(type, in pointer.GetPinnableReference());
+ }
+
+ public static unsafe void NormalPointer(this IntelParallelArrays thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] NormalPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer)
+ {
+ // SpanOverloader
+ thisApi.NormalPointer(type, in pointer.GetPinnableReference());
+ }
+
+ public static unsafe void TexCoordPointer(this IntelParallelArrays thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer)
+ {
+ // SpanOverloader
+ thisApi.TexCoordPointer(size, type, in pointer.GetPinnableReference());
+ }
+
+ public static unsafe void TexCoordPointer(this IntelParallelArrays thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer)
+ {
+ // SpanOverloader
+ thisApi.TexCoordPointer(size, type, in pointer.GetPinnableReference());
+ }
+
+ public static unsafe void VertexPointer(this IntelParallelArrays thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] INTEL type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer)
+ {
+ // SpanOverloader
+ thisApi.VertexPointer(size, type, in pointer.GetPinnableReference());
+ }
+
+ public static unsafe void VertexPointer(this IntelParallelArrays thisApi, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Count(Count = 4), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pointer)
+ {
+ // SpanOverloader
+ thisApi.VertexPointer(size, type, in pointer.GetPinnableReference());
+ }
+
+ }
+}
+
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.NV/NVVertexProgram.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.NV/NVVertexProgram.gen.cs
index b2e68d5526..869d68b4a1 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.NV/NVVertexProgram.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.NV/NVVertexProgram.gen.cs
@@ -476,9 +476,15 @@ public unsafe partial class NVVertexProgram : NativeExtension
[NativeApi(EntryPoint = "glVertexAttribPointerNV", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int fsize, [Flow(Silk.NET.Core.Native.FlowDirection.In)] NV type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "fsize, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribPointerNV", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int fsize, [Flow(Silk.NET.Core.Native.FlowDirection.In)] NV type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "fsize, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glVertexAttribPointerNV", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int fsize, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribEnumNV type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "fsize, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribPointerNV", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int fsize, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribEnumNV type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "fsize, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glVertexAttribs1dvNV", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribs1([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Count(Parameter = "count"), Flow(Silk.NET.Core.Native.FlowDirection.In)] double* v);
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.NV/NVVertexProgram4.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.NV/NVVertexProgram4.gen.cs
index b75a680e6e..5f187b6121 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.NV/NVVertexProgram4.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.NV/NVVertexProgram4.gen.cs
@@ -146,9 +146,15 @@ public unsafe partial class NVVertexProgram4 : NativeExtension
[NativeApi(EntryPoint = "glVertexAttribIPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] NV type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribIPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] NV type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glVertexAttribIPointerEXT", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribIType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribIPointerEXT", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribIType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
public unsafe int GetVertexAttribI([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] NV pname)
{
// NonKhrReturnTypeOverloader
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.OVR/OvrMultiview.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.OVR/OvrMultiview.gen.cs
index 3f6352b923..891f28e644 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.OVR/OvrMultiview.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGL.Legacy.Extensions.OVR/OvrMultiview.gen.cs
@@ -32,6 +32,12 @@ public unsafe partial class OvrMultiview : NativeExtension
[NativeApi(EntryPoint = "glFramebufferTextureMultiviewOVR", Convention = CallingConvention.Winapi)]
public partial void FramebufferTextureMultiview([Flow(Silk.NET.Core.Native.FlowDirection.In)] FramebufferTarget target, [Flow(Silk.NET.Core.Native.FlowDirection.In)] FramebufferAttachment attachment, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint texture, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int level, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int baseViewIndex, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint numViews);
+ [NativeApi(EntryPoint = "glNamedFramebufferTextureMultiviewOVR", Convention = CallingConvention.Winapi)]
+ public partial void NamedFramebufferTextureMultiview([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint framebuffer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] OVR attachment, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint texture, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int level, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int baseViewIndex, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint numViews);
+
+ [NativeApi(EntryPoint = "glNamedFramebufferTextureMultiviewOVR", Convention = CallingConvention.Winapi)]
+ public partial void NamedFramebufferTextureMultiview([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint framebuffer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] FramebufferAttachment attachment, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint texture, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int level, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int baseViewIndex, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint numViews);
+
public OvrMultiview(INativeContext ctx)
: base(ctx)
{
diff --git a/src/OpenGL/Extensions/Silk.NET.OpenGLES.Extensions.OVR/OvrMultiview.gen.cs b/src/OpenGL/Extensions/Silk.NET.OpenGLES.Extensions.OVR/OvrMultiview.gen.cs
index ab85410a93..b94d713afa 100644
--- a/src/OpenGL/Extensions/Silk.NET.OpenGLES.Extensions.OVR/OvrMultiview.gen.cs
+++ b/src/OpenGL/Extensions/Silk.NET.OpenGLES.Extensions.OVR/OvrMultiview.gen.cs
@@ -32,6 +32,12 @@ public unsafe partial class OvrMultiview : NativeExtension
[NativeApi(EntryPoint = "glFramebufferTextureMultiviewOVR", Convention = CallingConvention.Winapi)]
public partial void FramebufferTextureMultiview([Flow(Silk.NET.Core.Native.FlowDirection.In)] FramebufferTarget target, [Flow(Silk.NET.Core.Native.FlowDirection.In)] FramebufferAttachment attachment, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint texture, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int level, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int baseViewIndex, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint numViews);
+ [NativeApi(EntryPoint = "glNamedFramebufferTextureMultiviewOVR", Convention = CallingConvention.Winapi)]
+ public partial void NamedFramebufferTextureMultiview([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint framebuffer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] OVR attachment, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint texture, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int level, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int baseViewIndex, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint numViews);
+
+ [NativeApi(EntryPoint = "glNamedFramebufferTextureMultiviewOVR", Convention = CallingConvention.Winapi)]
+ public partial void NamedFramebufferTextureMultiview([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint framebuffer, [Flow(Silk.NET.Core.Native.FlowDirection.In)] FramebufferAttachment attachment, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint texture, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int level, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int baseViewIndex, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint numViews);
+
public OvrMultiview(INativeContext ctx)
: base(ctx)
{
diff --git a/src/OpenGL/Silk.NET.OpenGL.Legacy/GL.cs b/src/OpenGL/Silk.NET.OpenGL.Legacy/GL.cs
index bcac8a979c..a9f7484910 100644
--- a/src/OpenGL/Silk.NET.OpenGL.Legacy/GL.cs
+++ b/src/OpenGL/Silk.NET.OpenGL.Legacy/GL.cs
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
+using System.Diagnostics.CodeAnalysis;
using System.Drawing;
using System.Linq;
using System.Numerics;
@@ -26,7 +27,11 @@ public static GL GetApi(IGLContextSource contextSource) => GetApi
public static GL GetApi(INativeContext ctx) => new GL(ctx);
+#if NET5_0_OR_GREATER
+ public bool TryGetExtension<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors)] T>(out T ext)
+#else
public bool TryGetExtension(out T ext)
+#endif
where T : NativeExtension
{
ext = IsExtensionPresent(ExtensionAttribute.GetExtensionAttribute(typeof(T)).Name)
diff --git a/src/OpenGL/Silk.NET.OpenGL.Legacy/GL.gen.cs b/src/OpenGL/Silk.NET.OpenGL.Legacy/GL.gen.cs
index 35b02caeb0..187575162b 100644
--- a/src/OpenGL/Silk.NET.OpenGL.Legacy/GL.gen.cs
+++ b/src/OpenGL/Silk.NET.OpenGL.Legacy/GL.gen.cs
@@ -8572,9 +8572,15 @@ public unsafe partial class GL : NativeAPI
[NativeApi(EntryPoint = "glVertexAttribIPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribIPointer", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glVertexAttribIPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribIType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribIPointer", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribIType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glUniformMatrix2x3fv", Convention = CallingConvention.Winapi)]
public unsafe partial void UniformMatrix2x3([Flow(Silk.NET.Core.Native.FlowDirection.In)] int location, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool transpose, [Count(Parameter = "count", Expression = "*6"), Flow(Silk.NET.Core.Native.FlowDirection.In)] float* value);
@@ -9511,9 +9517,15 @@ public unsafe partial class GL : NativeAPI
[NativeApi(EntryPoint = "glVertexAttribPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribPointer", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glVertexAttribPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribPointer", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glBeginQuery", Convention = CallingConvention.Winapi)]
public partial void BeginQuery([Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum target, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint id);
@@ -9833,10 +9845,18 @@ public unsafe partial class GL : NativeAPI
[NativeApi(EntryPoint = "glFogCoordPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void FogCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [System.Obsolete("Deprecated in version 1.4")]
+ [NativeApi(EntryPoint = "glFogCoordPointer", Convention = CallingConvention.Winapi)]
+ public partial void FogCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[System.Obsolete("Deprecated in version 1.4")]
[NativeApi(EntryPoint = "glFogCoordPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void FogCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] FogPointerTypeEXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [System.Obsolete("Deprecated in version 1.4")]
+ [NativeApi(EntryPoint = "glFogCoordPointer", Convention = CallingConvention.Winapi)]
+ public partial void FogCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] FogPointerTypeEXT type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glMultiDrawArrays", Convention = CallingConvention.Winapi)]
public unsafe partial void MultiDrawArrays([Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum mode, [Count(Parameter = "drawcount"), Flow(Silk.NET.Core.Native.FlowDirection.In)] int* first, [Count(Parameter = "drawcount"), Flow(Silk.NET.Core.Native.FlowDirection.In)] uint* count, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint drawcount);
@@ -10049,10 +10069,18 @@ public unsafe partial class GL : NativeAPI
[NativeApi(EntryPoint = "glSecondaryColorPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void SecondaryColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [System.Obsolete("Deprecated in version 1.4")]
+ [NativeApi(EntryPoint = "glSecondaryColorPointer", Convention = CallingConvention.Winapi)]
+ public partial void SecondaryColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[System.Obsolete("Deprecated in version 1.4")]
[NativeApi(EntryPoint = "glSecondaryColorPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void SecondaryColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ColorPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [System.Obsolete("Deprecated in version 1.4")]
+ [NativeApi(EntryPoint = "glSecondaryColorPointer", Convention = CallingConvention.Winapi)]
+ public partial void SecondaryColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ColorPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[System.Obsolete("Deprecated in version 1.4")]
[NativeApi(EntryPoint = "glWindowPos2d", Convention = CallingConvention.Winapi)]
public partial void WindowPos2([Flow(Silk.NET.Core.Native.FlowDirection.In)] double x, [Flow(Silk.NET.Core.Native.FlowDirection.In)] double y);
@@ -10958,10 +10986,18 @@ public unsafe partial class GL : NativeAPI
[NativeApi(EntryPoint = "glColorPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [System.Obsolete("Deprecated in version 1.1")]
+ [NativeApi(EntryPoint = "glColorPointer", Convention = CallingConvention.Winapi)]
+ public partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[System.Obsolete("Deprecated in version 1.1")]
[NativeApi(EntryPoint = "glColorPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ColorPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [System.Obsolete("Deprecated in version 1.1")]
+ [NativeApi(EntryPoint = "glColorPointer", Convention = CallingConvention.Winapi)]
+ public partial void ColorPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ColorPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glCopyTexImage1D", Convention = CallingConvention.Winapi)]
public partial void CopyTexImage1D([Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum target, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int level, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum internalformat, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int x, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int y, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint width, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int border);
@@ -11052,6 +11088,10 @@ public unsafe partial class GL : NativeAPI
[NativeApi(EntryPoint = "glEdgeFlagPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void EdgeFlagPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [System.Obsolete("Deprecated in version 1.1")]
+ [NativeApi(EntryPoint = "glEdgeFlagPointer", Convention = CallingConvention.Winapi)]
+ public partial void EdgeFlagPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[System.Obsolete("Deprecated in version 1.1")]
[NativeApi(EntryPoint = "glEnableClientState", Convention = CallingConvention.Winapi)]
public partial void EnableClientState([Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum array);
@@ -11092,10 +11132,18 @@ public unsafe partial class GL : NativeAPI
[NativeApi(EntryPoint = "glIndexPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void IndexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [System.Obsolete("Deprecated in version 1.1")]
+ [NativeApi(EntryPoint = "glIndexPointer", Convention = CallingConvention.Winapi)]
+ public partial void IndexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[System.Obsolete("Deprecated in version 1.1")]
[NativeApi(EntryPoint = "glIndexPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void IndexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] IndexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [System.Obsolete("Deprecated in version 1.1")]
+ [NativeApi(EntryPoint = "glIndexPointer", Convention = CallingConvention.Winapi)]
+ public partial void IndexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] IndexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[System.Obsolete("Deprecated in version 1.1")]
[NativeApi(EntryPoint = "glInterleavedArrays", Convention = CallingConvention.Winapi)]
public unsafe partial void InterleavedArrays([Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum format, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "format, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
@@ -11111,10 +11159,18 @@ public unsafe partial class GL : NativeAPI
[NativeApi(EntryPoint = "glNormalPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [System.Obsolete("Deprecated in version 1.1")]
+ [NativeApi(EntryPoint = "glNormalPointer", Convention = CallingConvention.Winapi)]
+ public partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[System.Obsolete("Deprecated in version 1.1")]
[NativeApi(EntryPoint = "glNormalPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] NormalPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [System.Obsolete("Deprecated in version 1.1")]
+ [NativeApi(EntryPoint = "glNormalPointer", Convention = CallingConvention.Winapi)]
+ public partial void NormalPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] NormalPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glPolygonOffset", Convention = CallingConvention.Winapi)]
public partial void PolygonOffset([Flow(Silk.NET.Core.Native.FlowDirection.In)] float factor, [Flow(Silk.NET.Core.Native.FlowDirection.In)] float units);
@@ -11166,10 +11222,18 @@ public unsafe partial class GL : NativeAPI
[NativeApi(EntryPoint = "glTexCoordPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [System.Obsolete("Deprecated in version 1.1")]
+ [NativeApi(EntryPoint = "glTexCoordPointer", Convention = CallingConvention.Winapi)]
+ public partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[System.Obsolete("Deprecated in version 1.1")]
[NativeApi(EntryPoint = "glTexCoordPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [System.Obsolete("Deprecated in version 1.1")]
+ [NativeApi(EntryPoint = "glTexCoordPointer", Convention = CallingConvention.Winapi)]
+ public partial void TexCoordPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] TexCoordPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glTexSubImage1D", Convention = CallingConvention.Winapi)]
public unsafe partial void TexSubImage1D([Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum target, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int level, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int xoffset, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint width, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum format, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Count(Computed = "format, type, width"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pixels);
@@ -11270,10 +11334,18 @@ public unsafe partial class GL : NativeAPI
[NativeApi(EntryPoint = "glVertexPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [System.Obsolete("Deprecated in version 1.1")]
+ [NativeApi(EntryPoint = "glVertexPointer", Convention = CallingConvention.Winapi)]
+ public partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[System.Obsolete("Deprecated in version 1.1")]
[NativeApi(EntryPoint = "glVertexPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [System.Obsolete("Deprecated in version 1.1")]
+ [NativeApi(EntryPoint = "glVertexPointer", Convention = CallingConvention.Winapi)]
+ public partial void VertexPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Count(Computed = "size, type, stride"), Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[System.Obsolete("Deprecated in version 1.0")]
[NativeApi(EntryPoint = "glAccum", Convention = CallingConvention.Winapi)]
public partial void Accum([Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum op, [Flow(Silk.NET.Core.Native.FlowDirection.In)] float value);
diff --git a/src/OpenGL/Silk.NET.OpenGL/DebugProc.cs b/src/OpenGL/Silk.NET.OpenGL/DebugProc.cs
index 76b0ab52c1..f5bdcf0390 100644
--- a/src/OpenGL/Silk.NET.OpenGL/DebugProc.cs
+++ b/src/OpenGL/Silk.NET.OpenGL/DebugProc.cs
@@ -2,8 +2,10 @@
// The .NET Foundation licenses this file to you under the MIT license.
using System;
+using System.Runtime.InteropServices;
namespace Silk.NET.OpenGL
{
+ [UnmanagedFunctionPointer(CallingConvention.Winapi)]
public delegate void DebugProc(GLEnum source, GLEnum type, int id, GLEnum severity, int length, nint message, nint userParam);
}
diff --git a/src/OpenGL/Silk.NET.OpenGL/GL.cs b/src/OpenGL/Silk.NET.OpenGL/GL.cs
index d45743b9ac..b06defd2d5 100644
--- a/src/OpenGL/Silk.NET.OpenGL/GL.cs
+++ b/src/OpenGL/Silk.NET.OpenGL/GL.cs
@@ -3,6 +3,7 @@
using System;
using System.Collections.Generic;
+using System.Diagnostics.CodeAnalysis;
using System.Drawing;
using System.Linq;
using System.Numerics;
@@ -84,7 +85,11 @@ public static GL GetApi(IGLContextSource contextSource) => GetApi
///
/// True if the extension was loaded, otherwise False.
///
+#if NET5_0_OR_GREATER
+ public bool TryGetExtension<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors)] T>(out T ext)
+#else
public bool TryGetExtension(out T ext)
+#endif
where T : NativeExtension
{
ext = IsExtensionPresent(ExtensionAttribute.GetExtensionAttribute(typeof(T)).Name)
diff --git a/src/OpenGL/Silk.NET.OpenGL/GL.gen.cs b/src/OpenGL/Silk.NET.OpenGL/GL.gen.cs
index b076fb408b..0e2439e062 100644
--- a/src/OpenGL/Silk.NET.OpenGL/GL.gen.cs
+++ b/src/OpenGL/Silk.NET.OpenGL/GL.gen.cs
@@ -8572,9 +8572,15 @@ public unsafe partial class GL : NativeAPI
[NativeApi(EntryPoint = "glVertexAttribIPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribIPointer", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glVertexAttribIPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribIType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribIPointer", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribIType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glUniformMatrix2x3fv", Convention = CallingConvention.Winapi)]
public unsafe partial void UniformMatrix2x3([Flow(Silk.NET.Core.Native.FlowDirection.In)] int location, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint count, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool transpose, [Count(Parameter = "count", Expression = "*6"), Flow(Silk.NET.Core.Native.FlowDirection.In)] float* value);
@@ -9511,9 +9517,15 @@ public unsafe partial class GL : NativeAPI
[NativeApi(EntryPoint = "glVertexAttribPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribPointer", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glVertexAttribPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribPointer", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glBeginQuery", Convention = CallingConvention.Winapi)]
public partial void BeginQuery([Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum target, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint id);
diff --git a/src/OpenGL/Silk.NET.OpenGLES/GL.cs b/src/OpenGL/Silk.NET.OpenGLES/GL.cs
index 1dc8a1ae43..bbbb4d3be0 100644
--- a/src/OpenGL/Silk.NET.OpenGLES/GL.cs
+++ b/src/OpenGL/Silk.NET.OpenGLES/GL.cs
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
+using System.Diagnostics.CodeAnalysis;
using System.Drawing;
using System.Linq;
using System.Numerics;
@@ -26,7 +27,11 @@ public static GL GetApi(IGLContextSource contextSource) => GetApi
public static GL GetApi(INativeContext ctx) => new GL(ctx);
+#if NET5_0_OR_GREATER
+ public bool TryGetExtension<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors)] T>(out T ext)
+#else
public bool TryGetExtension(out T ext)
+#endif
where T : NativeExtension
{
ext = IsExtensionPresent(ExtensionAttribute.GetExtensionAttribute(typeof(T)).Name)
diff --git a/src/OpenGL/Silk.NET.OpenGLES/GL.gen.cs b/src/OpenGL/Silk.NET.OpenGLES/GL.gen.cs
index 379b2c706c..5d607e6780 100644
--- a/src/OpenGL/Silk.NET.OpenGLES/GL.gen.cs
+++ b/src/OpenGL/Silk.NET.OpenGLES/GL.gen.cs
@@ -4981,9 +4981,15 @@ public unsafe partial class GL : NativeAPI
[NativeApi(EntryPoint = "glVertexAttribIPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribIPointer", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glVertexAttribIPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribIType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribIPointer", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribIPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribIType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glWaitSync", Convention = CallingConvention.Winapi)]
public partial void WaitSync([Flow(Silk.NET.Core.Native.FlowDirection.In)] nint sync, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint flags, [Flow(Silk.NET.Core.Native.FlowDirection.In)] ulong timeout);
@@ -6795,9 +6801,15 @@ public unsafe partial class GL : NativeAPI
[NativeApi(EntryPoint = "glVertexAttribPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribPointer", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] GLEnum type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glVertexAttribPointer", Convention = CallingConvention.Winapi)]
public unsafe partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] void* pointer);
+ [NativeApi(EntryPoint = "glVertexAttribPointer", Convention = CallingConvention.Winapi)]
+ public partial void VertexAttribPointer([Flow(Silk.NET.Core.Native.FlowDirection.In)] uint index, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int size, [Flow(Silk.NET.Core.Native.FlowDirection.In)] VertexAttribPointerType type, [Flow(Silk.NET.Core.Native.FlowDirection.In)] bool normalized, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint stride, [Flow(Silk.NET.Core.Native.FlowDirection.In)] nint pointer);
+
[NativeApi(EntryPoint = "glViewport", Convention = CallingConvention.Winapi)]
public partial void Viewport([Flow(Silk.NET.Core.Native.FlowDirection.In)] int x, [Flow(Silk.NET.Core.Native.FlowDirection.In)] int y, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint width, [Flow(Silk.NET.Core.Native.FlowDirection.In)] uint height);
diff --git a/src/OpenGL/Silk.NET.WGL/WGL.cs b/src/OpenGL/Silk.NET.WGL/WGL.cs
index 84bb67db56..888a08508e 100644
--- a/src/OpenGL/Silk.NET.WGL/WGL.cs
+++ b/src/OpenGL/Silk.NET.WGL/WGL.cs
@@ -1,12 +1,9 @@
using System;
-using System.Runtime.InteropServices;
-using System.Runtime.CompilerServices;
-using System.Text;
-using Silk.NET.Core;
+using System.Collections.Concurrent;
+using System.Collections.Generic;
+using System.Diagnostics.CodeAnalysis;
using Silk.NET.Core.Native;
-using Silk.NET.Core.Attributes;
using Silk.NET.Core.Contexts;
-using Silk.NET.Core.Loader;
using static Silk.NET.Core.Attributes.ExtensionAttribute;
#pragma warning disable 1591
@@ -17,22 +14,49 @@ public partial class WGL
{
public static WGL GetApi()
{
- return new(CreateDefaultContext(new string[] {"Opengl32.dll"}));
+ var ctx = new MultiNativeContext(null, CreateDefaultContext(new string[] { "Opengl32.dll" }));
+ var ret = new WGL(ctx);
+ ctx.Contexts[0] = new LamdaNativeContext
+ (
+ (string proc, out nint pfn) => (pfn = proc != "wglGetProcAddress" ? ret.GetProcAddress(proc) : 0) != 0
+ );
+ return ret;
}
- public bool TryGetExtension(out T ext)
+ public bool TryGetExtension(out T ext) where T:NativeExtension
+ => TryGetExtension(out ext, GetCurrentDC());
+
+#if NET5_0_OR_GREATER
+ public bool TryGetExtension<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors)] T>(out T ext, nint hdc)
+#else
+ public bool TryGetExtension(out T ext, nint hdc)
+#endif
where T:NativeExtension
{
- ext = IsExtensionPresent(GetExtensionAttribute(typeof(T)).Name)
+ ext = IsExtensionPresent(GetExtensionAttribute(typeof(T)).Name, hdc)
? (T) Activator.CreateInstance(typeof(T), Context)
: null;
return ext is not null;
}
+
+ public override bool IsExtensionPresent(string extension) => IsExtensionPresent(extension, GetCurrentDC());
+
+ private ConcurrentDictionary> _extensions;
+
+ [NativeApi(EntryPoint = "wglGetExtensionsStringARB")]
+ private partial string GetExtensionsString(nint hdc);
- public override bool IsExtensionPresent(string extension)
- {
- throw new NotImplementedException();
- }
+ private static HashSet? _empty;
+ private bool _hasGetExtensionsString;
+
+ public bool IsExtensionPresent(string extension, nint hdc) => _extensions.GetOrAdd
+ (
+ hdc, hdc => !(_hasGetExtensionsString =
+ _hasGetExtensionsString || GetProcAddress("wglGetExtensionsStringARB") != 0)
+ ? _empty ??= new HashSet()
+ : new HashSet(GetExtensionsString(hdc).Split(' '))
+ )
+ .Contains(extension.StartsWith("WGL_") ? extension : $"WGL_{extension}");
}
}
diff --git a/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.ANDROIDSYS/Silk.NET.OpenXR.Extensions.ANDROIDSYS.csproj b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.ANDROIDSYS/Silk.NET.OpenXR.Extensions.ANDROIDSYS.csproj
new file mode 100644
index 0000000000..2b94cfbe64
--- /dev/null
+++ b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.ANDROIDSYS/Silk.NET.OpenXR.Extensions.ANDROIDSYS.csproj
@@ -0,0 +1,14 @@
+
+
+
+ netstandard2.0;netstandard2.1;netcoreapp3.1;net5.0
+ true
+ 10
+
+
+
+
+
+
+
+
diff --git a/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.ANDROIDX/Silk.NET.OpenXR.Extensions.ANDROIDX.csproj b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.ANDROIDX/Silk.NET.OpenXR.Extensions.ANDROIDX.csproj
new file mode 100644
index 0000000000..2b94cfbe64
--- /dev/null
+++ b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.ANDROIDX/Silk.NET.OpenXR.Extensions.ANDROIDX.csproj
@@ -0,0 +1,14 @@
+
+
+
+ netstandard2.0;netstandard2.1;netcoreapp3.1;net5.0
+ true
+ 10
+
+
+
+
+
+
+
+
diff --git a/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.EXT/ExtFuture.gen.cs b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.EXT/ExtFuture.gen.cs
new file mode 100644
index 0000000000..40084a8aae
--- /dev/null
+++ b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.EXT/ExtFuture.gen.cs
@@ -0,0 +1,53 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+using Silk.NET.OpenXR;
+using Extension = Silk.NET.Core.Attributes.ExtensionAttribute;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR.Extensions.EXT
+{
+ [Extension("XR_EXT_future")]
+ public unsafe partial class ExtFuture : NativeExtension
+ {
+ public const string ExtensionName = "XR_EXT_future";
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrCancelFutureEXT", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result CancelFuture([Count(Count = 0)] Instance instance, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] FutureCancelInfoEXT* cancelInfo);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrCancelFutureEXT", Convention = CallingConvention.Winapi)]
+ public partial Result CancelFuture([Count(Count = 0)] Instance instance, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in FutureCancelInfoEXT cancelInfo);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrPollFutureEXT", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result PollFuture([Count(Count = 0)] Instance instance, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] FuturePollInfoEXT* pollInfo, [Count(Count = 0)] FuturePollResultEXT* pollResult);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrPollFutureEXT", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result PollFuture([Count(Count = 0)] Instance instance, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] FuturePollInfoEXT* pollInfo, [Count(Count = 0)] ref FuturePollResultEXT pollResult);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrPollFutureEXT", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result PollFuture([Count(Count = 0)] Instance instance, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in FuturePollInfoEXT pollInfo, [Count(Count = 0)] FuturePollResultEXT* pollResult);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrPollFutureEXT", Convention = CallingConvention.Winapi)]
+ public partial Result PollFuture([Count(Count = 0)] Instance instance, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in FuturePollInfoEXT pollInfo, [Count(Count = 0)] ref FuturePollResultEXT pollResult);
+
+ public ExtFuture(INativeContext ctx)
+ : base(ctx)
+ {
+ }
+ }
+}
+
diff --git a/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.EXT/ExtFutureOverloads.gen.cs b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.EXT/ExtFutureOverloads.gen.cs
new file mode 100644
index 0000000000..601dedc253
--- /dev/null
+++ b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.EXT/ExtFutureOverloads.gen.cs
@@ -0,0 +1,49 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR.Extensions.EXT
+{
+ public static class ExtFutureOverloads
+ {
+ /// To be documented.
+ public static unsafe Result CancelFuture(this ExtFuture thisApi, [Count(Count = 0)] Instance instance, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan cancelInfo)
+ {
+ // SpanOverloader
+ return thisApi.CancelFuture(instance, in cancelInfo.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result PollFuture(this ExtFuture thisApi, [Count(Count = 0)] Instance instance, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] FuturePollInfoEXT* pollInfo, [Count(Count = 0)] Span pollResult)
+ {
+ // SpanOverloader
+ return thisApi.PollFuture(instance, pollInfo, ref pollResult.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result PollFuture(this ExtFuture thisApi, [Count(Count = 0)] Instance instance, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pollInfo, [Count(Count = 0)] FuturePollResultEXT* pollResult)
+ {
+ // SpanOverloader
+ return thisApi.PollFuture(instance, in pollInfo.GetPinnableReference(), pollResult);
+ }
+
+ /// To be documented.
+ public static unsafe Result PollFuture(this ExtFuture thisApi, [Count(Count = 0)] Instance instance, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan pollInfo, [Count(Count = 0)] Span pollResult)
+ {
+ // SpanOverloader
+ return thisApi.PollFuture(instance, in pollInfo.GetPinnableReference(), ref pollResult.GetPinnableReference());
+ }
+
+ }
+}
+
diff --git a/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.FB/FBFaceTracking2.gen.cs b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.FB/FBFaceTracking2.gen.cs
new file mode 100644
index 0000000000..7b672ea3e5
--- /dev/null
+++ b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.FB/FBFaceTracking2.gen.cs
@@ -0,0 +1,65 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+using Silk.NET.OpenXR;
+using Extension = Silk.NET.Core.Attributes.ExtensionAttribute;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR.Extensions.FB
+{
+ [Extension("XR_FB_face_tracking2")]
+ public unsafe partial class FBFaceTracking2 : NativeExtension
+ {
+ public const string ExtensionName = "XR_FB_face_tracking2";
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrCreateFaceTracker2FB", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result CreateFaceTracker2fB([Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] FaceTrackerCreateInfo2FB* createInfo, [Count(Count = 0)] FaceTracker2FB* faceTracker);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrCreateFaceTracker2FB", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result CreateFaceTracker2fB([Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] FaceTrackerCreateInfo2FB* createInfo, [Count(Count = 0)] ref FaceTracker2FB faceTracker);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrCreateFaceTracker2FB", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result CreateFaceTracker2fB([Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in FaceTrackerCreateInfo2FB createInfo, [Count(Count = 0)] FaceTracker2FB* faceTracker);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrCreateFaceTracker2FB", Convention = CallingConvention.Winapi)]
+ public partial Result CreateFaceTracker2fB([Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in FaceTrackerCreateInfo2FB createInfo, [Count(Count = 0)] ref FaceTracker2FB faceTracker);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrDestroyFaceTracker2FB", Convention = CallingConvention.Winapi)]
+ public partial Result DestroyFaceTracker2fB([Count(Count = 0)] FaceTracker2FB faceTracker);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrGetFaceExpressionWeights2FB", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result GetFaceExpressionWeights2fB([Count(Count = 0)] FaceTracker2FB faceTracker, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] FaceExpressionInfo2FB* expressionInfo, [Count(Count = 0)] FaceExpressionWeights2FB* expressionWeights);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrGetFaceExpressionWeights2FB", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result GetFaceExpressionWeights2fB([Count(Count = 0)] FaceTracker2FB faceTracker, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] FaceExpressionInfo2FB* expressionInfo, [Count(Count = 0)] ref FaceExpressionWeights2FB expressionWeights);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrGetFaceExpressionWeights2FB", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result GetFaceExpressionWeights2fB([Count(Count = 0)] FaceTracker2FB faceTracker, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in FaceExpressionInfo2FB expressionInfo, [Count(Count = 0)] FaceExpressionWeights2FB* expressionWeights);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrGetFaceExpressionWeights2FB", Convention = CallingConvention.Winapi)]
+ public partial Result GetFaceExpressionWeights2fB([Count(Count = 0)] FaceTracker2FB faceTracker, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in FaceExpressionInfo2FB expressionInfo, [Count(Count = 0)] ref FaceExpressionWeights2FB expressionWeights);
+
+ public FBFaceTracking2(INativeContext ctx)
+ : base(ctx)
+ {
+ }
+ }
+}
+
diff --git a/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.FB/FBFaceTracking2Overloads.gen.cs b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.FB/FBFaceTracking2Overloads.gen.cs
new file mode 100644
index 0000000000..c87ba3185e
--- /dev/null
+++ b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.FB/FBFaceTracking2Overloads.gen.cs
@@ -0,0 +1,63 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR.Extensions.FB
+{
+ public static class FBFaceTracking2Overloads
+ {
+ /// To be documented.
+ public static unsafe Result CreateFaceTracker2fB(this FBFaceTracking2 thisApi, [Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] FaceTrackerCreateInfo2FB* createInfo, [Count(Count = 0)] Span faceTracker)
+ {
+ // SpanOverloader
+ return thisApi.CreateFaceTracker2fB(session, createInfo, ref faceTracker.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result CreateFaceTracker2fB(this FBFaceTracking2 thisApi, [Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan createInfo, [Count(Count = 0)] FaceTracker2FB* faceTracker)
+ {
+ // SpanOverloader
+ return thisApi.CreateFaceTracker2fB(session, in createInfo.GetPinnableReference(), faceTracker);
+ }
+
+ /// To be documented.
+ public static unsafe Result CreateFaceTracker2fB(this FBFaceTracking2 thisApi, [Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan createInfo, [Count(Count = 0)] Span faceTracker)
+ {
+ // SpanOverloader
+ return thisApi.CreateFaceTracker2fB(session, in createInfo.GetPinnableReference(), ref faceTracker.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result GetFaceExpressionWeights2fB(this FBFaceTracking2 thisApi, [Count(Count = 0)] FaceTracker2FB faceTracker, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] FaceExpressionInfo2FB* expressionInfo, [Count(Count = 0)] Span expressionWeights)
+ {
+ // SpanOverloader
+ return thisApi.GetFaceExpressionWeights2fB(faceTracker, expressionInfo, ref expressionWeights.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result GetFaceExpressionWeights2fB(this FBFaceTracking2 thisApi, [Count(Count = 0)] FaceTracker2FB faceTracker, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan expressionInfo, [Count(Count = 0)] FaceExpressionWeights2FB* expressionWeights)
+ {
+ // SpanOverloader
+ return thisApi.GetFaceExpressionWeights2fB(faceTracker, in expressionInfo.GetPinnableReference(), expressionWeights);
+ }
+
+ /// To be documented.
+ public static unsafe Result GetFaceExpressionWeights2fB(this FBFaceTracking2 thisApi, [Count(Count = 0)] FaceTracker2FB faceTracker, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan expressionInfo, [Count(Count = 0)] Span expressionWeights)
+ {
+ // SpanOverloader
+ return thisApi.GetFaceExpressionWeights2fB(faceTracker, in expressionInfo.GetPinnableReference(), ref expressionWeights.GetPinnableReference());
+ }
+
+ }
+}
+
diff --git a/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.KHR/KhrLocateSpaces.gen.cs b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.KHR/KhrLocateSpaces.gen.cs
new file mode 100644
index 0000000000..65871852bb
--- /dev/null
+++ b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.KHR/KhrLocateSpaces.gen.cs
@@ -0,0 +1,45 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+using Silk.NET.OpenXR;
+using Extension = Silk.NET.Core.Attributes.ExtensionAttribute;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR.Extensions.KHR
+{
+ [Extension("XR_KHR_locate_spaces")]
+ public unsafe partial class KhrLocateSpaces : NativeExtension
+ {
+ public const string ExtensionName = "XR_KHR_locate_spaces";
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrLocateSpacesKHR", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result LocateSpaces([Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] SpacesLocateInfo* locateInfo, [Count(Count = 0)] SpaceLocations* spaceLocations);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrLocateSpacesKHR", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result LocateSpaces([Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] SpacesLocateInfo* locateInfo, [Count(Count = 0)] ref SpaceLocations spaceLocations);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrLocateSpacesKHR", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result LocateSpaces([Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in SpacesLocateInfo locateInfo, [Count(Count = 0)] SpaceLocations* spaceLocations);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrLocateSpacesKHR", Convention = CallingConvention.Winapi)]
+ public partial Result LocateSpaces([Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in SpacesLocateInfo locateInfo, [Count(Count = 0)] ref SpaceLocations spaceLocations);
+
+ public KhrLocateSpaces(INativeContext ctx)
+ : base(ctx)
+ {
+ }
+ }
+}
+
diff --git a/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.KHR/KhrLocateSpacesOverloads.gen.cs b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.KHR/KhrLocateSpacesOverloads.gen.cs
new file mode 100644
index 0000000000..e6ba3a36af
--- /dev/null
+++ b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.KHR/KhrLocateSpacesOverloads.gen.cs
@@ -0,0 +1,42 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR.Extensions.KHR
+{
+ public static class KhrLocateSpacesOverloads
+ {
+ /// To be documented.
+ public static unsafe Result LocateSpaces(this KhrLocateSpaces thisApi, [Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] SpacesLocateInfo* locateInfo, [Count(Count = 0)] Span spaceLocations)
+ {
+ // SpanOverloader
+ return thisApi.LocateSpaces(session, locateInfo, ref spaceLocations.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result LocateSpaces(this KhrLocateSpaces thisApi, [Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan locateInfo, [Count(Count = 0)] SpaceLocations* spaceLocations)
+ {
+ // SpanOverloader
+ return thisApi.LocateSpaces(session, in locateInfo.GetPinnableReference(), spaceLocations);
+ }
+
+ /// To be documented.
+ public static unsafe Result LocateSpaces(this KhrLocateSpaces thisApi, [Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan locateInfo, [Count(Count = 0)] Span spaceLocations)
+ {
+ // SpanOverloader
+ return thisApi.LocateSpaces(session, in locateInfo.GetPinnableReference(), ref spaceLocations.GetPinnableReference());
+ }
+
+ }
+}
+
diff --git a/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.LEIA/Silk.NET.OpenXR.Extensions.LEIA.csproj b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.LEIA/Silk.NET.OpenXR.Extensions.LEIA.csproj
new file mode 100644
index 0000000000..2b94cfbe64
--- /dev/null
+++ b/src/OpenXR/Extensions/Silk.NET.OpenXR.Extensions.LEIA/Silk.NET.OpenXR.Extensions.LEIA.csproj
@@ -0,0 +1,14 @@
+
+
+
+ netstandard2.0;netstandard2.1;netcoreapp3.1;net5.0
+ true
+ 10
+
+
+
+
+
+
+
+
diff --git a/src/OpenXR/Silk.NET.OpenXR/CreateApiLayerInstanceProc.cs b/src/OpenXR/Silk.NET.OpenXR/CreateApiLayerInstanceProc.cs
new file mode 100644
index 0000000000..3f01574012
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/CreateApiLayerInstanceProc.cs
@@ -0,0 +1,11 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+namespace Silk.NET.OpenXR;
+
+public unsafe delegate Result CreateApiLayerInstanceProc
+(
+ InstanceCreateInfo* info,
+ ApiLayerCreateInfo* apiLayerInfo,
+ Instance* instance
+);
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/CompositionLayerSettingsFlagsFB.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/CompositionLayerSettingsFlagsFB.gen.cs
index 5e4f59daf4..96f4d40efb 100644
--- a/src/OpenXR/Silk.NET.OpenXR/Enums/CompositionLayerSettingsFlagsFB.gen.cs
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/CompositionLayerSettingsFlagsFB.gen.cs
@@ -27,6 +27,9 @@ public enum CompositionLayerSettingsFlagsFB : long
[Obsolete("Deprecated in favour of \"QualitySharpeningBitFB\"")]
[NativeName("Name", "XR_COMPOSITION_LAYER_SETTINGS_QUALITY_SHARPENING_BIT_FB")]
CompositionLayerSettingsQualitySharpeningBitFB = 8,
+ [Obsolete("Deprecated in favour of \"AutoLayerFilterBitMeta\"")]
+ [NativeName("Name", "XR_COMPOSITION_LAYER_SETTINGS_AUTO_LAYER_FILTER_BIT_META")]
+ CompositionLayerSettingsAutoLayerFilterBitMeta = 32,
[NativeName("Name", "XR_COMPOSITION_LAYER_SETTINGS_NORMAL_SUPER_SAMPLING_BIT_FB")]
NormalSuperSamplingBitFB = 1,
[NativeName("Name", "XR_COMPOSITION_LAYER_SETTINGS_QUALITY_SUPER_SAMPLING_BIT_FB")]
@@ -35,5 +38,7 @@ public enum CompositionLayerSettingsFlagsFB : long
NormalSharpeningBitFB = 4,
[NativeName("Name", "XR_COMPOSITION_LAYER_SETTINGS_QUALITY_SHARPENING_BIT_FB")]
QualitySharpeningBitFB = 8,
+ [NativeName("Name", "XR_COMPOSITION_LAYER_SETTINGS_AUTO_LAYER_FILTER_BIT_META")]
+ AutoLayerFilterBitMeta = 32,
}
}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/EnvironmentDepthProviderCreateFlagsMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/EnvironmentDepthProviderCreateFlagsMETA.gen.cs
new file mode 100644
index 0000000000..9d71a980e6
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/EnvironmentDepthProviderCreateFlagsMETA.gen.cs
@@ -0,0 +1,19 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using Silk.NET.Core.Attributes;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [Flags]
+ [NativeName("Name", "XrEnvironmentDepthProviderCreateFlagsMETA")]
+ public enum EnvironmentDepthProviderCreateFlagsMETA : long
+ {
+ [NativeName("Name", "")]
+ None = 0,
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/EnvironmentDepthSwapchainCreateFlagsMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/EnvironmentDepthSwapchainCreateFlagsMETA.gen.cs
new file mode 100644
index 0000000000..421a51543e
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/EnvironmentDepthSwapchainCreateFlagsMETA.gen.cs
@@ -0,0 +1,19 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using Silk.NET.Core.Attributes;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [Flags]
+ [NativeName("Name", "XrEnvironmentDepthSwapchainCreateFlagsMETA")]
+ public enum EnvironmentDepthSwapchainCreateFlagsMETA : long
+ {
+ [NativeName("Name", "")]
+ None = 0,
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/FaceConfidence2FB.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/FaceConfidence2FB.gen.cs
new file mode 100644
index 0000000000..2a6e644058
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/FaceConfidence2FB.gen.cs
@@ -0,0 +1,31 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using Silk.NET.Core.Attributes;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFaceConfidence2FB")]
+ public enum FaceConfidence2FB : int
+ {
+ [Obsolete("Deprecated in favour of \"LowerFaceFB\"")]
+ [NativeName("Name", "XR_FACE_CONFIDENCE2_LOWER_FACE_FB")]
+ FaceConfidence2LowerFaceFB = 0,
+ [Obsolete("Deprecated in favour of \"UpperFaceFB\"")]
+ [NativeName("Name", "XR_FACE_CONFIDENCE2_UPPER_FACE_FB")]
+ FaceConfidence2UpperFaceFB = 1,
+ [Obsolete("Deprecated in favour of \"CountFB\"")]
+ [NativeName("Name", "XR_FACE_CONFIDENCE2_COUNT_FB")]
+ FaceConfidence2CountFB = 2,
+ [NativeName("Name", "XR_FACE_CONFIDENCE2_LOWER_FACE_FB")]
+ LowerFaceFB = 0,
+ [NativeName("Name", "XR_FACE_CONFIDENCE2_UPPER_FACE_FB")]
+ UpperFaceFB = 1,
+ [NativeName("Name", "XR_FACE_CONFIDENCE2_COUNT_FB")]
+ CountFB = 2,
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/FaceExpression2FB.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/FaceExpression2FB.gen.cs
new file mode 100644
index 0000000000..370dbea23d
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/FaceExpression2FB.gen.cs
@@ -0,0 +1,371 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using Silk.NET.Core.Attributes;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFaceExpression2FB")]
+ public enum FaceExpression2FB : int
+ {
+ [Obsolete("Deprecated in favour of \"BrowLowererLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_BROW_LOWERER_L_FB")]
+ FaceExpression2BrowLowererLFB = 0,
+ [Obsolete("Deprecated in favour of \"BrowLowererRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_BROW_LOWERER_R_FB")]
+ FaceExpression2BrowLowererRFB = 1,
+ [Obsolete("Deprecated in favour of \"CheekPuffLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHEEK_PUFF_L_FB")]
+ FaceExpression2CheekPuffLFB = 2,
+ [Obsolete("Deprecated in favour of \"CheekPuffRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHEEK_PUFF_R_FB")]
+ FaceExpression2CheekPuffRFB = 3,
+ [Obsolete("Deprecated in favour of \"CheekRaiserLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHEEK_RAISER_L_FB")]
+ FaceExpression2CheekRaiserLFB = 4,
+ [Obsolete("Deprecated in favour of \"CheekRaiserRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHEEK_RAISER_R_FB")]
+ FaceExpression2CheekRaiserRFB = 5,
+ [Obsolete("Deprecated in favour of \"CheekSuckLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHEEK_SUCK_L_FB")]
+ FaceExpression2CheekSuckLFB = 6,
+ [Obsolete("Deprecated in favour of \"CheekSuckRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHEEK_SUCK_R_FB")]
+ FaceExpression2CheekSuckRFB = 7,
+ [Obsolete("Deprecated in favour of \"ChinRaiserBFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHIN_RAISER_B_FB")]
+ FaceExpression2ChinRaiserBFB = 8,
+ [Obsolete("Deprecated in favour of \"ChinRaiserTFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHIN_RAISER_T_FB")]
+ FaceExpression2ChinRaiserTFB = 9,
+ [Obsolete("Deprecated in favour of \"DimplerLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_DIMPLER_L_FB")]
+ FaceExpression2DimplerLFB = 10,
+ [Obsolete("Deprecated in favour of \"DimplerRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_DIMPLER_R_FB")]
+ FaceExpression2DimplerRFB = 11,
+ [Obsolete("Deprecated in favour of \"EyesClosedLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_CLOSED_L_FB")]
+ FaceExpression2EyesClosedLFB = 12,
+ [Obsolete("Deprecated in favour of \"EyesClosedRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_CLOSED_R_FB")]
+ FaceExpression2EyesClosedRFB = 13,
+ [Obsolete("Deprecated in favour of \"EyesLookDownLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_DOWN_L_FB")]
+ FaceExpression2EyesLookDownLFB = 14,
+ [Obsolete("Deprecated in favour of \"EyesLookDownRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_DOWN_R_FB")]
+ FaceExpression2EyesLookDownRFB = 15,
+ [Obsolete("Deprecated in favour of \"EyesLookLeftLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_LEFT_L_FB")]
+ FaceExpression2EyesLookLeftLFB = 16,
+ [Obsolete("Deprecated in favour of \"EyesLookLeftRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_LEFT_R_FB")]
+ FaceExpression2EyesLookLeftRFB = 17,
+ [Obsolete("Deprecated in favour of \"EyesLookRightLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_RIGHT_L_FB")]
+ FaceExpression2EyesLookRightLFB = 18,
+ [Obsolete("Deprecated in favour of \"EyesLookRightRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_RIGHT_R_FB")]
+ FaceExpression2EyesLookRightRFB = 19,
+ [Obsolete("Deprecated in favour of \"EyesLookUpLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_UP_L_FB")]
+ FaceExpression2EyesLookUpLFB = 20,
+ [Obsolete("Deprecated in favour of \"EyesLookUpRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_UP_R_FB")]
+ FaceExpression2EyesLookUpRFB = 21,
+ [Obsolete("Deprecated in favour of \"InnerBrowRaiserLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_INNER_BROW_RAISER_L_FB")]
+ FaceExpression2InnerBrowRaiserLFB = 22,
+ [Obsolete("Deprecated in favour of \"InnerBrowRaiserRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_INNER_BROW_RAISER_R_FB")]
+ FaceExpression2InnerBrowRaiserRFB = 23,
+ [Obsolete("Deprecated in favour of \"JawDropFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_JAW_DROP_FB")]
+ FaceExpression2JawDropFB = 24,
+ [Obsolete("Deprecated in favour of \"JawSidewaysLeftFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_JAW_SIDEWAYS_LEFT_FB")]
+ FaceExpression2JawSidewaysLeftFB = 25,
+ [Obsolete("Deprecated in favour of \"JawSidewaysRightFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_JAW_SIDEWAYS_RIGHT_FB")]
+ FaceExpression2JawSidewaysRightFB = 26,
+ [Obsolete("Deprecated in favour of \"JawThrustFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_JAW_THRUST_FB")]
+ FaceExpression2JawThrustFB = 27,
+ [Obsolete("Deprecated in favour of \"LidTightenerLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LID_TIGHTENER_L_FB")]
+ FaceExpression2LidTightenerLFB = 28,
+ [Obsolete("Deprecated in favour of \"LidTightenerRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LID_TIGHTENER_R_FB")]
+ FaceExpression2LidTightenerRFB = 29,
+ [Obsolete("Deprecated in favour of \"LipCornerDepressorLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_CORNER_DEPRESSOR_L_FB")]
+ FaceExpression2LipCornerDepressorLFB = 30,
+ [Obsolete("Deprecated in favour of \"LipCornerDepressorRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_CORNER_DEPRESSOR_R_FB")]
+ FaceExpression2LipCornerDepressorRFB = 31,
+ [Obsolete("Deprecated in favour of \"LipCornerPullerLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_CORNER_PULLER_L_FB")]
+ FaceExpression2LipCornerPullerLFB = 32,
+ [Obsolete("Deprecated in favour of \"LipCornerPullerRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_CORNER_PULLER_R_FB")]
+ FaceExpression2LipCornerPullerRFB = 33,
+ [Obsolete("Deprecated in favour of \"LipFunnelerLBFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_FUNNELER_LB_FB")]
+ FaceExpression2LipFunnelerLBFB = 34,
+ [Obsolete("Deprecated in favour of \"LipFunnelerLTFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_FUNNELER_LT_FB")]
+ FaceExpression2LipFunnelerLTFB = 35,
+ [Obsolete("Deprecated in favour of \"LipFunnelerRBFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_FUNNELER_RB_FB")]
+ FaceExpression2LipFunnelerRBFB = 36,
+ [Obsolete("Deprecated in favour of \"LipFunnelerRTFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_FUNNELER_RT_FB")]
+ FaceExpression2LipFunnelerRTFB = 37,
+ [Obsolete("Deprecated in favour of \"LipPressorLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_PRESSOR_L_FB")]
+ FaceExpression2LipPressorLFB = 38,
+ [Obsolete("Deprecated in favour of \"LipPressorRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_PRESSOR_R_FB")]
+ FaceExpression2LipPressorRFB = 39,
+ [Obsolete("Deprecated in favour of \"LipPuckerLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_PUCKER_L_FB")]
+ FaceExpression2LipPuckerLFB = 40,
+ [Obsolete("Deprecated in favour of \"LipPuckerRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_PUCKER_R_FB")]
+ FaceExpression2LipPuckerRFB = 41,
+ [Obsolete("Deprecated in favour of \"LipStretcherLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_STRETCHER_L_FB")]
+ FaceExpression2LipStretcherLFB = 42,
+ [Obsolete("Deprecated in favour of \"LipStretcherRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_STRETCHER_R_FB")]
+ FaceExpression2LipStretcherRFB = 43,
+ [Obsolete("Deprecated in favour of \"LipSuckLBFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_SUCK_LB_FB")]
+ FaceExpression2LipSuckLBFB = 44,
+ [Obsolete("Deprecated in favour of \"LipSuckLTFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_SUCK_LT_FB")]
+ FaceExpression2LipSuckLTFB = 45,
+ [Obsolete("Deprecated in favour of \"LipSuckRBFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_SUCK_RB_FB")]
+ FaceExpression2LipSuckRBFB = 46,
+ [Obsolete("Deprecated in favour of \"LipSuckRTFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_SUCK_RT_FB")]
+ FaceExpression2LipSuckRTFB = 47,
+ [Obsolete("Deprecated in favour of \"LipTightenerLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_TIGHTENER_L_FB")]
+ FaceExpression2LipTightenerLFB = 48,
+ [Obsolete("Deprecated in favour of \"LipTightenerRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_TIGHTENER_R_FB")]
+ FaceExpression2LipTightenerRFB = 49,
+ [Obsolete("Deprecated in favour of \"LipsTowardFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIPS_TOWARD_FB")]
+ FaceExpression2LipsTowardFB = 50,
+ [Obsolete("Deprecated in favour of \"LowerLipDepressorLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LOWER_LIP_DEPRESSOR_L_FB")]
+ FaceExpression2LowerLipDepressorLFB = 51,
+ [Obsolete("Deprecated in favour of \"LowerLipDepressorRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LOWER_LIP_DEPRESSOR_R_FB")]
+ FaceExpression2LowerLipDepressorRFB = 52,
+ [Obsolete("Deprecated in favour of \"MouthLeftFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_MOUTH_LEFT_FB")]
+ FaceExpression2MouthLeftFB = 53,
+ [Obsolete("Deprecated in favour of \"MouthRightFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_MOUTH_RIGHT_FB")]
+ FaceExpression2MouthRightFB = 54,
+ [Obsolete("Deprecated in favour of \"NoseWrinklerLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_NOSE_WRINKLER_L_FB")]
+ FaceExpression2NoseWrinklerLFB = 55,
+ [Obsolete("Deprecated in favour of \"NoseWrinklerRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_NOSE_WRINKLER_R_FB")]
+ FaceExpression2NoseWrinklerRFB = 56,
+ [Obsolete("Deprecated in favour of \"OuterBrowRaiserLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_OUTER_BROW_RAISER_L_FB")]
+ FaceExpression2OuterBrowRaiserLFB = 57,
+ [Obsolete("Deprecated in favour of \"OuterBrowRaiserRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_OUTER_BROW_RAISER_R_FB")]
+ FaceExpression2OuterBrowRaiserRFB = 58,
+ [Obsolete("Deprecated in favour of \"UpperLidRaiserLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_UPPER_LID_RAISER_L_FB")]
+ FaceExpression2UpperLidRaiserLFB = 59,
+ [Obsolete("Deprecated in favour of \"UpperLidRaiserRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_UPPER_LID_RAISER_R_FB")]
+ FaceExpression2UpperLidRaiserRFB = 60,
+ [Obsolete("Deprecated in favour of \"UpperLipRaiserLFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_UPPER_LIP_RAISER_L_FB")]
+ FaceExpression2UpperLipRaiserLFB = 61,
+ [Obsolete("Deprecated in favour of \"UpperLipRaiserRFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_UPPER_LIP_RAISER_R_FB")]
+ FaceExpression2UpperLipRaiserRFB = 62,
+ [Obsolete("Deprecated in favour of \"TongueTipInterdentalFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_TONGUE_TIP_INTERDENTAL_FB")]
+ FaceExpression2TongueTipInterdentalFB = 63,
+ [Obsolete("Deprecated in favour of \"TongueTipAlveolarFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_TONGUE_TIP_ALVEOLAR_FB")]
+ FaceExpression2TongueTipAlveolarFB = 64,
+ [Obsolete("Deprecated in favour of \"TongueFrontDorsalPalateFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_TONGUE_FRONT_DORSAL_PALATE_FB")]
+ FaceExpression2TongueFrontDorsalPalateFB = 65,
+ [Obsolete("Deprecated in favour of \"TongueMidDorsalPalateFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_TONGUE_MID_DORSAL_PALATE_FB")]
+ FaceExpression2TongueMidDorsalPalateFB = 66,
+ [Obsolete("Deprecated in favour of \"TongueBackDorsalVelarFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_TONGUE_BACK_DORSAL_VELAR_FB")]
+ FaceExpression2TongueBackDorsalVelarFB = 67,
+ [Obsolete("Deprecated in favour of \"TongueOutFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_TONGUE_OUT_FB")]
+ FaceExpression2TongueOutFB = 68,
+ [Obsolete("Deprecated in favour of \"TongueRetreatFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_TONGUE_RETREAT_FB")]
+ FaceExpression2TongueRetreatFB = 69,
+ [Obsolete("Deprecated in favour of \"CountFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION2_COUNT_FB")]
+ FaceExpression2CountFB = 70,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_BROW_LOWERER_L_FB")]
+ BrowLowererLFB = 0,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_BROW_LOWERER_R_FB")]
+ BrowLowererRFB = 1,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHEEK_PUFF_L_FB")]
+ CheekPuffLFB = 2,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHEEK_PUFF_R_FB")]
+ CheekPuffRFB = 3,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHEEK_RAISER_L_FB")]
+ CheekRaiserLFB = 4,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHEEK_RAISER_R_FB")]
+ CheekRaiserRFB = 5,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHEEK_SUCK_L_FB")]
+ CheekSuckLFB = 6,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHEEK_SUCK_R_FB")]
+ CheekSuckRFB = 7,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHIN_RAISER_B_FB")]
+ ChinRaiserBFB = 8,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_CHIN_RAISER_T_FB")]
+ ChinRaiserTFB = 9,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_DIMPLER_L_FB")]
+ DimplerLFB = 10,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_DIMPLER_R_FB")]
+ DimplerRFB = 11,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_CLOSED_L_FB")]
+ EyesClosedLFB = 12,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_CLOSED_R_FB")]
+ EyesClosedRFB = 13,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_DOWN_L_FB")]
+ EyesLookDownLFB = 14,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_DOWN_R_FB")]
+ EyesLookDownRFB = 15,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_LEFT_L_FB")]
+ EyesLookLeftLFB = 16,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_LEFT_R_FB")]
+ EyesLookLeftRFB = 17,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_RIGHT_L_FB")]
+ EyesLookRightLFB = 18,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_RIGHT_R_FB")]
+ EyesLookRightRFB = 19,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_UP_L_FB")]
+ EyesLookUpLFB = 20,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_EYES_LOOK_UP_R_FB")]
+ EyesLookUpRFB = 21,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_INNER_BROW_RAISER_L_FB")]
+ InnerBrowRaiserLFB = 22,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_INNER_BROW_RAISER_R_FB")]
+ InnerBrowRaiserRFB = 23,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_JAW_DROP_FB")]
+ JawDropFB = 24,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_JAW_SIDEWAYS_LEFT_FB")]
+ JawSidewaysLeftFB = 25,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_JAW_SIDEWAYS_RIGHT_FB")]
+ JawSidewaysRightFB = 26,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_JAW_THRUST_FB")]
+ JawThrustFB = 27,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LID_TIGHTENER_L_FB")]
+ LidTightenerLFB = 28,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LID_TIGHTENER_R_FB")]
+ LidTightenerRFB = 29,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_CORNER_DEPRESSOR_L_FB")]
+ LipCornerDepressorLFB = 30,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_CORNER_DEPRESSOR_R_FB")]
+ LipCornerDepressorRFB = 31,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_CORNER_PULLER_L_FB")]
+ LipCornerPullerLFB = 32,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_CORNER_PULLER_R_FB")]
+ LipCornerPullerRFB = 33,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_FUNNELER_LB_FB")]
+ LipFunnelerLBFB = 34,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_FUNNELER_LT_FB")]
+ LipFunnelerLTFB = 35,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_FUNNELER_RB_FB")]
+ LipFunnelerRBFB = 36,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_FUNNELER_RT_FB")]
+ LipFunnelerRTFB = 37,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_PRESSOR_L_FB")]
+ LipPressorLFB = 38,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_PRESSOR_R_FB")]
+ LipPressorRFB = 39,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_PUCKER_L_FB")]
+ LipPuckerLFB = 40,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_PUCKER_R_FB")]
+ LipPuckerRFB = 41,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_STRETCHER_L_FB")]
+ LipStretcherLFB = 42,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_STRETCHER_R_FB")]
+ LipStretcherRFB = 43,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_SUCK_LB_FB")]
+ LipSuckLBFB = 44,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_SUCK_LT_FB")]
+ LipSuckLTFB = 45,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_SUCK_RB_FB")]
+ LipSuckRBFB = 46,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_SUCK_RT_FB")]
+ LipSuckRTFB = 47,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_TIGHTENER_L_FB")]
+ LipTightenerLFB = 48,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIP_TIGHTENER_R_FB")]
+ LipTightenerRFB = 49,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LIPS_TOWARD_FB")]
+ LipsTowardFB = 50,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LOWER_LIP_DEPRESSOR_L_FB")]
+ LowerLipDepressorLFB = 51,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_LOWER_LIP_DEPRESSOR_R_FB")]
+ LowerLipDepressorRFB = 52,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_MOUTH_LEFT_FB")]
+ MouthLeftFB = 53,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_MOUTH_RIGHT_FB")]
+ MouthRightFB = 54,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_NOSE_WRINKLER_L_FB")]
+ NoseWrinklerLFB = 55,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_NOSE_WRINKLER_R_FB")]
+ NoseWrinklerRFB = 56,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_OUTER_BROW_RAISER_L_FB")]
+ OuterBrowRaiserLFB = 57,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_OUTER_BROW_RAISER_R_FB")]
+ OuterBrowRaiserRFB = 58,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_UPPER_LID_RAISER_L_FB")]
+ UpperLidRaiserLFB = 59,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_UPPER_LID_RAISER_R_FB")]
+ UpperLidRaiserRFB = 60,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_UPPER_LIP_RAISER_L_FB")]
+ UpperLipRaiserLFB = 61,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_UPPER_LIP_RAISER_R_FB")]
+ UpperLipRaiserRFB = 62,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_TONGUE_TIP_INTERDENTAL_FB")]
+ TongueTipInterdentalFB = 63,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_TONGUE_TIP_ALVEOLAR_FB")]
+ TongueTipAlveolarFB = 64,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_TONGUE_FRONT_DORSAL_PALATE_FB")]
+ TongueFrontDorsalPalateFB = 65,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_TONGUE_MID_DORSAL_PALATE_FB")]
+ TongueMidDorsalPalateFB = 66,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_TONGUE_BACK_DORSAL_VELAR_FB")]
+ TongueBackDorsalVelarFB = 67,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_TONGUE_OUT_FB")]
+ TongueOutFB = 68,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_TONGUE_RETREAT_FB")]
+ TongueRetreatFB = 69,
+ [NativeName("Name", "XR_FACE_EXPRESSION2_COUNT_FB")]
+ CountFB = 70,
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/FaceExpressionSet2FB.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/FaceExpressionSet2FB.gen.cs
new file mode 100644
index 0000000000..5434d4f160
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/FaceExpressionSet2FB.gen.cs
@@ -0,0 +1,21 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using Silk.NET.Core.Attributes;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFaceExpressionSet2FB")]
+ public enum FaceExpressionSet2FB : int
+ {
+ [Obsolete("Deprecated in favour of \"DefaultFB\"")]
+ [NativeName("Name", "XR_FACE_EXPRESSION_SET2_DEFAULT_FB")]
+ FaceExpressionSet2DefaultFB = 0,
+ [NativeName("Name", "XR_FACE_EXPRESSION_SET2_DEFAULT_FB")]
+ DefaultFB = 0,
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/FaceTrackingDataSource2FB.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/FaceTrackingDataSource2FB.gen.cs
new file mode 100644
index 0000000000..6f1885666b
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/FaceTrackingDataSource2FB.gen.cs
@@ -0,0 +1,26 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using Silk.NET.Core.Attributes;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFaceTrackingDataSource2FB")]
+ public enum FaceTrackingDataSource2FB : int
+ {
+ [Obsolete("Deprecated in favour of \"VisualFB\"")]
+ [NativeName("Name", "XR_FACE_TRACKING_DATA_SOURCE2_VISUAL_FB")]
+ FaceTrackingDataSource2VisualFB = 0,
+ [Obsolete("Deprecated in favour of \"AudioFB\"")]
+ [NativeName("Name", "XR_FACE_TRACKING_DATA_SOURCE2_AUDIO_FB")]
+ FaceTrackingDataSource2AudioFB = 1,
+ [NativeName("Name", "XR_FACE_TRACKING_DATA_SOURCE2_VISUAL_FB")]
+ VisualFB = 0,
+ [NativeName("Name", "XR_FACE_TRACKING_DATA_SOURCE2_AUDIO_FB")]
+ AudioFB = 1,
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/FutureStateEXT.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/FutureStateEXT.gen.cs
new file mode 100644
index 0000000000..675f3afeb2
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/FutureStateEXT.gen.cs
@@ -0,0 +1,26 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using Silk.NET.Core.Attributes;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFutureStateEXT")]
+ public enum FutureStateEXT : int
+ {
+ [Obsolete("Deprecated in favour of \"PendingExt\"")]
+ [NativeName("Name", "XR_FUTURE_STATE_PENDING_EXT")]
+ FutureStatePendingExt = 1,
+ [Obsolete("Deprecated in favour of \"ReadyExt\"")]
+ [NativeName("Name", "XR_FUTURE_STATE_READY_EXT")]
+ FutureStateReadyExt = 2,
+ [NativeName("Name", "XR_FUTURE_STATE_PENDING_EXT")]
+ PendingExt = 1,
+ [NativeName("Name", "XR_FUTURE_STATE_READY_EXT")]
+ ReadyExt = 2,
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/LoaderInterfaceStructs.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/LoaderInterfaceStructs.gen.cs
new file mode 100644
index 0000000000..530953a484
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/LoaderInterfaceStructs.gen.cs
@@ -0,0 +1,46 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using Silk.NET.Core.Attributes;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrLoaderInterfaceStructs")]
+ public enum LoaderInterfaceStructs : int
+ {
+ [Obsolete("Deprecated in favour of \"Unintialized\"")]
+ [NativeName("Name", "XR_LOADER_INTERFACE_STRUCT_UNINTIALIZED")]
+ LoaderInterfaceStructUnintialized = 0,
+ [Obsolete("Deprecated in favour of \"LoaderInfo\"")]
+ [NativeName("Name", "XR_LOADER_INTERFACE_STRUCT_LOADER_INFO")]
+ LoaderInterfaceStructLoaderInfo = 1,
+ [Obsolete("Deprecated in favour of \"ApiLayerRequest\"")]
+ [NativeName("Name", "XR_LOADER_INTERFACE_STRUCT_API_LAYER_REQUEST")]
+ LoaderInterfaceStructApiLayerRequest = 2,
+ [Obsolete("Deprecated in favour of \"RuntimeRequest\"")]
+ [NativeName("Name", "XR_LOADER_INTERFACE_STRUCT_RUNTIME_REQUEST")]
+ LoaderInterfaceStructRuntimeRequest = 3,
+ [Obsolete("Deprecated in favour of \"ApiLayerCreateInfo\"")]
+ [NativeName("Name", "XR_LOADER_INTERFACE_STRUCT_API_LAYER_CREATE_INFO")]
+ LoaderInterfaceStructApiLayerCreateInfo = 4,
+ [Obsolete("Deprecated in favour of \"ApiLayerNextInfo\"")]
+ [NativeName("Name", "XR_LOADER_INTERFACE_STRUCT_API_LAYER_NEXT_INFO")]
+ LoaderInterfaceStructApiLayerNextInfo = 5,
+ [NativeName("Name", "XR_LOADER_INTERFACE_STRUCT_UNINTIALIZED")]
+ Unintialized = 0,
+ [NativeName("Name", "XR_LOADER_INTERFACE_STRUCT_LOADER_INFO")]
+ LoaderInfo = 1,
+ [NativeName("Name", "XR_LOADER_INTERFACE_STRUCT_API_LAYER_REQUEST")]
+ ApiLayerRequest = 2,
+ [NativeName("Name", "XR_LOADER_INTERFACE_STRUCT_RUNTIME_REQUEST")]
+ RuntimeRequest = 3,
+ [NativeName("Name", "XR_LOADER_INTERFACE_STRUCT_API_LAYER_CREATE_INFO")]
+ ApiLayerCreateInfo = 4,
+ [NativeName("Name", "XR_LOADER_INTERFACE_STRUCT_API_LAYER_NEXT_INFO")]
+ ApiLayerNextInfo = 5,
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/ObjectType.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/ObjectType.gen.cs
index 25fe80e984..6dea0b5f0d 100644
--- a/src/OpenXR/Silk.NET.OpenXR/Enums/ObjectType.gen.cs
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/ObjectType.gen.cs
@@ -68,6 +68,12 @@ public enum ObjectType : int
SpaceUserFB = 1000241000,
[NativeName("Name", "XR_OBJECT_TYPE_PASSTHROUGH_COLOR_LUT_META")]
PassthroughColorLutMeta = 1000266000,
+ [NativeName("Name", "XR_OBJECT_TYPE_FACE_TRACKER2_FB")]
+ FaceTracker2FB = 1000287012,
+ [NativeName("Name", "XR_OBJECT_TYPE_ENVIRONMENT_DEPTH_PROVIDER_META")]
+ EnvironmentDepthProviderMeta = 1000291000,
+ [NativeName("Name", "XR_OBJECT_TYPE_ENVIRONMENT_DEPTH_SWAPCHAIN_META")]
+ EnvironmentDepthSwapchainMeta = 1000291001,
[NativeName("Name", "XR_OBJECT_TYPE_PASSTHROUGH_HTC")]
PassthroughHtc = 1000317000,
[NativeName("Name", "XR_OBJECT_TYPE_PLANE_DETECTOR_EXT")]
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/ReferenceSpaceType.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/ReferenceSpaceType.gen.cs
index 7ed33c7e6c..7dc6e48a28 100644
--- a/src/OpenXR/Silk.NET.OpenXR/Enums/ReferenceSpaceType.gen.cs
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/ReferenceSpaceType.gen.cs
@@ -26,5 +26,7 @@ public enum ReferenceSpaceType : int
LocalizationMapML = 1000139000,
[NativeName("Name", "XR_REFERENCE_SPACE_TYPE_LOCAL_FLOOR_EXT")]
LocalFloorExt = 1000426000,
+ [NativeName("Name", "XR_REFERENCE_SPACE_TYPE_LOCAL_FLOOR")]
+ LocalFloor = 1000426000,
}
}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/Result.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/Result.gen.cs
index 5d6cf880da..23680447ba 100644
--- a/src/OpenXR/Silk.NET.OpenXR/Enums/Result.gen.cs
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/Result.gen.cs
@@ -220,6 +220,8 @@ public enum Result : int
ErrorSpaceCloudStorageDisabledFB = unchecked((int) -1000169004),
[NativeName("Name", "XR_ERROR_PASSTHROUGH_COLOR_LUT_BUFFER_SIZE_MISMATCH_META")]
ErrorPassthroughColorLutBufferSizeMismatchMeta = unchecked((int) -1000266000),
+ [NativeName("Name", "XR_ENVIRONMENT_DEPTH_NOT_AVAILABLE_META")]
+ EnvironmentDepthNotAvailableMeta = 1000291000,
[NativeName("Name", "XR_ERROR_HINT_ALREADY_SET_QCOM")]
ErrorHintAlreadySetQCom = unchecked((int) -1000306000),
[NativeName("Name", "XR_ERROR_NOT_AN_ANCHOR_HTC")]
@@ -228,5 +230,17 @@ public enum Result : int
ErrorSpaceNotLocatableExt = unchecked((int) -1000429000),
[NativeName("Name", "XR_ERROR_PLANE_DETECTION_PERMISSION_DENIED_EXT")]
ErrorPlaneDetectionPermissionDeniedExt = unchecked((int) -1000429001),
+ [NativeName("Name", "XR_ERROR_FUTURE_PENDING_EXT")]
+ ErrorFuturePendingExt = unchecked((int) -1000469001),
+ [NativeName("Name", "XR_ERROR_FUTURE_INVALID_EXT")]
+ ErrorFutureInvalidExt = unchecked((int) -1000469002),
+ [NativeName("Name", "XR_ERROR_EXTENSION_DEPENDENCY_NOT_ENABLED_KHR")]
+ ErrorExtensionDependencyNotEnabledKhr = unchecked((int) -1000710001),
+ [NativeName("Name", "XR_ERROR_PERMISSION_INSUFFICIENT_KHR")]
+ ErrorPermissionInsufficientKhr = unchecked((int) -1000710000),
+ [NativeName("Name", "XR_ERROR_EXTENSION_DEPENDENCY_NOT_ENABLED")]
+ ErrorExtensionDependencyNotEnabled = unchecked((int) -1000710001),
+ [NativeName("Name", "XR_ERROR_PERMISSION_INSUFFICIENT")]
+ ErrorPermissionInsufficient = unchecked((int) -1000710000),
}
}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/SemanticLabelsSupportFlagsFB.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/SemanticLabelsSupportFlagsFB.gen.cs
index 70c930d2f9..b42d1ff87d 100644
--- a/src/OpenXR/Silk.NET.OpenXR/Enums/SemanticLabelsSupportFlagsFB.gen.cs
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/SemanticLabelsSupportFlagsFB.gen.cs
@@ -21,9 +21,14 @@ public enum SemanticLabelsSupportFlagsFB : long
[Obsolete("Deprecated in favour of \"AcceptDeskToTableMigrationBitFB\"")]
[NativeName("Name", "XR_SEMANTIC_LABELS_SUPPORT_ACCEPT_DESK_TO_TABLE_MIGRATION_BIT_FB")]
SemanticLabelsSupportAcceptDeskToTableMigrationBitFB = 2,
+ [Obsolete("Deprecated in favour of \"AcceptInvisibleWallFaceBitFB\"")]
+ [NativeName("Name", "XR_SEMANTIC_LABELS_SUPPORT_ACCEPT_INVISIBLE_WALL_FACE_BIT_FB")]
+ SemanticLabelsSupportAcceptInvisibleWallFaceBitFB = 4,
[NativeName("Name", "XR_SEMANTIC_LABELS_SUPPORT_MULTIPLE_SEMANTIC_LABELS_BIT_FB")]
MultipleSemanticLabelsBitFB = 1,
[NativeName("Name", "XR_SEMANTIC_LABELS_SUPPORT_ACCEPT_DESK_TO_TABLE_MIGRATION_BIT_FB")]
AcceptDeskToTableMigrationBitFB = 2,
+ [NativeName("Name", "XR_SEMANTIC_LABELS_SUPPORT_ACCEPT_INVISIBLE_WALL_FACE_BIT_FB")]
+ AcceptInvisibleWallFaceBitFB = 4,
}
}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/SpaceComponentTypeFB.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/SpaceComponentTypeFB.gen.cs
index f0c0e51aa7..544ba01886 100644
--- a/src/OpenXR/Silk.NET.OpenXR/Enums/SpaceComponentTypeFB.gen.cs
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/SpaceComponentTypeFB.gen.cs
@@ -36,6 +36,9 @@ public enum SpaceComponentTypeFB : int
[Obsolete("Deprecated in favour of \"SpaceContainerFB\"")]
[NativeName("Name", "XR_SPACE_COMPONENT_TYPE_SPACE_CONTAINER_FB")]
SpaceComponentTypeSpaceContainerFB = 7,
+ [Obsolete("Deprecated in favour of \"TriangleMeshMeta\"")]
+ [NativeName("Name", "XR_SPACE_COMPONENT_TYPE_TRIANGLE_MESH_META")]
+ SpaceComponentTypeTriangleMeshMeta = 1000269000,
[NativeName("Name", "XR_SPACE_COMPONENT_TYPE_LOCATABLE_FB")]
LocatableFB = 0,
[NativeName("Name", "XR_SPACE_COMPONENT_TYPE_STORABLE_FB")]
@@ -52,5 +55,7 @@ public enum SpaceComponentTypeFB : int
RoomLayoutFB = 6,
[NativeName("Name", "XR_SPACE_COMPONENT_TYPE_SPACE_CONTAINER_FB")]
SpaceContainerFB = 7,
+ [NativeName("Name", "XR_SPACE_COMPONENT_TYPE_TRIANGLE_MESH_META")]
+ TriangleMeshMeta = 1000269000,
}
}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/StructureType.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/StructureType.gen.cs
index 23f8fe2e47..f6ced89c9a 100644
--- a/src/OpenXR/Silk.NET.OpenXR/Enums/StructureType.gen.cs
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/StructureType.gen.cs
@@ -930,6 +930,12 @@ public enum StructureType : int
[Obsolete("Deprecated in favour of \"SystemHeadsetIDPropertiesMeta\"")]
[NativeName("Name", "XR_TYPE_SYSTEM_HEADSET_ID_PROPERTIES_META")]
TypeSystemHeadsetIDPropertiesMeta = 1000245000,
+ [Obsolete("Deprecated in favour of \"RecommendedLayerResolutionMeta\"")]
+ [NativeName("Name", "XR_TYPE_RECOMMENDED_LAYER_RESOLUTION_META")]
+ TypeRecommendedLayerResolutionMeta = 1000254000,
+ [Obsolete("Deprecated in favour of \"RecommendedLayerResolutionGetInfoMeta\"")]
+ [NativeName("Name", "XR_TYPE_RECOMMENDED_LAYER_RESOLUTION_GET_INFO_META")]
+ TypeRecommendedLayerResolutionGetInfoMeta = 1000254001,
[Obsolete("Deprecated in favour of \"SystemPassthroughColorLutPropertiesMeta\"")]
[NativeName("Name", "XR_TYPE_SYSTEM_PASSTHROUGH_COLOR_LUT_PROPERTIES_META")]
TypeSystemPassthroughColorLutPropertiesMeta = 1000266000,
@@ -945,6 +951,48 @@ public enum StructureType : int
[Obsolete("Deprecated in favour of \"PassthroughColorMapInterpolatedLutMeta\"")]
[NativeName("Name", "XR_TYPE_PASSTHROUGH_COLOR_MAP_INTERPOLATED_LUT_META")]
TypePassthroughColorMapInterpolatedLutMeta = 1000266101,
+ [Obsolete("Deprecated in favour of \"SpaceTriangleMeshGetInfoMeta\"")]
+ [NativeName("Name", "XR_TYPE_SPACE_TRIANGLE_MESH_GET_INFO_META")]
+ TypeSpaceTriangleMeshGetInfoMeta = 1000269001,
+ [Obsolete("Deprecated in favour of \"SpaceTriangleMeshMeta\"")]
+ [NativeName("Name", "XR_TYPE_SPACE_TRIANGLE_MESH_META")]
+ TypeSpaceTriangleMeshMeta = 1000269002,
+ [Obsolete("Deprecated in favour of \"SystemFaceTrackingProperties2FB\"")]
+ [NativeName("Name", "XR_TYPE_SYSTEM_FACE_TRACKING_PROPERTIES2_FB")]
+ TypeSystemFaceTrackingProperties2FB = 1000287013,
+ [Obsolete("Deprecated in favour of \"FaceTrackerCreateInfo2FB\"")]
+ [NativeName("Name", "XR_TYPE_FACE_TRACKER_CREATE_INFO2_FB")]
+ TypeFaceTrackerCreateInfo2FB = 1000287014,
+ [Obsolete("Deprecated in favour of \"FaceExpressionInfo2FB\"")]
+ [NativeName("Name", "XR_TYPE_FACE_EXPRESSION_INFO2_FB")]
+ TypeFaceExpressionInfo2FB = 1000287015,
+ [Obsolete("Deprecated in favour of \"FaceExpressionWeights2FB\"")]
+ [NativeName("Name", "XR_TYPE_FACE_EXPRESSION_WEIGHTS2_FB")]
+ TypeFaceExpressionWeights2FB = 1000287016,
+ [Obsolete("Deprecated in favour of \"EnvironmentDepthProviderCreateInfoMeta\"")]
+ [NativeName("Name", "XR_TYPE_ENVIRONMENT_DEPTH_PROVIDER_CREATE_INFO_META")]
+ TypeEnvironmentDepthProviderCreateInfoMeta = 1000291000,
+ [Obsolete("Deprecated in favour of \"EnvironmentDepthSwapchainCreateInfoMeta\"")]
+ [NativeName("Name", "XR_TYPE_ENVIRONMENT_DEPTH_SWAPCHAIN_CREATE_INFO_META")]
+ TypeEnvironmentDepthSwapchainCreateInfoMeta = 1000291001,
+ [Obsolete("Deprecated in favour of \"EnvironmentDepthSwapchainStateMeta\"")]
+ [NativeName("Name", "XR_TYPE_ENVIRONMENT_DEPTH_SWAPCHAIN_STATE_META")]
+ TypeEnvironmentDepthSwapchainStateMeta = 1000291002,
+ [Obsolete("Deprecated in favour of \"EnvironmentDepthImageAcquireInfoMeta\"")]
+ [NativeName("Name", "XR_TYPE_ENVIRONMENT_DEPTH_IMAGE_ACQUIRE_INFO_META")]
+ TypeEnvironmentDepthImageAcquireInfoMeta = 1000291003,
+ [Obsolete("Deprecated in favour of \"EnvironmentDepthImageViewMeta\"")]
+ [NativeName("Name", "XR_TYPE_ENVIRONMENT_DEPTH_IMAGE_VIEW_META")]
+ TypeEnvironmentDepthImageViewMeta = 1000291004,
+ [Obsolete("Deprecated in favour of \"EnvironmentDepthImageMeta\"")]
+ [NativeName("Name", "XR_TYPE_ENVIRONMENT_DEPTH_IMAGE_META")]
+ TypeEnvironmentDepthImageMeta = 1000291005,
+ [Obsolete("Deprecated in favour of \"EnvironmentDepthHandRemovalSetInfoMeta\"")]
+ [NativeName("Name", "XR_TYPE_ENVIRONMENT_DEPTH_HAND_REMOVAL_SET_INFO_META")]
+ TypeEnvironmentDepthHandRemovalSetInfoMeta = 1000291006,
+ [Obsolete("Deprecated in favour of \"SystemEnvironmentDepthPropertiesMeta\"")]
+ [NativeName("Name", "XR_TYPE_SYSTEM_ENVIRONMENT_DEPTH_PROPERTIES_META")]
+ TypeSystemEnvironmentDepthPropertiesMeta = 1000291007,
[Obsolete("Deprecated in favour of \"PassthroughCreateInfoHtc\"")]
[NativeName("Name", "XR_TYPE_PASSTHROUGH_CREATE_INFO_HTC")]
TypePassthroughCreateInfoHtc = 1000317001,
@@ -1008,6 +1056,42 @@ public enum StructureType : int
[Obsolete("Deprecated in favour of \"SystemPlaneDetectionPropertiesExt\"")]
[NativeName("Name", "XR_TYPE_SYSTEM_PLANE_DETECTION_PROPERTIES_EXT")]
TypeSystemPlaneDetectionPropertiesExt = 1000429007,
+ [Obsolete("Deprecated in favour of \"FutureCancelInfoExt\"")]
+ [NativeName("Name", "XR_TYPE_FUTURE_CANCEL_INFO_EXT")]
+ TypeFutureCancelInfoExt = 1000469000,
+ [Obsolete("Deprecated in favour of \"FuturePollInfoExt\"")]
+ [NativeName("Name", "XR_TYPE_FUTURE_POLL_INFO_EXT")]
+ TypeFuturePollInfoExt = 1000469001,
+ [Obsolete("Deprecated in favour of \"FutureCompletionExt\"")]
+ [NativeName("Name", "XR_TYPE_FUTURE_COMPLETION_EXT")]
+ TypeFutureCompletionExt = 1000469002,
+ [Obsolete("Deprecated in favour of \"FuturePollResultExt\"")]
+ [NativeName("Name", "XR_TYPE_FUTURE_POLL_RESULT_EXT")]
+ TypeFuturePollResultExt = 1000469003,
+ [Obsolete("Deprecated in favour of \"EventDataUserPresenceChangedExt\"")]
+ [NativeName("Name", "XR_TYPE_EVENT_DATA_USER_PRESENCE_CHANGED_EXT")]
+ TypeEventDataUserPresenceChangedExt = 1000470000,
+ [Obsolete("Deprecated in favour of \"SystemUserPresencePropertiesExt\"")]
+ [NativeName("Name", "XR_TYPE_SYSTEM_USER_PRESENCE_PROPERTIES_EXT")]
+ TypeSystemUserPresencePropertiesExt = 1000470001,
+ [Obsolete("Deprecated in favour of \"SpacesLocateInfoKhr\"")]
+ [NativeName("Name", "XR_TYPE_SPACES_LOCATE_INFO_KHR")]
+ TypeSpacesLocateInfoKhr = 1000471000,
+ [Obsolete("Deprecated in favour of \"SpaceLocationsKhr\"")]
+ [NativeName("Name", "XR_TYPE_SPACE_LOCATIONS_KHR")]
+ TypeSpaceLocationsKhr = 1000471001,
+ [Obsolete("Deprecated in favour of \"SpaceVelocitiesKhr\"")]
+ [NativeName("Name", "XR_TYPE_SPACE_VELOCITIES_KHR")]
+ TypeSpaceVelocitiesKhr = 1000471002,
+ [Obsolete("Deprecated in favour of \"SpacesLocateInfo\"")]
+ [NativeName("Name", "XR_TYPE_SPACES_LOCATE_INFO")]
+ TypeSpacesLocateInfo = 1000471000,
+ [Obsolete("Deprecated in favour of \"SpaceLocations\"")]
+ [NativeName("Name", "XR_TYPE_SPACE_LOCATIONS")]
+ TypeSpaceLocations = 1000471001,
+ [Obsolete("Deprecated in favour of \"SpaceVelocities\"")]
+ [NativeName("Name", "XR_TYPE_SPACE_VELOCITIES")]
+ TypeSpaceVelocities = 1000471002,
[NativeName("Name", "XR_TYPE_UNKNOWN")]
Unknown = 0,
[NativeName("Name", "XR_TYPE_API_LAYER_PROPERTIES")]
@@ -1620,6 +1704,10 @@ public enum StructureType : int
SpaceUserCreateInfoFB = 1000241001,
[NativeName("Name", "XR_TYPE_SYSTEM_HEADSET_ID_PROPERTIES_META")]
SystemHeadsetIDPropertiesMeta = 1000245000,
+ [NativeName("Name", "XR_TYPE_RECOMMENDED_LAYER_RESOLUTION_META")]
+ RecommendedLayerResolutionMeta = 1000254000,
+ [NativeName("Name", "XR_TYPE_RECOMMENDED_LAYER_RESOLUTION_GET_INFO_META")]
+ RecommendedLayerResolutionGetInfoMeta = 1000254001,
[NativeName("Name", "XR_TYPE_SYSTEM_PASSTHROUGH_COLOR_LUT_PROPERTIES_META")]
SystemPassthroughColorLutPropertiesMeta = 1000266000,
[NativeName("Name", "XR_TYPE_PASSTHROUGH_COLOR_LUT_CREATE_INFO_META")]
@@ -1630,6 +1718,34 @@ public enum StructureType : int
PassthroughColorMapLutMeta = 1000266100,
[NativeName("Name", "XR_TYPE_PASSTHROUGH_COLOR_MAP_INTERPOLATED_LUT_META")]
PassthroughColorMapInterpolatedLutMeta = 1000266101,
+ [NativeName("Name", "XR_TYPE_SPACE_TRIANGLE_MESH_GET_INFO_META")]
+ SpaceTriangleMeshGetInfoMeta = 1000269001,
+ [NativeName("Name", "XR_TYPE_SPACE_TRIANGLE_MESH_META")]
+ SpaceTriangleMeshMeta = 1000269002,
+ [NativeName("Name", "XR_TYPE_SYSTEM_FACE_TRACKING_PROPERTIES2_FB")]
+ SystemFaceTrackingProperties2FB = 1000287013,
+ [NativeName("Name", "XR_TYPE_FACE_TRACKER_CREATE_INFO2_FB")]
+ FaceTrackerCreateInfo2FB = 1000287014,
+ [NativeName("Name", "XR_TYPE_FACE_EXPRESSION_INFO2_FB")]
+ FaceExpressionInfo2FB = 1000287015,
+ [NativeName("Name", "XR_TYPE_FACE_EXPRESSION_WEIGHTS2_FB")]
+ FaceExpressionWeights2FB = 1000287016,
+ [NativeName("Name", "XR_TYPE_ENVIRONMENT_DEPTH_PROVIDER_CREATE_INFO_META")]
+ EnvironmentDepthProviderCreateInfoMeta = 1000291000,
+ [NativeName("Name", "XR_TYPE_ENVIRONMENT_DEPTH_SWAPCHAIN_CREATE_INFO_META")]
+ EnvironmentDepthSwapchainCreateInfoMeta = 1000291001,
+ [NativeName("Name", "XR_TYPE_ENVIRONMENT_DEPTH_SWAPCHAIN_STATE_META")]
+ EnvironmentDepthSwapchainStateMeta = 1000291002,
+ [NativeName("Name", "XR_TYPE_ENVIRONMENT_DEPTH_IMAGE_ACQUIRE_INFO_META")]
+ EnvironmentDepthImageAcquireInfoMeta = 1000291003,
+ [NativeName("Name", "XR_TYPE_ENVIRONMENT_DEPTH_IMAGE_VIEW_META")]
+ EnvironmentDepthImageViewMeta = 1000291004,
+ [NativeName("Name", "XR_TYPE_ENVIRONMENT_DEPTH_IMAGE_META")]
+ EnvironmentDepthImageMeta = 1000291005,
+ [NativeName("Name", "XR_TYPE_ENVIRONMENT_DEPTH_HAND_REMOVAL_SET_INFO_META")]
+ EnvironmentDepthHandRemovalSetInfoMeta = 1000291006,
+ [NativeName("Name", "XR_TYPE_SYSTEM_ENVIRONMENT_DEPTH_PROPERTIES_META")]
+ SystemEnvironmentDepthPropertiesMeta = 1000291007,
[NativeName("Name", "XR_TYPE_PASSTHROUGH_CREATE_INFO_HTC")]
PassthroughCreateInfoHtc = 1000317001,
[NativeName("Name", "XR_TYPE_PASSTHROUGH_COLOR_HTC")]
@@ -1672,5 +1788,29 @@ public enum StructureType : int
PlaneDetectorPolygonBufferExt = 1000429006,
[NativeName("Name", "XR_TYPE_SYSTEM_PLANE_DETECTION_PROPERTIES_EXT")]
SystemPlaneDetectionPropertiesExt = 1000429007,
+ [NativeName("Name", "XR_TYPE_FUTURE_CANCEL_INFO_EXT")]
+ FutureCancelInfoExt = 1000469000,
+ [NativeName("Name", "XR_TYPE_FUTURE_POLL_INFO_EXT")]
+ FuturePollInfoExt = 1000469001,
+ [NativeName("Name", "XR_TYPE_FUTURE_COMPLETION_EXT")]
+ FutureCompletionExt = 1000469002,
+ [NativeName("Name", "XR_TYPE_FUTURE_POLL_RESULT_EXT")]
+ FuturePollResultExt = 1000469003,
+ [NativeName("Name", "XR_TYPE_EVENT_DATA_USER_PRESENCE_CHANGED_EXT")]
+ EventDataUserPresenceChangedExt = 1000470000,
+ [NativeName("Name", "XR_TYPE_SYSTEM_USER_PRESENCE_PROPERTIES_EXT")]
+ SystemUserPresencePropertiesExt = 1000470001,
+ [NativeName("Name", "XR_TYPE_SPACES_LOCATE_INFO_KHR")]
+ SpacesLocateInfoKhr = 1000471000,
+ [NativeName("Name", "XR_TYPE_SPACE_LOCATIONS_KHR")]
+ SpaceLocationsKhr = 1000471001,
+ [NativeName("Name", "XR_TYPE_SPACE_VELOCITIES_KHR")]
+ SpaceVelocitiesKhr = 1000471002,
+ [NativeName("Name", "XR_TYPE_SPACES_LOCATE_INFO")]
+ SpacesLocateInfo = 1000471000,
+ [NativeName("Name", "XR_TYPE_SPACE_LOCATIONS")]
+ SpaceLocations = 1000471001,
+ [NativeName("Name", "XR_TYPE_SPACE_VELOCITIES")]
+ SpaceVelocities = 1000471002,
}
}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Enums/ViewConfigurationType.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Enums/ViewConfigurationType.gen.cs
index 63897c32e2..062b7f2ced 100644
--- a/src/OpenXR/Silk.NET.OpenXR/Enums/ViewConfigurationType.gen.cs
+++ b/src/OpenXR/Silk.NET.OpenXR/Enums/ViewConfigurationType.gen.cs
@@ -23,5 +23,7 @@ public enum ViewConfigurationType : int
PrimaryQuadVarjo = 1000037000,
[NativeName("Name", "XR_VIEW_CONFIGURATION_TYPE_SECONDARY_MONO_FIRST_PERSON_OBSERVER_MSFT")]
SecondaryMonoFirstPersonObserverMsft = 1000054000,
+ [NativeName("Name", "XR_VIEW_CONFIGURATION_TYPE_PRIMARY_STEREO_WITH_FOVEATED_INSET")]
+ PrimaryStereoWithFoveatedInset = 1000037000,
}
}
diff --git a/src/OpenXR/Silk.NET.OpenXR/GetInstanceProcAddrProc.cs b/src/OpenXR/Silk.NET.OpenXR/GetInstanceProcAddrProc.cs
new file mode 100644
index 0000000000..af9c55f515
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/GetInstanceProcAddrProc.cs
@@ -0,0 +1,6 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+namespace Silk.NET.OpenXR;
+
+public unsafe delegate nint GetInstanceProcAddrProc(Instance instance, byte* proc);
diff --git a/src/OpenXR/Silk.NET.OpenXR/PfnCreateApiLayerInstance.cs b/src/OpenXR/Silk.NET.OpenXR/PfnCreateApiLayerInstance.cs
new file mode 100644
index 0000000000..c07bbec6df
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/PfnCreateApiLayerInstance.cs
@@ -0,0 +1,40 @@
+using System;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+
+namespace Silk.NET.OpenXR
+{
+ public readonly unsafe struct PfnCreateApiLayerInstance : IDisposable
+ {
+ private readonly void* _handle;
+
+ public delegate* unmanaged[Cdecl] Handle =>
+ (delegate* unmanaged[Cdecl]) _handle;
+
+ public PfnCreateApiLayerInstance
+ (
+ delegate* unmanaged[Cdecl] ptr
+ ) => _handle = ptr;
+
+ public void Dispose() => SilkMarshal.Free((nint) _handle);
+ public static implicit operator nint(PfnCreateApiLayerInstance pfn) => (nint) pfn.Handle;
+
+ public PfnCreateApiLayerInstance(CreateApiLayerInstanceProc func) => _handle =
+ (delegate* unmanaged[Cdecl]) SilkMarshal.DelegateToPtr(func);
+
+ public static implicit operator delegate* unmanaged[Cdecl]
+ (PfnCreateApiLayerInstance pfn) => pfn.Handle;
+
+ public static implicit operator PfnCreateApiLayerInstance
+ (
+ delegate* unmanaged[Cdecl] func
+ ) => new(func);
+
+ public static implicit operator PfnCreateApiLayerInstance
+ (CreateApiLayerInstanceProc func) => new(func);
+
+ public static explicit operator CreateApiLayerInstanceProc
+ (PfnCreateApiLayerInstance pfn) => SilkMarshal.PtrToDelegate
+ ((nint) pfn.Handle);
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/PfnGetInstanceProcAddr.cs b/src/OpenXR/Silk.NET.OpenXR/PfnGetInstanceProcAddr.cs
new file mode 100644
index 0000000000..e7bcac8bc9
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/PfnGetInstanceProcAddr.cs
@@ -0,0 +1,40 @@
+using System;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+
+namespace Silk.NET.OpenXR
+{
+ public readonly unsafe struct PfnGetInstanceProcAddr : IDisposable
+ {
+ private readonly void* _handle;
+
+ public delegate* unmanaged[Cdecl] Handle =>
+ (delegate* unmanaged[Cdecl]) _handle;
+
+ public PfnGetInstanceProcAddr
+ (
+ delegate* unmanaged[Cdecl] ptr
+ ) => _handle = ptr;
+
+ public void Dispose() => SilkMarshal.Free((nint) _handle);
+ public static implicit operator nint(PfnGetInstanceProcAddr pfn) => (nint) pfn.Handle;
+
+ public PfnGetInstanceProcAddr(GetInstanceProcAddrProc func) => _handle =
+ (delegate* unmanaged[Cdecl]) SilkMarshal.DelegateToPtr(func);
+
+ public static implicit operator delegate* unmanaged[Cdecl]
+ (PfnGetInstanceProcAddr pfn) => pfn.Handle;
+
+ public static implicit operator PfnGetInstanceProcAddr
+ (
+ delegate* unmanaged[Cdecl] func
+ ) => new(func);
+
+ public static implicit operator PfnGetInstanceProcAddr
+ (GetInstanceProcAddrProc func) => new(func);
+
+ public static explicit operator GetInstanceProcAddrProc
+ (PfnGetInstanceProcAddr pfn) => SilkMarshal.PtrToDelegate
+ ((nint) pfn.Handle);
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/ApiLayerCreateInfo.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/ApiLayerCreateInfo.gen.cs
new file mode 100644
index 0000000000..0a67aff643
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/ApiLayerCreateInfo.gen.cs
@@ -0,0 +1,88 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrApiLayerCreateInfo")]
+ public unsafe partial struct ApiLayerCreateInfo
+ {
+ public ApiLayerCreateInfo
+ (
+ LoaderInterfaceStructs? structType = null,
+ uint? structVersion = null,
+ nuint? structSize = null,
+ void* loaderInstance = null,
+ ApiLayerNextInfo* nextInfo = null
+ ) : this()
+ {
+ if (structType is not null)
+ {
+ StructType = structType.Value;
+ }
+
+ if (structVersion is not null)
+ {
+ StructVersion = structVersion.Value;
+ }
+
+ if (structSize is not null)
+ {
+ StructSize = structSize.Value;
+ }
+
+ if (loaderInstance is not null)
+ {
+ LoaderInstance = loaderInstance;
+ }
+
+ if (nextInfo is not null)
+ {
+ NextInfo = nextInfo;
+ }
+ }
+
+///
+ [NativeName("Type", "XrLoaderInterfaceStructs")]
+ [NativeName("Type.Name", "XrLoaderInterfaceStructs")]
+ [NativeName("Name", "structType")]
+ public LoaderInterfaceStructs StructType;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "structVersion")]
+ public uint StructVersion;
+///
+ [NativeName("Type", "size_t")]
+ [NativeName("Type.Name", "size_t")]
+ [NativeName("Name", "structSize")]
+ public nuint StructSize;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "loaderInstance")]
+ public void* LoaderInstance;
+ ///
+ [NativeName("Type", "char")]
+ [NativeName("Type.Name", "char")]
+ [NativeName("Name", "settings_file_location")]
+ public fixed byte SettingsFileLocation[512];
+///
+ [NativeName("Type", "XrApiLayerNextInfo*")]
+ [NativeName("Type.Name", "XrApiLayerNextInfo")]
+ [NativeName("Name", "nextInfo")]
+ public ApiLayerNextInfo* NextInfo;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/ApiLayerNextInfo.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/ApiLayerNextInfo.gen.cs
new file mode 100644
index 0000000000..1dbd5e9e18
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/ApiLayerNextInfo.gen.cs
@@ -0,0 +1,99 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrApiLayerNextInfo")]
+ public unsafe partial struct ApiLayerNextInfo
+ {
+ public ApiLayerNextInfo
+ (
+ LoaderInterfaceStructs? structType = null,
+ uint? structVersion = null,
+ nuint? structSize = null,
+ PfnGetInstanceProcAddr? nextGetInstanceProcAddr = null,
+ PfnCreateApiLayerInstance? nextCreateApiLayerInstance = null,
+ ApiLayerNextInfo* next = null
+ ) : this()
+ {
+ if (structType is not null)
+ {
+ StructType = structType.Value;
+ }
+
+ if (structVersion is not null)
+ {
+ StructVersion = structVersion.Value;
+ }
+
+ if (structSize is not null)
+ {
+ StructSize = structSize.Value;
+ }
+
+ if (nextGetInstanceProcAddr is not null)
+ {
+ NextGetInstanceProcAddr = nextGetInstanceProcAddr.Value;
+ }
+
+ if (nextCreateApiLayerInstance is not null)
+ {
+ NextCreateApiLayerInstance = nextCreateApiLayerInstance.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+ }
+
+///
+ [NativeName("Type", "XrLoaderInterfaceStructs")]
+ [NativeName("Type.Name", "XrLoaderInterfaceStructs")]
+ [NativeName("Name", "structType")]
+ public LoaderInterfaceStructs StructType;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "structVersion")]
+ public uint StructVersion;
+///
+ [NativeName("Type", "size_t")]
+ [NativeName("Type.Name", "size_t")]
+ [NativeName("Name", "structSize")]
+ public nuint StructSize;
+ ///
+ [NativeName("Type", "char")]
+ [NativeName("Type.Name", "char")]
+ [NativeName("Name", "layerName")]
+ public fixed byte LayerName[256];
+///
+ [NativeName("Type", "PFN_xrGetInstanceProcAddr")]
+ [NativeName("Type.Name", "PFN_xrGetInstanceProcAddr")]
+ [NativeName("Name", "nextGetInstanceProcAddr")]
+ public PfnGetInstanceProcAddr NextGetInstanceProcAddr;
+///
+ [NativeName("Type", "PFN_xrCreateApiLayerInstance")]
+ [NativeName("Type.Name", "PFN_xrCreateApiLayerInstance")]
+ [NativeName("Name", "nextCreateApiLayerInstance")]
+ public PfnCreateApiLayerInstance NextCreateApiLayerInstance;
+///
+ [NativeName("Type", "XrApiLayerNextInfo*")]
+ [NativeName("Type.Name", "XrApiLayerNextInfo")]
+ [NativeName("Name", "next")]
+ public ApiLayerNextInfo* Next;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/Boxf.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/Boxf.gen.cs
new file mode 100644
index 0000000000..0b6068c211
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/Boxf.gen.cs
@@ -0,0 +1,51 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrBoxf")]
+ [NativeName("Aliases", "XrBoxfKHR")]
+ public unsafe partial struct Boxf
+ {
+ public Boxf
+ (
+ Posef? center = null,
+ Extent3Df? extents = null
+ ) : this()
+ {
+ if (center is not null)
+ {
+ Center = center.Value;
+ }
+
+ if (extents is not null)
+ {
+ Extents = extents.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrPosef")]
+ [NativeName("Type.Name", "XrPosef")]
+ [NativeName("Name", "center")]
+ public Posef Center;
+///
+ [NativeName("Type", "XrExtent3Df")]
+ [NativeName("Type.Name", "XrExtent3Df")]
+ [NativeName("Name", "extents")]
+ public Extent3Df Extents;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/BoxfKHR.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/BoxfKHR.gen.cs
new file mode 100644
index 0000000000..164594d9db
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/BoxfKHR.gen.cs
@@ -0,0 +1,51 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrBoxfKHR")]
+ [NativeName("AliasOf", "XrBoxf")]
+ public unsafe partial struct BoxfKHR
+ {
+ public BoxfKHR
+ (
+ Posef? center = null,
+ Extent3Df? extents = null
+ ) : this()
+ {
+ if (center is not null)
+ {
+ Center = center.Value;
+ }
+
+ if (extents is not null)
+ {
+ Extents = extents.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrPosef")]
+ [NativeName("Type.Name", "XrPosef")]
+ [NativeName("Name", "center")]
+ public Posef Center;
+///
+ [NativeName("Type", "XrExtent3Df")]
+ [NativeName("Type.Name", "XrExtent3Df")]
+ [NativeName("Name", "extents")]
+ public Extent3Df Extents;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/Color3f.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/Color3f.gen.cs
new file mode 100644
index 0000000000..c0b9f7842c
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/Color3f.gen.cs
@@ -0,0 +1,62 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrColor3f")]
+ [NativeName("Aliases", "XrColor3fKHR")]
+ public unsafe partial struct Color3f
+ {
+ public Color3f
+ (
+ float? r = null,
+ float? g = null,
+ float? b = null
+ ) : this()
+ {
+ if (r is not null)
+ {
+ R = r.Value;
+ }
+
+ if (g is not null)
+ {
+ G = g.Value;
+ }
+
+ if (b is not null)
+ {
+ B = b.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "r")]
+ public float R;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "g")]
+ public float G;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "b")]
+ public float B;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/Color3fKHR.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/Color3fKHR.gen.cs
new file mode 100644
index 0000000000..4d58632c29
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/Color3fKHR.gen.cs
@@ -0,0 +1,62 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrColor3fKHR")]
+ [NativeName("AliasOf", "XrColor3f")]
+ public unsafe partial struct Color3fKHR
+ {
+ public Color3fKHR
+ (
+ float? r = null,
+ float? g = null,
+ float? b = null
+ ) : this()
+ {
+ if (r is not null)
+ {
+ R = r.Value;
+ }
+
+ if (g is not null)
+ {
+ G = g.Value;
+ }
+
+ if (b is not null)
+ {
+ B = b.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "r")]
+ public float R;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "g")]
+ public float G;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "b")]
+ public float B;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthHandRemovalSetInfoMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthHandRemovalSetInfoMETA.gen.cs
new file mode 100644
index 0000000000..9bf70b2f2c
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthHandRemovalSetInfoMETA.gen.cs
@@ -0,0 +1,61 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrEnvironmentDepthHandRemovalSetInfoMETA")]
+ public unsafe partial struct EnvironmentDepthHandRemovalSetInfoMETA
+ {
+ public EnvironmentDepthHandRemovalSetInfoMETA
+ (
+ StructureType? type = StructureType.TypeEnvironmentDepthHandRemovalSetInfoMeta,
+ void* next = null,
+ uint? enabled = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (enabled is not null)
+ {
+ Enabled = enabled.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrBool32")]
+ [NativeName("Type.Name", "XrBool32")]
+ [NativeName("Name", "enabled")]
+ public uint Enabled;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthImageAcquireInfoMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthImageAcquireInfoMETA.gen.cs
new file mode 100644
index 0000000000..d7a1177f31
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthImageAcquireInfoMETA.gen.cs
@@ -0,0 +1,72 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrEnvironmentDepthImageAcquireInfoMETA")]
+ public unsafe partial struct EnvironmentDepthImageAcquireInfoMETA
+ {
+ public EnvironmentDepthImageAcquireInfoMETA
+ (
+ StructureType? type = StructureType.TypeEnvironmentDepthImageAcquireInfoMeta,
+ void* next = null,
+ Space? space = null,
+ long? displayTime = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (space is not null)
+ {
+ Space = space.Value;
+ }
+
+ if (displayTime is not null)
+ {
+ DisplayTime = displayTime.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrSpace")]
+ [NativeName("Type.Name", "XrSpace")]
+ [NativeName("Name", "space")]
+ public Space Space;
+///
+ [NativeName("Type", "XrTime")]
+ [NativeName("Type.Name", "XrTime")]
+ [NativeName("Name", "displayTime")]
+ public long DisplayTime;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthImageMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthImageMETA.gen.cs
new file mode 100644
index 0000000000..e05411aaf2
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthImageMETA.gen.cs
@@ -0,0 +1,115 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrEnvironmentDepthImageMETA")]
+ public unsafe partial struct EnvironmentDepthImageMETA
+ {
+ public EnvironmentDepthImageMETA
+ (
+ StructureType? type = StructureType.TypeEnvironmentDepthImageMeta,
+ void* next = null,
+ uint? swapchainIndex = null,
+ float? nearZ = null,
+ float? farZ = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (swapchainIndex is not null)
+ {
+ SwapchainIndex = swapchainIndex.Value;
+ }
+
+ if (nearZ is not null)
+ {
+ NearZ = nearZ.Value;
+ }
+
+ if (farZ is not null)
+ {
+ FarZ = farZ.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "swapchainIndex")]
+ public uint SwapchainIndex;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "nearZ")]
+ public float NearZ;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "farZ")]
+ public float FarZ;
+ ///
+ [NativeName("Type", "XrEnvironmentDepthImageViewMETA")]
+ [NativeName("Type.Name", "XrEnvironmentDepthImageViewMETA")]
+ [NativeName("Name", "views")]
+ public ViewsBuffer Views;
+
+ public struct ViewsBuffer
+ {
+ public EnvironmentDepthImageViewMETA Element0;
+ public EnvironmentDepthImageViewMETA Element1;
+ public ref EnvironmentDepthImageViewMETA this[int index]
+ {
+ get
+ {
+ if (index > 1 || index < 0)
+ {
+ throw new ArgumentOutOfRangeException(nameof(index));
+ }
+
+ fixed (EnvironmentDepthImageViewMETA* ptr = &Element0)
+ {
+ return ref ptr[index];
+ }
+ }
+ }
+
+#if NETSTANDARD2_1 || NETCOREAPP3_1 || NET5_0 || NET5_0_OR_GREATER
+ public Span AsSpan()
+ => MemoryMarshal.CreateSpan(ref Element0, 2);
+#endif
+ }
+
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthImageViewMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthImageViewMETA.gen.cs
new file mode 100644
index 0000000000..1c203acbbc
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthImageViewMETA.gen.cs
@@ -0,0 +1,72 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrEnvironmentDepthImageViewMETA")]
+ public unsafe partial struct EnvironmentDepthImageViewMETA
+ {
+ public EnvironmentDepthImageViewMETA
+ (
+ StructureType? type = StructureType.TypeEnvironmentDepthImageViewMeta,
+ void* next = null,
+ Fovf? fov = null,
+ Posef? pose = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (fov is not null)
+ {
+ Fov = fov.Value;
+ }
+
+ if (pose is not null)
+ {
+ Pose = pose.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrFovf")]
+ [NativeName("Type.Name", "XrFovf")]
+ [NativeName("Name", "fov")]
+ public Fovf Fov;
+///
+ [NativeName("Type", "XrPosef")]
+ [NativeName("Type.Name", "XrPosef")]
+ [NativeName("Name", "pose")]
+ public Posef Pose;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthProviderCreateInfoMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthProviderCreateInfoMETA.gen.cs
new file mode 100644
index 0000000000..b854d3f037
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthProviderCreateInfoMETA.gen.cs
@@ -0,0 +1,61 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrEnvironmentDepthProviderCreateInfoMETA")]
+ public unsafe partial struct EnvironmentDepthProviderCreateInfoMETA
+ {
+ public EnvironmentDepthProviderCreateInfoMETA
+ (
+ StructureType? type = StructureType.TypeEnvironmentDepthProviderCreateInfoMeta,
+ void* next = null,
+ EnvironmentDepthProviderCreateFlagsMETA? createFlags = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (createFlags is not null)
+ {
+ CreateFlags = createFlags.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrEnvironmentDepthProviderCreateFlagsMETA")]
+ [NativeName("Type.Name", "XrEnvironmentDepthProviderCreateFlagsMETA")]
+ [NativeName("Name", "createFlags")]
+ public EnvironmentDepthProviderCreateFlagsMETA CreateFlags;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthProviderMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthProviderMETA.gen.cs
new file mode 100644
index 0000000000..ed022d2076
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthProviderMETA.gen.cs
@@ -0,0 +1,39 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrEnvironmentDepthProviderMETA")]
+ public unsafe partial struct EnvironmentDepthProviderMETA
+ {
+ public EnvironmentDepthProviderMETA
+ (
+ ulong? handle = null
+ ) : this()
+ {
+ if (handle is not null)
+ {
+ Handle = handle.Value;
+ }
+ }
+
+
+ [NativeName("Type", "")]
+ [NativeName("Type.Name", "")]
+ [NativeName("Name", "")]
+ public ulong Handle;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthSwapchainCreateInfoMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthSwapchainCreateInfoMETA.gen.cs
new file mode 100644
index 0000000000..37dd1b50e2
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthSwapchainCreateInfoMETA.gen.cs
@@ -0,0 +1,61 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrEnvironmentDepthSwapchainCreateInfoMETA")]
+ public unsafe partial struct EnvironmentDepthSwapchainCreateInfoMETA
+ {
+ public EnvironmentDepthSwapchainCreateInfoMETA
+ (
+ StructureType? type = StructureType.TypeEnvironmentDepthSwapchainCreateInfoMeta,
+ void* next = null,
+ EnvironmentDepthSwapchainCreateFlagsMETA? createFlags = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (createFlags is not null)
+ {
+ CreateFlags = createFlags.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrEnvironmentDepthSwapchainCreateFlagsMETA")]
+ [NativeName("Type.Name", "XrEnvironmentDepthSwapchainCreateFlagsMETA")]
+ [NativeName("Name", "createFlags")]
+ public EnvironmentDepthSwapchainCreateFlagsMETA CreateFlags;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthSwapchainMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthSwapchainMETA.gen.cs
new file mode 100644
index 0000000000..172ddc7f61
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthSwapchainMETA.gen.cs
@@ -0,0 +1,39 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrEnvironmentDepthSwapchainMETA")]
+ public unsafe partial struct EnvironmentDepthSwapchainMETA
+ {
+ public EnvironmentDepthSwapchainMETA
+ (
+ ulong? handle = null
+ ) : this()
+ {
+ if (handle is not null)
+ {
+ Handle = handle.Value;
+ }
+ }
+
+
+ [NativeName("Type", "")]
+ [NativeName("Type.Name", "")]
+ [NativeName("Name", "")]
+ public ulong Handle;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthSwapchainStateMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthSwapchainStateMETA.gen.cs
new file mode 100644
index 0000000000..87998ca045
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/EnvironmentDepthSwapchainStateMETA.gen.cs
@@ -0,0 +1,72 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrEnvironmentDepthSwapchainStateMETA")]
+ public unsafe partial struct EnvironmentDepthSwapchainStateMETA
+ {
+ public EnvironmentDepthSwapchainStateMETA
+ (
+ StructureType? type = StructureType.TypeEnvironmentDepthSwapchainStateMeta,
+ void* next = null,
+ uint? width = null,
+ uint? height = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (width is not null)
+ {
+ Width = width.Value;
+ }
+
+ if (height is not null)
+ {
+ Height = height.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "width")]
+ public uint Width;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "height")]
+ public uint Height;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/EventDataUserPresenceChangedEXT.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/EventDataUserPresenceChangedEXT.gen.cs
new file mode 100644
index 0000000000..753dc885e6
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/EventDataUserPresenceChangedEXT.gen.cs
@@ -0,0 +1,72 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrEventDataUserPresenceChangedEXT")]
+ public unsafe partial struct EventDataUserPresenceChangedEXT
+ {
+ public EventDataUserPresenceChangedEXT
+ (
+ StructureType? type = StructureType.TypeEventDataUserPresenceChangedExt,
+ void* next = null,
+ Session? session = null,
+ uint? isUserPresent = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (session is not null)
+ {
+ Session = session.Value;
+ }
+
+ if (isUserPresent is not null)
+ {
+ IsUserPresent = isUserPresent.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrSession")]
+ [NativeName("Type.Name", "XrSession")]
+ [NativeName("Name", "session")]
+ public Session Session;
+///
+ [NativeName("Type", "XrBool32")]
+ [NativeName("Type.Name", "XrBool32")]
+ [NativeName("Name", "isUserPresent")]
+ public uint IsUserPresent;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/Extent3Df.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/Extent3Df.gen.cs
new file mode 100644
index 0000000000..ffed41bdf9
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/Extent3Df.gen.cs
@@ -0,0 +1,62 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrExtent3Df")]
+ [NativeName("Aliases", "XrExtent3DfEXT, XrExtent3DfFB, XrExtent3DfKHR")]
+ public unsafe partial struct Extent3Df
+ {
+ public Extent3Df
+ (
+ float? width = null,
+ float? height = null,
+ float? depth = null
+ ) : this()
+ {
+ if (width is not null)
+ {
+ Width = width.Value;
+ }
+
+ if (height is not null)
+ {
+ Height = height.Value;
+ }
+
+ if (depth is not null)
+ {
+ Depth = depth.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "width")]
+ public float Width;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "height")]
+ public float Height;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "depth")]
+ public float Depth;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/Extent3DfEXT.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/Extent3DfEXT.gen.cs
index 2569a41125..fa7f665501 100644
--- a/src/OpenXR/Silk.NET.OpenXR/Structs/Extent3DfEXT.gen.cs
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/Extent3DfEXT.gen.cs
@@ -17,6 +17,7 @@
namespace Silk.NET.OpenXR
{
[NativeName("Name", "XrExtent3DfEXT")]
+ [NativeName("AliasOf", "XrExtent3Df")]
public unsafe partial struct Extent3DfEXT
{
public Extent3DfEXT
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/Extent3DfFB.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/Extent3DfFB.gen.cs
index dd9727e764..7cd238a66d 100644
--- a/src/OpenXR/Silk.NET.OpenXR/Structs/Extent3DfFB.gen.cs
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/Extent3DfFB.gen.cs
@@ -17,6 +17,7 @@
namespace Silk.NET.OpenXR
{
[NativeName("Name", "XrExtent3DfFB")]
+ [NativeName("AliasOf", "XrExtent3Df")]
public unsafe partial struct Extent3DfFB
{
public Extent3DfFB
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/Extent3DfKHR.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/Extent3DfKHR.gen.cs
new file mode 100644
index 0000000000..3a69f8f702
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/Extent3DfKHR.gen.cs
@@ -0,0 +1,62 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrExtent3DfKHR")]
+ [NativeName("AliasOf", "XrExtent3Df")]
+ public unsafe partial struct Extent3DfKHR
+ {
+ public Extent3DfKHR
+ (
+ float? width = null,
+ float? height = null,
+ float? depth = null
+ ) : this()
+ {
+ if (width is not null)
+ {
+ Width = width.Value;
+ }
+
+ if (height is not null)
+ {
+ Height = height.Value;
+ }
+
+ if (depth is not null)
+ {
+ Depth = depth.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "width")]
+ public float Width;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "height")]
+ public float Height;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "depth")]
+ public float Depth;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/FaceExpressionInfo2FB.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/FaceExpressionInfo2FB.gen.cs
new file mode 100644
index 0000000000..aa6ebdadd8
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/FaceExpressionInfo2FB.gen.cs
@@ -0,0 +1,61 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFaceExpressionInfo2FB")]
+ public unsafe partial struct FaceExpressionInfo2FB
+ {
+ public FaceExpressionInfo2FB
+ (
+ StructureType? type = StructureType.TypeFaceExpressionInfo2FB,
+ void* next = null,
+ long? time = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (time is not null)
+ {
+ Time = time.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrTime")]
+ [NativeName("Type.Name", "XrTime")]
+ [NativeName("Name", "time")]
+ public long Time;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/FaceExpressionWeights2FB.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/FaceExpressionWeights2FB.gen.cs
new file mode 100644
index 0000000000..3ef16b69f2
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/FaceExpressionWeights2FB.gen.cs
@@ -0,0 +1,138 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFaceExpressionWeights2FB")]
+ public unsafe partial struct FaceExpressionWeights2FB
+ {
+ public FaceExpressionWeights2FB
+ (
+ StructureType? type = StructureType.TypeFaceExpressionWeights2FB,
+ void* next = null,
+ uint? weightCount = null,
+ float* weights = null,
+ uint? confidenceCount = null,
+ float* confidences = null,
+ uint? isValid = null,
+ uint? isEyeFollowingBlendshapesValid = null,
+ FaceTrackingDataSource2FB? dataSource = null,
+ long? time = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (weightCount is not null)
+ {
+ WeightCount = weightCount.Value;
+ }
+
+ if (weights is not null)
+ {
+ Weights = weights;
+ }
+
+ if (confidenceCount is not null)
+ {
+ ConfidenceCount = confidenceCount.Value;
+ }
+
+ if (confidences is not null)
+ {
+ Confidences = confidences;
+ }
+
+ if (isValid is not null)
+ {
+ IsValid = isValid.Value;
+ }
+
+ if (isEyeFollowingBlendshapesValid is not null)
+ {
+ IsEyeFollowingBlendshapesValid = isEyeFollowingBlendshapesValid.Value;
+ }
+
+ if (dataSource is not null)
+ {
+ DataSource = dataSource.Value;
+ }
+
+ if (time is not null)
+ {
+ Time = time.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "weightCount")]
+ public uint WeightCount;
+///
+ [NativeName("Type", "float*")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "weights")]
+ public float* Weights;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "confidenceCount")]
+ public uint ConfidenceCount;
+///
+ [NativeName("Type", "float*")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "confidences")]
+ public float* Confidences;
+///
+ [NativeName("Type", "XrBool32")]
+ [NativeName("Type.Name", "XrBool32")]
+ [NativeName("Name", "isValid")]
+ public uint IsValid;
+///
+ [NativeName("Type", "XrBool32")]
+ [NativeName("Type.Name", "XrBool32")]
+ [NativeName("Name", "isEyeFollowingBlendshapesValid")]
+ public uint IsEyeFollowingBlendshapesValid;
+///
+ [NativeName("Type", "XrFaceTrackingDataSource2FB")]
+ [NativeName("Type.Name", "XrFaceTrackingDataSource2FB")]
+ [NativeName("Name", "dataSource")]
+ public FaceTrackingDataSource2FB DataSource;
+///
+ [NativeName("Type", "XrTime")]
+ [NativeName("Type.Name", "XrTime")]
+ [NativeName("Name", "time")]
+ public long Time;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/FaceTracker2FB.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/FaceTracker2FB.gen.cs
new file mode 100644
index 0000000000..e924594898
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/FaceTracker2FB.gen.cs
@@ -0,0 +1,39 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFaceTracker2FB")]
+ public unsafe partial struct FaceTracker2FB
+ {
+ public FaceTracker2FB
+ (
+ ulong? handle = null
+ ) : this()
+ {
+ if (handle is not null)
+ {
+ Handle = handle.Value;
+ }
+ }
+
+
+ [NativeName("Type", "")]
+ [NativeName("Type.Name", "")]
+ [NativeName("Name", "")]
+ public ulong Handle;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/FaceTrackerCreateInfo2FB.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/FaceTrackerCreateInfo2FB.gen.cs
new file mode 100644
index 0000000000..a82a34fcb1
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/FaceTrackerCreateInfo2FB.gen.cs
@@ -0,0 +1,83 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFaceTrackerCreateInfo2FB")]
+ public unsafe partial struct FaceTrackerCreateInfo2FB
+ {
+ public FaceTrackerCreateInfo2FB
+ (
+ StructureType? type = StructureType.TypeFaceTrackerCreateInfo2FB,
+ void* next = null,
+ FaceExpressionSet2FB? faceExpressionSet = null,
+ uint? requestedDataSourceCount = null,
+ FaceTrackingDataSource2FB* requestedDataSources = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (faceExpressionSet is not null)
+ {
+ FaceExpressionSet = faceExpressionSet.Value;
+ }
+
+ if (requestedDataSourceCount is not null)
+ {
+ RequestedDataSourceCount = requestedDataSourceCount.Value;
+ }
+
+ if (requestedDataSources is not null)
+ {
+ RequestedDataSources = requestedDataSources;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrFaceExpressionSet2FB")]
+ [NativeName("Type.Name", "XrFaceExpressionSet2FB")]
+ [NativeName("Name", "faceExpressionSet")]
+ public FaceExpressionSet2FB FaceExpressionSet;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "requestedDataSourceCount")]
+ public uint RequestedDataSourceCount;
+///
+ [NativeName("Type", "XrFaceTrackingDataSource2FB*")]
+ [NativeName("Type.Name", "XrFaceTrackingDataSource2FB")]
+ [NativeName("Name", "requestedDataSources")]
+ public FaceTrackingDataSource2FB* RequestedDataSources;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/Frustumf.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/Frustumf.gen.cs
new file mode 100644
index 0000000000..097920ee54
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/Frustumf.gen.cs
@@ -0,0 +1,73 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFrustumf")]
+ [NativeName("Aliases", "XrFrustumfKHR")]
+ public unsafe partial struct Frustumf
+ {
+ public Frustumf
+ (
+ Posef? pose = null,
+ Fovf? fov = null,
+ float? nearZ = null,
+ float? farZ = null
+ ) : this()
+ {
+ if (pose is not null)
+ {
+ Pose = pose.Value;
+ }
+
+ if (fov is not null)
+ {
+ Fov = fov.Value;
+ }
+
+ if (nearZ is not null)
+ {
+ NearZ = nearZ.Value;
+ }
+
+ if (farZ is not null)
+ {
+ FarZ = farZ.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrPosef")]
+ [NativeName("Type.Name", "XrPosef")]
+ [NativeName("Name", "pose")]
+ public Posef Pose;
+///
+ [NativeName("Type", "XrFovf")]
+ [NativeName("Type.Name", "XrFovf")]
+ [NativeName("Name", "fov")]
+ public Fovf Fov;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "nearZ")]
+ public float NearZ;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "farZ")]
+ public float FarZ;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/FrustumfKHR.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/FrustumfKHR.gen.cs
new file mode 100644
index 0000000000..19b44f5fb1
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/FrustumfKHR.gen.cs
@@ -0,0 +1,73 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFrustumfKHR")]
+ [NativeName("AliasOf", "XrFrustumf")]
+ public unsafe partial struct FrustumfKHR
+ {
+ public FrustumfKHR
+ (
+ Posef? pose = null,
+ Fovf? fov = null,
+ float? nearZ = null,
+ float? farZ = null
+ ) : this()
+ {
+ if (pose is not null)
+ {
+ Pose = pose.Value;
+ }
+
+ if (fov is not null)
+ {
+ Fov = fov.Value;
+ }
+
+ if (nearZ is not null)
+ {
+ NearZ = nearZ.Value;
+ }
+
+ if (farZ is not null)
+ {
+ FarZ = farZ.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrPosef")]
+ [NativeName("Type.Name", "XrPosef")]
+ [NativeName("Name", "pose")]
+ public Posef Pose;
+///
+ [NativeName("Type", "XrFovf")]
+ [NativeName("Type.Name", "XrFovf")]
+ [NativeName("Name", "fov")]
+ public Fovf Fov;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "nearZ")]
+ public float NearZ;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "farZ")]
+ public float FarZ;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/FutureCancelInfoEXT.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/FutureCancelInfoEXT.gen.cs
new file mode 100644
index 0000000000..d9578f649c
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/FutureCancelInfoEXT.gen.cs
@@ -0,0 +1,61 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFutureCancelInfoEXT")]
+ public unsafe partial struct FutureCancelInfoEXT
+ {
+ public FutureCancelInfoEXT
+ (
+ StructureType? type = StructureType.TypeFutureCancelInfoExt,
+ void* next = null,
+ FutureEXT? future = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (future is not null)
+ {
+ Future = future.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrFutureEXT")]
+ [NativeName("Type.Name", "XrFutureEXT")]
+ [NativeName("Name", "future")]
+ public FutureEXT Future;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/FutureCompletionBaseHeaderEXT.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/FutureCompletionBaseHeaderEXT.gen.cs
new file mode 100644
index 0000000000..065590e27d
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/FutureCompletionBaseHeaderEXT.gen.cs
@@ -0,0 +1,61 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFutureCompletionBaseHeaderEXT")]
+ public unsafe partial struct FutureCompletionBaseHeaderEXT
+ {
+ public FutureCompletionBaseHeaderEXT
+ (
+ StructureType? type = null,
+ void* next = null,
+ Result? futureResult = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (futureResult is not null)
+ {
+ FutureResult = futureResult.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrResult")]
+ [NativeName("Type.Name", "XrResult")]
+ [NativeName("Name", "futureResult")]
+ public Result FutureResult;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/FutureCompletionEXT.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/FutureCompletionEXT.gen.cs
new file mode 100644
index 0000000000..02e868029d
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/FutureCompletionEXT.gen.cs
@@ -0,0 +1,61 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFutureCompletionEXT")]
+ public unsafe partial struct FutureCompletionEXT
+ {
+ public FutureCompletionEXT
+ (
+ StructureType? type = StructureType.TypeFutureCompletionExt,
+ void* next = null,
+ Result? futureResult = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (futureResult is not null)
+ {
+ FutureResult = futureResult.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrResult")]
+ [NativeName("Type.Name", "XrResult")]
+ [NativeName("Name", "futureResult")]
+ public Result FutureResult;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/FutureEXT.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/FutureEXT.cs
new file mode 100644
index 0000000000..4a1416e9ac
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/FutureEXT.cs
@@ -0,0 +1,39 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFutureEXT")]
+ public unsafe partial struct FutureEXT
+ {
+ public FutureEXT
+ (
+ ulong? handle = null
+ ) : this()
+ {
+ if (handle is not null)
+ {
+ Handle = handle.Value;
+ }
+ }
+
+
+ [NativeName("Type", "")]
+ [NativeName("Type.Name", "")]
+ [NativeName("Name", "")]
+ public ulong Handle;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/FuturePollInfoEXT.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/FuturePollInfoEXT.gen.cs
new file mode 100644
index 0000000000..d313652613
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/FuturePollInfoEXT.gen.cs
@@ -0,0 +1,61 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFuturePollInfoEXT")]
+ public unsafe partial struct FuturePollInfoEXT
+ {
+ public FuturePollInfoEXT
+ (
+ StructureType? type = StructureType.TypeFuturePollInfoExt,
+ void* next = null,
+ FutureEXT? future = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (future is not null)
+ {
+ Future = future.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrFutureEXT")]
+ [NativeName("Type.Name", "XrFutureEXT")]
+ [NativeName("Name", "future")]
+ public FutureEXT Future;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/FuturePollResultEXT.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/FuturePollResultEXT.gen.cs
new file mode 100644
index 0000000000..b431f8200a
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/FuturePollResultEXT.gen.cs
@@ -0,0 +1,61 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrFuturePollResultEXT")]
+ public unsafe partial struct FuturePollResultEXT
+ {
+ public FuturePollResultEXT
+ (
+ StructureType? type = StructureType.TypeFuturePollResultExt,
+ void* next = null,
+ FutureStateEXT? state = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (state is not null)
+ {
+ State = state.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrFutureStateEXT")]
+ [NativeName("Type.Name", "XrFutureStateEXT")]
+ [NativeName("Name", "state")]
+ public FutureStateEXT State;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/NegotiateApiLayerRequest.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/NegotiateApiLayerRequest.gen.cs
new file mode 100644
index 0000000000..98b6e7cf51
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/NegotiateApiLayerRequest.gen.cs
@@ -0,0 +1,105 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrNegotiateApiLayerRequest")]
+ public unsafe partial struct NegotiateApiLayerRequest
+ {
+ public NegotiateApiLayerRequest
+ (
+ LoaderInterfaceStructs? structType = null,
+ uint? structVersion = null,
+ nuint? structSize = null,
+ uint? layerInterfaceVersion = null,
+ ulong? layerApiVersion = null,
+ PfnGetInstanceProcAddr? getInstanceProcAddr = null,
+ PfnCreateApiLayerInstance? createApiLayerInstance = null
+ ) : this()
+ {
+ if (structType is not null)
+ {
+ StructType = structType.Value;
+ }
+
+ if (structVersion is not null)
+ {
+ StructVersion = structVersion.Value;
+ }
+
+ if (structSize is not null)
+ {
+ StructSize = structSize.Value;
+ }
+
+ if (layerInterfaceVersion is not null)
+ {
+ LayerInterfaceVersion = layerInterfaceVersion.Value;
+ }
+
+ if (layerApiVersion is not null)
+ {
+ LayerApiVersion = layerApiVersion.Value;
+ }
+
+ if (getInstanceProcAddr is not null)
+ {
+ GetInstanceProcAddr = getInstanceProcAddr.Value;
+ }
+
+ if (createApiLayerInstance is not null)
+ {
+ CreateApiLayerInstance = createApiLayerInstance.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrLoaderInterfaceStructs")]
+ [NativeName("Type.Name", "XrLoaderInterfaceStructs")]
+ [NativeName("Name", "structType")]
+ public LoaderInterfaceStructs StructType;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "structVersion")]
+ public uint StructVersion;
+///
+ [NativeName("Type", "size_t")]
+ [NativeName("Type.Name", "size_t")]
+ [NativeName("Name", "structSize")]
+ public nuint StructSize;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "layerInterfaceVersion")]
+ public uint LayerInterfaceVersion;
+///
+ [NativeName("Type", "XrVersion")]
+ [NativeName("Type.Name", "XrVersion")]
+ [NativeName("Name", "layerApiVersion")]
+ public ulong LayerApiVersion;
+///
+ [NativeName("Type", "PFN_xrGetInstanceProcAddr")]
+ [NativeName("Type.Name", "PFN_xrGetInstanceProcAddr")]
+ [NativeName("Name", "getInstanceProcAddr")]
+ public PfnGetInstanceProcAddr GetInstanceProcAddr;
+///
+ [NativeName("Type", "PFN_xrCreateApiLayerInstance")]
+ [NativeName("Type.Name", "PFN_xrCreateApiLayerInstance")]
+ [NativeName("Name", "createApiLayerInstance")]
+ public PfnCreateApiLayerInstance CreateApiLayerInstance;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/NegotiateLoaderInfo.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/NegotiateLoaderInfo.gen.cs
new file mode 100644
index 0000000000..be4999a123
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/NegotiateLoaderInfo.gen.cs
@@ -0,0 +1,105 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrNegotiateLoaderInfo")]
+ public unsafe partial struct NegotiateLoaderInfo
+ {
+ public NegotiateLoaderInfo
+ (
+ LoaderInterfaceStructs? structType = null,
+ uint? structVersion = null,
+ nuint? structSize = null,
+ uint? minInterfaceVersion = null,
+ uint? maxInterfaceVersion = null,
+ ulong? minApiVersion = null,
+ ulong? maxApiVersion = null
+ ) : this()
+ {
+ if (structType is not null)
+ {
+ StructType = structType.Value;
+ }
+
+ if (structVersion is not null)
+ {
+ StructVersion = structVersion.Value;
+ }
+
+ if (structSize is not null)
+ {
+ StructSize = structSize.Value;
+ }
+
+ if (minInterfaceVersion is not null)
+ {
+ MinInterfaceVersion = minInterfaceVersion.Value;
+ }
+
+ if (maxInterfaceVersion is not null)
+ {
+ MaxInterfaceVersion = maxInterfaceVersion.Value;
+ }
+
+ if (minApiVersion is not null)
+ {
+ MinApiVersion = minApiVersion.Value;
+ }
+
+ if (maxApiVersion is not null)
+ {
+ MaxApiVersion = maxApiVersion.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrLoaderInterfaceStructs")]
+ [NativeName("Type.Name", "XrLoaderInterfaceStructs")]
+ [NativeName("Name", "structType")]
+ public LoaderInterfaceStructs StructType;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "structVersion")]
+ public uint StructVersion;
+///
+ [NativeName("Type", "size_t")]
+ [NativeName("Type.Name", "size_t")]
+ [NativeName("Name", "structSize")]
+ public nuint StructSize;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "minInterfaceVersion")]
+ public uint MinInterfaceVersion;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "maxInterfaceVersion")]
+ public uint MaxInterfaceVersion;
+///
+ [NativeName("Type", "XrVersion")]
+ [NativeName("Type.Name", "XrVersion")]
+ [NativeName("Name", "minApiVersion")]
+ public ulong MinApiVersion;
+///
+ [NativeName("Type", "XrVersion")]
+ [NativeName("Type.Name", "XrVersion")]
+ [NativeName("Name", "maxApiVersion")]
+ public ulong MaxApiVersion;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/NegotiateRuntimeRequest.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/NegotiateRuntimeRequest.gen.cs
new file mode 100644
index 0000000000..6d5573a79e
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/NegotiateRuntimeRequest.gen.cs
@@ -0,0 +1,94 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrNegotiateRuntimeRequest")]
+ public unsafe partial struct NegotiateRuntimeRequest
+ {
+ public NegotiateRuntimeRequest
+ (
+ LoaderInterfaceStructs? structType = null,
+ uint? structVersion = null,
+ nuint? structSize = null,
+ uint? runtimeInterfaceVersion = null,
+ ulong? runtimeApiVersion = null,
+ PfnGetInstanceProcAddr? getInstanceProcAddr = null
+ ) : this()
+ {
+ if (structType is not null)
+ {
+ StructType = structType.Value;
+ }
+
+ if (structVersion is not null)
+ {
+ StructVersion = structVersion.Value;
+ }
+
+ if (structSize is not null)
+ {
+ StructSize = structSize.Value;
+ }
+
+ if (runtimeInterfaceVersion is not null)
+ {
+ RuntimeInterfaceVersion = runtimeInterfaceVersion.Value;
+ }
+
+ if (runtimeApiVersion is not null)
+ {
+ RuntimeApiVersion = runtimeApiVersion.Value;
+ }
+
+ if (getInstanceProcAddr is not null)
+ {
+ GetInstanceProcAddr = getInstanceProcAddr.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrLoaderInterfaceStructs")]
+ [NativeName("Type.Name", "XrLoaderInterfaceStructs")]
+ [NativeName("Name", "structType")]
+ public LoaderInterfaceStructs StructType;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "structVersion")]
+ public uint StructVersion;
+///
+ [NativeName("Type", "size_t")]
+ [NativeName("Type.Name", "size_t")]
+ [NativeName("Name", "structSize")]
+ public nuint StructSize;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "runtimeInterfaceVersion")]
+ public uint RuntimeInterfaceVersion;
+///
+ [NativeName("Type", "XrVersion")]
+ [NativeName("Type.Name", "XrVersion")]
+ [NativeName("Name", "runtimeApiVersion")]
+ public ulong RuntimeApiVersion;
+///
+ [NativeName("Type", "PFN_xrGetInstanceProcAddr")]
+ [NativeName("Type.Name", "PFN_xrGetInstanceProcAddr")]
+ [NativeName("Name", "getInstanceProcAddr")]
+ public PfnGetInstanceProcAddr GetInstanceProcAddr;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/RecommendedLayerResolutionGetInfoMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/RecommendedLayerResolutionGetInfoMETA.gen.cs
new file mode 100644
index 0000000000..c084a1771f
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/RecommendedLayerResolutionGetInfoMETA.gen.cs
@@ -0,0 +1,72 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrRecommendedLayerResolutionGetInfoMETA")]
+ public unsafe partial struct RecommendedLayerResolutionGetInfoMETA
+ {
+ public RecommendedLayerResolutionGetInfoMETA
+ (
+ StructureType? type = StructureType.TypeRecommendedLayerResolutionGetInfoMeta,
+ void* next = null,
+ CompositionLayerBaseHeader* layer = null,
+ long? predictedDisplayTime = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (layer is not null)
+ {
+ Layer = layer;
+ }
+
+ if (predictedDisplayTime is not null)
+ {
+ PredictedDisplayTime = predictedDisplayTime.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrCompositionLayerBaseHeader*")]
+ [NativeName("Type.Name", "XrCompositionLayerBaseHeader")]
+ [NativeName("Name", "layer")]
+ public CompositionLayerBaseHeader* Layer;
+///
+ [NativeName("Type", "XrTime")]
+ [NativeName("Type.Name", "XrTime")]
+ [NativeName("Name", "predictedDisplayTime")]
+ public long PredictedDisplayTime;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/RecommendedLayerResolutionMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/RecommendedLayerResolutionMETA.gen.cs
new file mode 100644
index 0000000000..70a558e3f0
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/RecommendedLayerResolutionMETA.gen.cs
@@ -0,0 +1,72 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrRecommendedLayerResolutionMETA")]
+ public unsafe partial struct RecommendedLayerResolutionMETA
+ {
+ public RecommendedLayerResolutionMETA
+ (
+ StructureType? type = StructureType.TypeRecommendedLayerResolutionMeta,
+ void* next = null,
+ Extent2Di? recommendedImageDimensions = null,
+ uint? isValid = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (recommendedImageDimensions is not null)
+ {
+ RecommendedImageDimensions = recommendedImageDimensions.Value;
+ }
+
+ if (isValid is not null)
+ {
+ IsValid = isValid.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrExtent2Di")]
+ [NativeName("Type.Name", "XrExtent2Di")]
+ [NativeName("Name", "recommendedImageDimensions")]
+ public Extent2Di RecommendedImageDimensions;
+///
+ [NativeName("Type", "XrBool32")]
+ [NativeName("Type.Name", "XrBool32")]
+ [NativeName("Name", "isValid")]
+ public uint IsValid;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceLocationData.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceLocationData.gen.cs
new file mode 100644
index 0000000000..32dd965730
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceLocationData.gen.cs
@@ -0,0 +1,51 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSpaceLocationData")]
+ [NativeName("Aliases", "XrSpaceLocationDataKHR")]
+ public unsafe partial struct SpaceLocationData
+ {
+ public SpaceLocationData
+ (
+ SpaceLocationFlags? locationFlags = null,
+ Posef? pose = null
+ ) : this()
+ {
+ if (locationFlags is not null)
+ {
+ LocationFlags = locationFlags.Value;
+ }
+
+ if (pose is not null)
+ {
+ Pose = pose.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrSpaceLocationFlags")]
+ [NativeName("Type.Name", "XrSpaceLocationFlags")]
+ [NativeName("Name", "locationFlags")]
+ public SpaceLocationFlags LocationFlags;
+///
+ [NativeName("Type", "XrPosef")]
+ [NativeName("Type.Name", "XrPosef")]
+ [NativeName("Name", "pose")]
+ public Posef Pose;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceLocationDataKHR.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceLocationDataKHR.gen.cs
new file mode 100644
index 0000000000..fa68053531
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceLocationDataKHR.gen.cs
@@ -0,0 +1,51 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSpaceLocationDataKHR")]
+ [NativeName("AliasOf", "XrSpaceLocationData")]
+ public unsafe partial struct SpaceLocationDataKHR
+ {
+ public SpaceLocationDataKHR
+ (
+ SpaceLocationFlags? locationFlags = null,
+ Posef? pose = null
+ ) : this()
+ {
+ if (locationFlags is not null)
+ {
+ LocationFlags = locationFlags.Value;
+ }
+
+ if (pose is not null)
+ {
+ Pose = pose.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrSpaceLocationFlags")]
+ [NativeName("Type.Name", "XrSpaceLocationFlags")]
+ [NativeName("Name", "locationFlags")]
+ public SpaceLocationFlags LocationFlags;
+///
+ [NativeName("Type", "XrPosef")]
+ [NativeName("Type.Name", "XrPosef")]
+ [NativeName("Name", "pose")]
+ public Posef Pose;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceLocations.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceLocations.gen.cs
new file mode 100644
index 0000000000..b988184692
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceLocations.gen.cs
@@ -0,0 +1,73 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSpaceLocations")]
+ [NativeName("Aliases", "XrSpaceLocationsKHR")]
+ public unsafe partial struct SpaceLocations
+ {
+ public SpaceLocations
+ (
+ StructureType? type = StructureType.TypeSpaceLocations,
+ void* next = null,
+ uint? locationCount = null,
+ SpaceLocationData* locations = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (locationCount is not null)
+ {
+ LocationCount = locationCount.Value;
+ }
+
+ if (locations is not null)
+ {
+ Locations = locations;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "locationCount")]
+ public uint LocationCount;
+///
+ [NativeName("Type", "XrSpaceLocationData*")]
+ [NativeName("Type.Name", "XrSpaceLocationData")]
+ [NativeName("Name", "locations")]
+ public SpaceLocationData* Locations;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceLocationsKHR.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceLocationsKHR.gen.cs
new file mode 100644
index 0000000000..ed4a425507
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceLocationsKHR.gen.cs
@@ -0,0 +1,73 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSpaceLocationsKHR")]
+ [NativeName("AliasOf", "XrSpaceLocations")]
+ public unsafe partial struct SpaceLocationsKHR
+ {
+ public SpaceLocationsKHR
+ (
+ StructureType? type = StructureType.TypeSpaceLocations,
+ void* next = null,
+ uint? locationCount = null,
+ SpaceLocationData* locations = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (locationCount is not null)
+ {
+ LocationCount = locationCount.Value;
+ }
+
+ if (locations is not null)
+ {
+ Locations = locations;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "locationCount")]
+ public uint LocationCount;
+///
+ [NativeName("Type", "XrSpaceLocationData*")]
+ [NativeName("Type.Name", "XrSpaceLocationData")]
+ [NativeName("Name", "locations")]
+ public SpaceLocationData* Locations;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceTriangleMeshGetInfoMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceTriangleMeshGetInfoMETA.gen.cs
new file mode 100644
index 0000000000..4fef6f3c0a
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceTriangleMeshGetInfoMETA.gen.cs
@@ -0,0 +1,50 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSpaceTriangleMeshGetInfoMETA")]
+ public unsafe partial struct SpaceTriangleMeshGetInfoMETA
+ {
+ public SpaceTriangleMeshGetInfoMETA
+ (
+ StructureType? type = StructureType.TypeSpaceTriangleMeshGetInfoMeta,
+ void* next = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceTriangleMeshMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceTriangleMeshMETA.gen.cs
new file mode 100644
index 0000000000..2cde322cd4
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceTriangleMeshMETA.gen.cs
@@ -0,0 +1,116 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSpaceTriangleMeshMETA")]
+ public unsafe partial struct SpaceTriangleMeshMETA
+ {
+ public SpaceTriangleMeshMETA
+ (
+ StructureType? type = StructureType.TypeSpaceTriangleMeshMeta,
+ void* next = null,
+ uint? vertexCapacityInput = null,
+ uint? vertexCountOutput = null,
+ Vector3f* vertices = null,
+ uint? indexCapacityInput = null,
+ uint? indexCountOutput = null,
+ uint* indices = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (vertexCapacityInput is not null)
+ {
+ VertexCapacityInput = vertexCapacityInput.Value;
+ }
+
+ if (vertexCountOutput is not null)
+ {
+ VertexCountOutput = vertexCountOutput.Value;
+ }
+
+ if (vertices is not null)
+ {
+ Vertices = vertices;
+ }
+
+ if (indexCapacityInput is not null)
+ {
+ IndexCapacityInput = indexCapacityInput.Value;
+ }
+
+ if (indexCountOutput is not null)
+ {
+ IndexCountOutput = indexCountOutput.Value;
+ }
+
+ if (indices is not null)
+ {
+ Indices = indices;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "vertexCapacityInput")]
+ public uint VertexCapacityInput;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "vertexCountOutput")]
+ public uint VertexCountOutput;
+///
+ [NativeName("Type", "XrVector3f*")]
+ [NativeName("Type.Name", "XrVector3f")]
+ [NativeName("Name", "vertices")]
+ public Vector3f* Vertices;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "indexCapacityInput")]
+ public uint IndexCapacityInput;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "indexCountOutput")]
+ public uint IndexCountOutput;
+///
+ [NativeName("Type", "uint32_t*")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "indices")]
+ public uint* Indices;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceVelocities.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceVelocities.gen.cs
new file mode 100644
index 0000000000..2f4112c2ce
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceVelocities.gen.cs
@@ -0,0 +1,73 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSpaceVelocities")]
+ [NativeName("Aliases", "XrSpaceVelocitiesKHR")]
+ public unsafe partial struct SpaceVelocities
+ {
+ public SpaceVelocities
+ (
+ StructureType? type = StructureType.TypeSpaceVelocities,
+ void* next = null,
+ uint? velocityCount = null,
+ SpaceVelocityData* velocities = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (velocityCount is not null)
+ {
+ VelocityCount = velocityCount.Value;
+ }
+
+ if (velocities is not null)
+ {
+ Velocities = velocities;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "velocityCount")]
+ public uint VelocityCount;
+///
+ [NativeName("Type", "XrSpaceVelocityData*")]
+ [NativeName("Type.Name", "XrSpaceVelocityData")]
+ [NativeName("Name", "velocities")]
+ public SpaceVelocityData* Velocities;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceVelocitiesKHR.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceVelocitiesKHR.gen.cs
new file mode 100644
index 0000000000..a2b6b8e243
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceVelocitiesKHR.gen.cs
@@ -0,0 +1,73 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSpaceVelocitiesKHR")]
+ [NativeName("AliasOf", "XrSpaceVelocities")]
+ public unsafe partial struct SpaceVelocitiesKHR
+ {
+ public SpaceVelocitiesKHR
+ (
+ StructureType? type = StructureType.TypeSpaceVelocities,
+ void* next = null,
+ uint? velocityCount = null,
+ SpaceVelocityData* velocities = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (velocityCount is not null)
+ {
+ VelocityCount = velocityCount.Value;
+ }
+
+ if (velocities is not null)
+ {
+ Velocities = velocities;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "velocityCount")]
+ public uint VelocityCount;
+///
+ [NativeName("Type", "XrSpaceVelocityData*")]
+ [NativeName("Type.Name", "XrSpaceVelocityData")]
+ [NativeName("Name", "velocities")]
+ public SpaceVelocityData* Velocities;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceVelocityData.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceVelocityData.gen.cs
new file mode 100644
index 0000000000..ea71fca3ac
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceVelocityData.gen.cs
@@ -0,0 +1,62 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSpaceVelocityData")]
+ [NativeName("Aliases", "XrSpaceVelocityDataKHR")]
+ public unsafe partial struct SpaceVelocityData
+ {
+ public SpaceVelocityData
+ (
+ SpaceVelocityFlags? velocityFlags = null,
+ Vector3f? linearVelocity = null,
+ Vector3f? angularVelocity = null
+ ) : this()
+ {
+ if (velocityFlags is not null)
+ {
+ VelocityFlags = velocityFlags.Value;
+ }
+
+ if (linearVelocity is not null)
+ {
+ LinearVelocity = linearVelocity.Value;
+ }
+
+ if (angularVelocity is not null)
+ {
+ AngularVelocity = angularVelocity.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrSpaceVelocityFlags")]
+ [NativeName("Type.Name", "XrSpaceVelocityFlags")]
+ [NativeName("Name", "velocityFlags")]
+ public SpaceVelocityFlags VelocityFlags;
+///
+ [NativeName("Type", "XrVector3f")]
+ [NativeName("Type.Name", "XrVector3f")]
+ [NativeName("Name", "linearVelocity")]
+ public Vector3f LinearVelocity;
+///
+ [NativeName("Type", "XrVector3f")]
+ [NativeName("Type.Name", "XrVector3f")]
+ [NativeName("Name", "angularVelocity")]
+ public Vector3f AngularVelocity;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceVelocityDataKHR.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceVelocityDataKHR.gen.cs
new file mode 100644
index 0000000000..41e6e5cb7d
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SpaceVelocityDataKHR.gen.cs
@@ -0,0 +1,62 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSpaceVelocityDataKHR")]
+ [NativeName("AliasOf", "XrSpaceVelocityData")]
+ public unsafe partial struct SpaceVelocityDataKHR
+ {
+ public SpaceVelocityDataKHR
+ (
+ SpaceVelocityFlags? velocityFlags = null,
+ Vector3f? linearVelocity = null,
+ Vector3f? angularVelocity = null
+ ) : this()
+ {
+ if (velocityFlags is not null)
+ {
+ VelocityFlags = velocityFlags.Value;
+ }
+
+ if (linearVelocity is not null)
+ {
+ LinearVelocity = linearVelocity.Value;
+ }
+
+ if (angularVelocity is not null)
+ {
+ AngularVelocity = angularVelocity.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrSpaceVelocityFlags")]
+ [NativeName("Type.Name", "XrSpaceVelocityFlags")]
+ [NativeName("Name", "velocityFlags")]
+ public SpaceVelocityFlags VelocityFlags;
+///
+ [NativeName("Type", "XrVector3f")]
+ [NativeName("Type.Name", "XrVector3f")]
+ [NativeName("Name", "linearVelocity")]
+ public Vector3f LinearVelocity;
+///
+ [NativeName("Type", "XrVector3f")]
+ [NativeName("Type.Name", "XrVector3f")]
+ [NativeName("Name", "angularVelocity")]
+ public Vector3f AngularVelocity;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SpacesLocateInfo.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SpacesLocateInfo.gen.cs
new file mode 100644
index 0000000000..b2bbf5ca8d
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SpacesLocateInfo.gen.cs
@@ -0,0 +1,95 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSpacesLocateInfo")]
+ [NativeName("Aliases", "XrSpacesLocateInfoKHR")]
+ public unsafe partial struct SpacesLocateInfo
+ {
+ public SpacesLocateInfo
+ (
+ StructureType? type = StructureType.TypeSpacesLocateInfo,
+ void* next = null,
+ Space? baseSpace = null,
+ long? time = null,
+ uint? spaceCount = null,
+ Space* spaces = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (baseSpace is not null)
+ {
+ BaseSpace = baseSpace.Value;
+ }
+
+ if (time is not null)
+ {
+ Time = time.Value;
+ }
+
+ if (spaceCount is not null)
+ {
+ SpaceCount = spaceCount.Value;
+ }
+
+ if (spaces is not null)
+ {
+ Spaces = spaces;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrSpace")]
+ [NativeName("Type.Name", "XrSpace")]
+ [NativeName("Name", "baseSpace")]
+ public Space BaseSpace;
+///
+ [NativeName("Type", "XrTime")]
+ [NativeName("Type.Name", "XrTime")]
+ [NativeName("Name", "time")]
+ public long Time;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "spaceCount")]
+ public uint SpaceCount;
+///
+ [NativeName("Type", "XrSpace*")]
+ [NativeName("Type.Name", "XrSpace")]
+ [NativeName("Name", "spaces")]
+ public Space* Spaces;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SpacesLocateInfoKHR.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SpacesLocateInfoKHR.gen.cs
new file mode 100644
index 0000000000..e401dd8dcf
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SpacesLocateInfoKHR.gen.cs
@@ -0,0 +1,95 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSpacesLocateInfoKHR")]
+ [NativeName("AliasOf", "XrSpacesLocateInfo")]
+ public unsafe partial struct SpacesLocateInfoKHR
+ {
+ public SpacesLocateInfoKHR
+ (
+ StructureType? type = StructureType.TypeSpacesLocateInfo,
+ void* next = null,
+ Space? baseSpace = null,
+ long? time = null,
+ uint? spaceCount = null,
+ Space* spaces = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (baseSpace is not null)
+ {
+ BaseSpace = baseSpace.Value;
+ }
+
+ if (time is not null)
+ {
+ Time = time.Value;
+ }
+
+ if (spaceCount is not null)
+ {
+ SpaceCount = spaceCount.Value;
+ }
+
+ if (spaces is not null)
+ {
+ Spaces = spaces;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrSpace")]
+ [NativeName("Type.Name", "XrSpace")]
+ [NativeName("Name", "baseSpace")]
+ public Space BaseSpace;
+///
+ [NativeName("Type", "XrTime")]
+ [NativeName("Type.Name", "XrTime")]
+ [NativeName("Name", "time")]
+ public long Time;
+///
+ [NativeName("Type", "uint32_t")]
+ [NativeName("Type.Name", "uint32_t")]
+ [NativeName("Name", "spaceCount")]
+ public uint SpaceCount;
+///
+ [NativeName("Type", "XrSpace*")]
+ [NativeName("Type.Name", "XrSpace")]
+ [NativeName("Name", "spaces")]
+ public Space* Spaces;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/Spheref.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/Spheref.gen.cs
new file mode 100644
index 0000000000..758f2a80cc
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/Spheref.gen.cs
@@ -0,0 +1,51 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSpheref")]
+ [NativeName("Aliases", "XrSpherefKHR")]
+ public unsafe partial struct Spheref
+ {
+ public Spheref
+ (
+ Posef? center = null,
+ float? radius = null
+ ) : this()
+ {
+ if (center is not null)
+ {
+ Center = center.Value;
+ }
+
+ if (radius is not null)
+ {
+ Radius = radius.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrPosef")]
+ [NativeName("Type.Name", "XrPosef")]
+ [NativeName("Name", "center")]
+ public Posef Center;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "radius")]
+ public float Radius;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SpherefKHR.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SpherefKHR.gen.cs
new file mode 100644
index 0000000000..1cd3c23aa4
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SpherefKHR.gen.cs
@@ -0,0 +1,51 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSpherefKHR")]
+ [NativeName("AliasOf", "XrSpheref")]
+ public unsafe partial struct SpherefKHR
+ {
+ public SpherefKHR
+ (
+ Posef? center = null,
+ float? radius = null
+ ) : this()
+ {
+ if (center is not null)
+ {
+ Center = center.Value;
+ }
+
+ if (radius is not null)
+ {
+ Radius = radius.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrPosef")]
+ [NativeName("Type.Name", "XrPosef")]
+ [NativeName("Name", "center")]
+ public Posef Center;
+///
+ [NativeName("Type", "float")]
+ [NativeName("Type.Name", "float")]
+ [NativeName("Name", "radius")]
+ public float Radius;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SystemEnvironmentDepthPropertiesMETA.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SystemEnvironmentDepthPropertiesMETA.gen.cs
new file mode 100644
index 0000000000..1a062087f8
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SystemEnvironmentDepthPropertiesMETA.gen.cs
@@ -0,0 +1,72 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSystemEnvironmentDepthPropertiesMETA")]
+ public unsafe partial struct SystemEnvironmentDepthPropertiesMETA
+ {
+ public SystemEnvironmentDepthPropertiesMETA
+ (
+ StructureType? type = StructureType.TypeSystemEnvironmentDepthPropertiesMeta,
+ void* next = null,
+ uint? supportsEnvironmentDepth = null,
+ uint? supportsHandRemoval = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (supportsEnvironmentDepth is not null)
+ {
+ SupportsEnvironmentDepth = supportsEnvironmentDepth.Value;
+ }
+
+ if (supportsHandRemoval is not null)
+ {
+ SupportsHandRemoval = supportsHandRemoval.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrBool32")]
+ [NativeName("Type.Name", "XrBool32")]
+ [NativeName("Name", "supportsEnvironmentDepth")]
+ public uint SupportsEnvironmentDepth;
+///
+ [NativeName("Type", "XrBool32")]
+ [NativeName("Type.Name", "XrBool32")]
+ [NativeName("Name", "supportsHandRemoval")]
+ public uint SupportsHandRemoval;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SystemFaceTrackingProperties2FB.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SystemFaceTrackingProperties2FB.gen.cs
new file mode 100644
index 0000000000..7f8e3b9f27
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SystemFaceTrackingProperties2FB.gen.cs
@@ -0,0 +1,72 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSystemFaceTrackingProperties2FB")]
+ public unsafe partial struct SystemFaceTrackingProperties2FB
+ {
+ public SystemFaceTrackingProperties2FB
+ (
+ StructureType? type = StructureType.TypeSystemFaceTrackingProperties2FB,
+ void* next = null,
+ uint? supportsVisualFaceTracking = null,
+ uint? supportsAudioFaceTracking = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (supportsVisualFaceTracking is not null)
+ {
+ SupportsVisualFaceTracking = supportsVisualFaceTracking.Value;
+ }
+
+ if (supportsAudioFaceTracking is not null)
+ {
+ SupportsAudioFaceTracking = supportsAudioFaceTracking.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrBool32")]
+ [NativeName("Type.Name", "XrBool32")]
+ [NativeName("Name", "supportsVisualFaceTracking")]
+ public uint SupportsVisualFaceTracking;
+///
+ [NativeName("Type", "XrBool32")]
+ [NativeName("Type.Name", "XrBool32")]
+ [NativeName("Name", "supportsAudioFaceTracking")]
+ public uint SupportsAudioFaceTracking;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/SystemUserPresencePropertiesEXT.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/SystemUserPresencePropertiesEXT.gen.cs
new file mode 100644
index 0000000000..e743b97af0
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/SystemUserPresencePropertiesEXT.gen.cs
@@ -0,0 +1,61 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrSystemUserPresencePropertiesEXT")]
+ public unsafe partial struct SystemUserPresencePropertiesEXT
+ {
+ public SystemUserPresencePropertiesEXT
+ (
+ StructureType? type = StructureType.TypeSystemUserPresencePropertiesExt,
+ void* next = null,
+ uint? supportsUserPresence = null
+ ) : this()
+ {
+ if (type is not null)
+ {
+ Type = type.Value;
+ }
+
+ if (next is not null)
+ {
+ Next = next;
+ }
+
+ if (supportsUserPresence is not null)
+ {
+ SupportsUserPresence = supportsUserPresence.Value;
+ }
+ }
+
+///
+ [NativeName("Type", "XrStructureType")]
+ [NativeName("Type.Name", "XrStructureType")]
+ [NativeName("Name", "type")]
+ public StructureType Type;
+///
+ [NativeName("Type", "void*")]
+ [NativeName("Type.Name", "void")]
+ [NativeName("Name", "next")]
+ public void* Next;
+///
+ [NativeName("Type", "XrBool32")]
+ [NativeName("Type.Name", "XrBool32")]
+ [NativeName("Name", "supportsUserPresence")]
+ public uint SupportsUserPresence;
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/Uuid.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/Uuid.gen.cs
new file mode 100644
index 0000000000..a833e3f339
--- /dev/null
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/Uuid.gen.cs
@@ -0,0 +1,29 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Silk.NET.Core;
+using Silk.NET.Core.Native;
+using Silk.NET.Core.Attributes;
+using Silk.NET.Core.Contexts;
+using Silk.NET.Core.Loader;
+
+#pragma warning disable 1591
+
+namespace Silk.NET.OpenXR
+{
+ [NativeName("Name", "XrUuid")]
+ [NativeName("Aliases", "XrUuidEXT")]
+ public unsafe partial struct Uuid
+ {
+ ///
+ [NativeName("Type", "uint8_t")]
+ [NativeName("Type.Name", "uint8_t")]
+ [NativeName("Name", "data")]
+ public fixed byte Data[16];
+ }
+}
diff --git a/src/OpenXR/Silk.NET.OpenXR/Structs/UuidEXT.gen.cs b/src/OpenXR/Silk.NET.OpenXR/Structs/UuidEXT.gen.cs
index 07057ca9f0..7830767d65 100644
--- a/src/OpenXR/Silk.NET.OpenXR/Structs/UuidEXT.gen.cs
+++ b/src/OpenXR/Silk.NET.OpenXR/Structs/UuidEXT.gen.cs
@@ -17,6 +17,7 @@
namespace Silk.NET.OpenXR
{
[NativeName("Name", "XrUuidEXT")]
+ [NativeName("AliasOf", "XrUuid")]
public unsafe partial struct UuidEXT
{
///
diff --git a/src/OpenXR/Silk.NET.OpenXR/XR.cs b/src/OpenXR/Silk.NET.OpenXR/XR.cs
index 9595d245c8..097c82540d 100644
--- a/src/OpenXR/Silk.NET.OpenXR/XR.cs
+++ b/src/OpenXR/Silk.NET.OpenXR/XR.cs
@@ -1,6 +1,7 @@
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
+using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Threading;
@@ -44,7 +45,12 @@ public static XR GetApi()
/// to call an extension function from an extension that isn't loaded.
///
/// Whether the extension is available and loaded.
+#if NET5_0_OR_GREATER
+
+ public bool TryGetInstanceExtension<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors)] T>(string? layer, Instance instance, out T ext) where T : NativeExtension =>
+#else
public bool TryGetInstanceExtension(string? layer, Instance instance, out T ext) where T : NativeExtension =>
+#endif
!((ext = IsInstanceExtensionPresent(layer, ExtensionAttribute.GetExtensionAttribute(typeof(T)).Name)
? (T) Activator.CreateInstance
(typeof(T), new LamdaNativeContext(
diff --git a/src/OpenXR/Silk.NET.OpenXR/XR.gen.cs b/src/OpenXR/Silk.NET.OpenXR/XR.gen.cs
index 14fc239b4c..1f4d19d40a 100644
--- a/src/OpenXR/Silk.NET.OpenXR/XR.gen.cs
+++ b/src/OpenXR/Silk.NET.OpenXR/XR.gen.cs
@@ -16,10 +16,52 @@ namespace Silk.NET.OpenXR
{
public unsafe partial class XR : NativeAPI
{
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_API_LAYER_CREATE_INFO_STRUCT_VERSION")]
+ public const uint ApiLayerCreateInfoStructVersion = unchecked((uint) 1);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_API_LAYER_INFO_STRUCT_VERSION")]
+ public const uint ApiLayerInfoStructVersion = unchecked((uint) 1);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_API_LAYER_MAX_SETTINGS_PATH_SIZE")]
+ public const uint ApiLayerMaxSettingsPathSize = unchecked((uint) 512);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_API_LAYER_NEXT_INFO_STRUCT_VERSION")]
+ public const uint ApiLayerNextInfoStructVersion = unchecked((uint) 1);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_CURRENT_LOADER_API_LAYER_VERSION")]
+ public const uint CurrentLoaderApiLayerVersion = unchecked((uint) 1);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_CURRENT_LOADER_RUNTIME_VERSION")]
+ public const uint CurrentLoaderRuntimeVersion = unchecked((uint) 1);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_EXTENSION_ENUM_BASE")]
+ public const uint ExtensionEnumBase = unchecked((uint) 1000000000);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_EXTENSION_ENUM_STRIDE")]
+ public const uint ExtensionEnumStride = unchecked((uint) 1000);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_FACIAL_EXPRESSION_EYE_COUNT_HTC")]
+ public const uint FacialExpressionEyeCountHtc = unchecked((uint) 14);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_FACIAL_EXPRESSION_LIP_COUNT_HTC")]
+ public const uint FacialExpressionLipCountHtc = unchecked((uint) 37);
[NativeName("Type", "")]
[NativeName("Name", "XR_FALSE")]
public const uint False = unchecked((uint) 0);
[NativeName("Type", "")]
+ [NativeName("Name", "XR_FREQUENCY_UNSPECIFIED")]
+ public const uint FrequencyUnspecified = unchecked((uint) 0);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_HAND_FOREARM_JOINT_COUNT_ULTRALEAP")]
+ public const uint HandForearmJointCountUltraleap = unchecked((uint) 27);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_HAND_JOINT_COUNT_EXT")]
+ public const uint HandJointCountExt = unchecked((uint) 26);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_LOADER_INFO_STRUCT_VERSION")]
+ public const uint LoaderInfoStructVersion = unchecked((uint) 1);
+ [NativeName("Type", "")]
[NativeName("Name", "XR_MAX_ACTION_NAME_SIZE")]
public const uint MaxActionNameSize = unchecked((uint) 64);
[NativeName("Type", "")]
@@ -44,6 +86,9 @@ public unsafe partial class XR : NativeAPI
[NativeName("Name", "XR_MAX_GRAPHICS_APIS_SUPPORTED")]
public const uint MaxGraphicsApisSupported = unchecked((uint) 32);
[NativeName("Type", "")]
+ [NativeName("Name", "XR_MAX_HAPTIC_PCM_BUFFER_SIZE_FB")]
+ public const uint MaxHapticPcmBufferSizeFB = unchecked((uint) 4000);
+ [NativeName("Type", "")]
[NativeName("Name", "XR_MAX_LOCALIZED_ACTION_NAME_SIZE")]
public const uint MaxLocalizedActionNameSize = unchecked((uint) 128);
[NativeName("Type", "")]
@@ -65,8 +110,51 @@ public unsafe partial class XR : NativeAPI
[NativeName("Name", "XR_MAX_SYSTEM_NAME_SIZE")]
public const uint MaxSystemNameSize = unchecked((uint) 256);
[NativeName("Type", "")]
+ [NativeName("Name", "XR_MIN_COMPOSITION_LAYERS_SUPPORTED")]
+ public const uint MinCompositionLayersSupported = unchecked((uint) 16);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_MIN_HAPTIC_DURATION")]
+ public const uint MinHapticDuration = unchecked((uint) -1);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_NO_DURATION")]
+ public const uint NoDuration = unchecked((uint) 0);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_NULL_CONTROLLER_MODEL_KEY_MSFT")]
+ public const uint NullControllerModelKeyMsft = unchecked((uint) 0);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_NULL_PATH")]
+ public const uint NullPath = unchecked((uint) 0);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_NULL_RENDER_MODEL_KEY_FB")]
+ public const uint NullRenderModelKeyFB = unchecked((uint) 0);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_NULL_SYSTEM_ID")]
+ public const uint NullSystemID = unchecked((uint) 0);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_RUNTIME_INFO_STRUCT_VERSION")]
+ public const uint RuntimeInfoStructVersion = unchecked((uint) 1);
+ [NativeName("Type", "")]
[NativeName("Name", "XR_TRUE")]
public const uint True = unchecked((uint) 1);
+ [NativeName("Type", "")]
+ [NativeName("Name", "XR_UUID_SIZE")]
+ public const uint UuidSize = unchecked((uint) 16);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrLocateSpaces", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result LocateSpaces([Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] SpacesLocateInfo* locateInfo, [Count(Count = 0)] SpaceLocations* spaceLocations);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrLocateSpaces", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result LocateSpaces([Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] SpacesLocateInfo* locateInfo, [Count(Count = 0)] ref SpaceLocations spaceLocations);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrLocateSpaces", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result LocateSpaces([Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in SpacesLocateInfo locateInfo, [Count(Count = 0)] SpaceLocations* spaceLocations);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrLocateSpaces", Convention = CallingConvention.Winapi)]
+ public partial Result LocateSpaces([Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in SpacesLocateInfo locateInfo, [Count(Count = 0)] ref SpaceLocations spaceLocations);
/// To be documented.
[NativeApi(EntryPoint = "xrAcquireSwapchainImage", Convention = CallingConvention.Winapi)]
@@ -872,6 +960,102 @@ public unsafe partial class XR : NativeAPI
[NativeApi(EntryPoint = "xrWaitSwapchainImage", Convention = CallingConvention.Winapi)]
public partial Result WaitSwapchainImage([Count(Count = 0)] Swapchain swapchain, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in SwapchainImageWaitInfo waitInfo);
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrCreateApiLayerInstance", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result CreateApiLayerInstance([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] InstanceCreateInfo* info, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ApiLayerCreateInfo* layerInfo, [Count(Count = 0)] Instance* instance);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrCreateApiLayerInstance", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result CreateApiLayerInstance([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] InstanceCreateInfo* info, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ApiLayerCreateInfo* layerInfo, [Count(Count = 0)] ref Instance instance);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrCreateApiLayerInstance", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result CreateApiLayerInstance([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] InstanceCreateInfo* info, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in ApiLayerCreateInfo layerInfo, [Count(Count = 0)] Instance* instance);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrCreateApiLayerInstance", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result CreateApiLayerInstance([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] InstanceCreateInfo* info, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in ApiLayerCreateInfo layerInfo, [Count(Count = 0)] ref Instance instance);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrCreateApiLayerInstance", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result CreateApiLayerInstance([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in InstanceCreateInfo info, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ApiLayerCreateInfo* layerInfo, [Count(Count = 0)] Instance* instance);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrCreateApiLayerInstance", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result CreateApiLayerInstance([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in InstanceCreateInfo info, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ApiLayerCreateInfo* layerInfo, [Count(Count = 0)] ref Instance instance);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrCreateApiLayerInstance", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result CreateApiLayerInstance([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in InstanceCreateInfo info, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in ApiLayerCreateInfo layerInfo, [Count(Count = 0)] Instance* instance);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrCreateApiLayerInstance", Convention = CallingConvention.Winapi)]
+ public partial Result CreateApiLayerInstance([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in InstanceCreateInfo info, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in ApiLayerCreateInfo layerInfo, [Count(Count = 0)] ref Instance instance);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderApiLayerInterface", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result NegotiateLoaderApiLayerInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] NegotiateLoaderInfo* loaderInfo, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] byte* layerName, [Count(Count = 0)] NegotiateApiLayerRequest* apiLayerRequest);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderApiLayerInterface", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result NegotiateLoaderApiLayerInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] NegotiateLoaderInfo* loaderInfo, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] byte* layerName, [Count(Count = 0)] ref NegotiateApiLayerRequest apiLayerRequest);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderApiLayerInterface", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result NegotiateLoaderApiLayerInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] NegotiateLoaderInfo* loaderInfo, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in byte layerName, [Count(Count = 0)] NegotiateApiLayerRequest* apiLayerRequest);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderApiLayerInterface", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result NegotiateLoaderApiLayerInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] NegotiateLoaderInfo* loaderInfo, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in byte layerName, [Count(Count = 0)] ref NegotiateApiLayerRequest apiLayerRequest);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderApiLayerInterface", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result NegotiateLoaderApiLayerInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] NegotiateLoaderInfo* loaderInfo, [Flow(Silk.NET.Core.Native.FlowDirection.In), UnmanagedType(Silk.NET.Core.Native.UnmanagedType.LPUTF8Str)] string layerName, [Count(Count = 0)] NegotiateApiLayerRequest* apiLayerRequest);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderApiLayerInterface", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result NegotiateLoaderApiLayerInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] NegotiateLoaderInfo* loaderInfo, [Flow(Silk.NET.Core.Native.FlowDirection.In), UnmanagedType(Silk.NET.Core.Native.UnmanagedType.LPUTF8Str)] string layerName, [Count(Count = 0)] ref NegotiateApiLayerRequest apiLayerRequest);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderApiLayerInterface", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result NegotiateLoaderApiLayerInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in NegotiateLoaderInfo loaderInfo, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] byte* layerName, [Count(Count = 0)] NegotiateApiLayerRequest* apiLayerRequest);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderApiLayerInterface", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result NegotiateLoaderApiLayerInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in NegotiateLoaderInfo loaderInfo, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] byte* layerName, [Count(Count = 0)] ref NegotiateApiLayerRequest apiLayerRequest);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderApiLayerInterface", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result NegotiateLoaderApiLayerInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in NegotiateLoaderInfo loaderInfo, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in byte layerName, [Count(Count = 0)] NegotiateApiLayerRequest* apiLayerRequest);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderApiLayerInterface", Convention = CallingConvention.Winapi)]
+ public partial Result NegotiateLoaderApiLayerInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in NegotiateLoaderInfo loaderInfo, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in byte layerName, [Count(Count = 0)] ref NegotiateApiLayerRequest apiLayerRequest);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderApiLayerInterface", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result NegotiateLoaderApiLayerInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in NegotiateLoaderInfo loaderInfo, [Flow(Silk.NET.Core.Native.FlowDirection.In), UnmanagedType(Silk.NET.Core.Native.UnmanagedType.LPUTF8Str)] string layerName, [Count(Count = 0)] NegotiateApiLayerRequest* apiLayerRequest);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderApiLayerInterface", Convention = CallingConvention.Winapi)]
+ public partial Result NegotiateLoaderApiLayerInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in NegotiateLoaderInfo loaderInfo, [Flow(Silk.NET.Core.Native.FlowDirection.In), UnmanagedType(Silk.NET.Core.Native.UnmanagedType.LPUTF8Str)] string layerName, [Count(Count = 0)] ref NegotiateApiLayerRequest apiLayerRequest);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderRuntimeInterface", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result NegotiateLoaderRuntimeInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] NegotiateLoaderInfo* loaderInfo, [Count(Count = 0)] NegotiateRuntimeRequest* runtimeRequest);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderRuntimeInterface", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result NegotiateLoaderRuntimeInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] NegotiateLoaderInfo* loaderInfo, [Count(Count = 0)] ref NegotiateRuntimeRequest runtimeRequest);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderRuntimeInterface", Convention = CallingConvention.Winapi)]
+ public unsafe partial Result NegotiateLoaderRuntimeInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in NegotiateLoaderInfo loaderInfo, [Count(Count = 0)] NegotiateRuntimeRequest* runtimeRequest);
+
+ /// To be documented.
+ [NativeApi(EntryPoint = "xrNegotiateLoaderRuntimeInterface", Convention = CallingConvention.Winapi)]
+ public partial Result NegotiateLoaderRuntimeInterface([Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] [RequiresLocation] in NegotiateLoaderInfo loaderInfo, [Count(Count = 0)] ref NegotiateRuntimeRequest runtimeRequest);
+
/// To be documented.
public unsafe Result EnumerateApiLayerProperties([Count(Count = 0)] uint* propertyCountOutput, [Count(Parameter = "propertyCapacityInput")] Span properties)
{
diff --git a/src/OpenXR/Silk.NET.OpenXR/XROverloads.gen.cs b/src/OpenXR/Silk.NET.OpenXR/XROverloads.gen.cs
index c87c9bec96..fe5ecc82f3 100644
--- a/src/OpenXR/Silk.NET.OpenXR/XROverloads.gen.cs
+++ b/src/OpenXR/Silk.NET.OpenXR/XROverloads.gen.cs
@@ -16,6 +16,27 @@ namespace Silk.NET.OpenXR
{
public static class XROverloads
{
+ /// To be documented.
+ public static unsafe Result LocateSpaces(this XR thisApi, [Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] SpacesLocateInfo* locateInfo, [Count(Count = 0)] Span spaceLocations)
+ {
+ // SpanOverloader
+ return thisApi.LocateSpaces(session, locateInfo, ref spaceLocations.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result LocateSpaces(this XR thisApi, [Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan locateInfo, [Count(Count = 0)] SpaceLocations* spaceLocations)
+ {
+ // SpanOverloader
+ return thisApi.LocateSpaces(session, in locateInfo.GetPinnableReference(), spaceLocations);
+ }
+
+ /// To be documented.
+ public static unsafe Result LocateSpaces(this XR thisApi, [Count(Count = 0)] Session session, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan locateInfo, [Count(Count = 0)] Span spaceLocations)
+ {
+ // SpanOverloader
+ return thisApi.LocateSpaces(session, in locateInfo.GetPinnableReference(), ref spaceLocations.GetPinnableReference());
+ }
+
/// To be documented.
public static unsafe Result AcquireSwapchainImage(this XR thisApi, [Count(Count = 0)] Swapchain swapchain, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] SwapchainImageAcquireInfo* acquireInfo, [Count(Count = 0)] Span index)
{
@@ -985,6 +1006,146 @@ public static unsafe Result WaitSwapchainImage(this XR thisApi, [Count(Count = 0
return thisApi.WaitSwapchainImage(swapchain, in waitInfo.GetPinnableReference());
}
+ /// To be documented.
+ public static unsafe Result CreateApiLayerInstance(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] InstanceCreateInfo* info, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ApiLayerCreateInfo* layerInfo, [Count(Count = 0)] Span instance)
+ {
+ // SpanOverloader
+ return thisApi.CreateApiLayerInstance(info, layerInfo, ref instance.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result CreateApiLayerInstance(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] InstanceCreateInfo* info, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan layerInfo, [Count(Count = 0)] Instance* instance)
+ {
+ // SpanOverloader
+ return thisApi.CreateApiLayerInstance(info, in layerInfo.GetPinnableReference(), instance);
+ }
+
+ /// To be documented.
+ public static unsafe Result CreateApiLayerInstance(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] InstanceCreateInfo* info, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan layerInfo, [Count(Count = 0)] Span instance)
+ {
+ // SpanOverloader
+ return thisApi.CreateApiLayerInstance(info, in layerInfo.GetPinnableReference(), ref instance.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result CreateApiLayerInstance(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan info, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ApiLayerCreateInfo* layerInfo, [Count(Count = 0)] Instance* instance)
+ {
+ // SpanOverloader
+ return thisApi.CreateApiLayerInstance(in info.GetPinnableReference(), layerInfo, instance);
+ }
+
+ /// To be documented.
+ public static unsafe Result CreateApiLayerInstance(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan info, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ApiLayerCreateInfo* layerInfo, [Count(Count = 0)] Span instance)
+ {
+ // SpanOverloader
+ return thisApi.CreateApiLayerInstance(in info.GetPinnableReference(), layerInfo, ref instance.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result CreateApiLayerInstance(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan info, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan layerInfo, [Count(Count = 0)] Instance* instance)
+ {
+ // SpanOverloader
+ return thisApi.CreateApiLayerInstance(in info.GetPinnableReference(), in layerInfo.GetPinnableReference(), instance);
+ }
+
+ /// To be documented.
+ public static unsafe Result CreateApiLayerInstance(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan info, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan layerInfo, [Count(Count = 0)] Span instance)
+ {
+ // SpanOverloader
+ return thisApi.CreateApiLayerInstance(in info.GetPinnableReference(), in layerInfo.GetPinnableReference(), ref instance.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result NegotiateLoaderApiLayerInterface(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] NegotiateLoaderInfo* loaderInfo, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] byte* layerName, [Count(Count = 0)] Span apiLayerRequest)
+ {
+ // SpanOverloader
+ return thisApi.NegotiateLoaderApiLayerInterface(loaderInfo, layerName, ref apiLayerRequest.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result NegotiateLoaderApiLayerInterface(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] NegotiateLoaderInfo* loaderInfo, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan layerName, [Count(Count = 0)] NegotiateApiLayerRequest* apiLayerRequest)
+ {
+ // SpanOverloader
+ return thisApi.NegotiateLoaderApiLayerInterface(loaderInfo, in layerName.GetPinnableReference(), apiLayerRequest);
+ }
+
+ /// To be documented.
+ public static unsafe Result NegotiateLoaderApiLayerInterface(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] NegotiateLoaderInfo* loaderInfo, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan layerName, [Count(Count = 0)] Span apiLayerRequest)
+ {
+ // SpanOverloader
+ return thisApi.NegotiateLoaderApiLayerInterface(loaderInfo, in layerName.GetPinnableReference(), ref apiLayerRequest.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result NegotiateLoaderApiLayerInterface(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] NegotiateLoaderInfo* loaderInfo, [Flow(Silk.NET.Core.Native.FlowDirection.In), UnmanagedType(Silk.NET.Core.Native.UnmanagedType.LPUTF8Str)] string layerName, [Count(Count = 0)] Span apiLayerRequest)
+ {
+ // SpanOverloader
+ return thisApi.NegotiateLoaderApiLayerInterface(loaderInfo, layerName, ref apiLayerRequest.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result NegotiateLoaderApiLayerInterface(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan loaderInfo, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] byte* layerName, [Count(Count = 0)] NegotiateApiLayerRequest* apiLayerRequest)
+ {
+ // SpanOverloader
+ return thisApi.NegotiateLoaderApiLayerInterface(in loaderInfo.GetPinnableReference(), layerName, apiLayerRequest);
+ }
+
+ /// To be documented.
+ public static unsafe Result NegotiateLoaderApiLayerInterface(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan loaderInfo, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] byte* layerName, [Count(Count = 0)] Span apiLayerRequest)
+ {
+ // SpanOverloader
+ return thisApi.NegotiateLoaderApiLayerInterface(in loaderInfo.GetPinnableReference(), layerName, ref apiLayerRequest.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result NegotiateLoaderApiLayerInterface(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan loaderInfo, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan layerName, [Count(Count = 0)] NegotiateApiLayerRequest* apiLayerRequest)
+ {
+ // SpanOverloader
+ return thisApi.NegotiateLoaderApiLayerInterface(in loaderInfo.GetPinnableReference(), in layerName.GetPinnableReference(), apiLayerRequest);
+ }
+
+ /// To be documented.
+ public static unsafe Result NegotiateLoaderApiLayerInterface(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan loaderInfo, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan layerName, [Count(Count = 0)] Span apiLayerRequest)
+ {
+ // SpanOverloader
+ return thisApi.NegotiateLoaderApiLayerInterface(in loaderInfo.GetPinnableReference(), in layerName.GetPinnableReference(), ref apiLayerRequest.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result NegotiateLoaderApiLayerInterface(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan loaderInfo, [Flow(Silk.NET.Core.Native.FlowDirection.In), UnmanagedType(Silk.NET.Core.Native.UnmanagedType.LPUTF8Str)] string layerName, [Count(Count = 0)] NegotiateApiLayerRequest* apiLayerRequest)
+ {
+ // SpanOverloader
+ return thisApi.NegotiateLoaderApiLayerInterface(in loaderInfo.GetPinnableReference(), layerName, apiLayerRequest);
+ }
+
+ /// To be documented.
+ public static unsafe Result NegotiateLoaderApiLayerInterface(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan loaderInfo, [Flow(Silk.NET.Core.Native.FlowDirection.In), UnmanagedType(Silk.NET.Core.Native.UnmanagedType.LPUTF8Str)] string layerName, [Count(Count = 0)] Span apiLayerRequest)
+ {
+ // SpanOverloader
+ return thisApi.NegotiateLoaderApiLayerInterface(in loaderInfo.GetPinnableReference(), layerName, ref apiLayerRequest.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result NegotiateLoaderRuntimeInterface(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] NegotiateLoaderInfo* loaderInfo, [Count(Count = 0)] Span runtimeRequest)
+ {
+ // SpanOverloader
+ return thisApi.NegotiateLoaderRuntimeInterface(loaderInfo, ref runtimeRequest.GetPinnableReference());
+ }
+
+ /// To be documented.
+ public static unsafe Result NegotiateLoaderRuntimeInterface(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan loaderInfo, [Count(Count = 0)] NegotiateRuntimeRequest* runtimeRequest)
+ {
+ // SpanOverloader
+ return thisApi.NegotiateLoaderRuntimeInterface(in loaderInfo.GetPinnableReference(), runtimeRequest);
+ }
+
+ /// To be documented.
+ public static unsafe Result NegotiateLoaderRuntimeInterface(this XR thisApi, [Count(Count = 0), Flow(Silk.NET.Core.Native.FlowDirection.In)] ReadOnlySpan loaderInfo, [Count(Count = 0)] Span runtimeRequest)
+ {
+ // SpanOverloader
+ return thisApi.NegotiateLoaderRuntimeInterface(in loaderInfo.GetPinnableReference(), ref runtimeRequest.GetPinnableReference());
+ }
+
}
}
diff --git a/src/SPIRV/Silk.NET.SPIRV.Cross/Cross.cs b/src/SPIRV/Silk.NET.SPIRV.Cross/Cross.cs
index c5ba8b2903..18a01345ad 100644
--- a/src/SPIRV/Silk.NET.SPIRV.Cross/Cross.cs
+++ b/src/SPIRV/Silk.NET.SPIRV.Cross/Cross.cs
@@ -23,10 +23,7 @@ public static Cross GetApi()
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return ext is not null;
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/SPIRV/Silk.NET.SPIRV.Reflect/Reflect.cs b/src/SPIRV/Silk.NET.SPIRV.Reflect/Reflect.cs
index 7b4a613268..7e33c86cc2 100644
--- a/src/SPIRV/Silk.NET.SPIRV.Reflect/Reflect.cs
+++ b/src/SPIRV/Silk.NET.SPIRV.Reflect/Reflect.cs
@@ -23,10 +23,7 @@ public static Reflect GetApi()
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return ext is not null;
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/SPIRV/Silk.NET.Shaderc/Shaderc.cs b/src/SPIRV/Silk.NET.Shaderc/Shaderc.cs
index eef78f482e..d195b207ed 100644
--- a/src/SPIRV/Silk.NET.Shaderc/Shaderc.cs
+++ b/src/SPIRV/Silk.NET.Shaderc/Shaderc.cs
@@ -23,10 +23,7 @@ public static Shaderc GetApi()
public bool TryGetExtension(out T ext)
where T:NativeExtension
{
- ext = IsExtensionPresent(GetExtensionAttribute(typeof(T)).Name)
- ? (T) Activator.CreateInstance(typeof(T), Context)
- : null;
- return ext is not null;
+ throw new NotImplementedException();
}
public override bool IsExtensionPresent(string extension)
diff --git a/src/Vulkan/Silk.NET.Vulkan/Vk.cs b/src/Vulkan/Silk.NET.Vulkan/Vk.cs
index d51fd65eed..b26f9eb019 100644
--- a/src/Vulkan/Silk.NET.Vulkan/Vk.cs
+++ b/src/Vulkan/Silk.NET.Vulkan/Vk.cs
@@ -1,6 +1,7 @@
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
+using System.Diagnostics.CodeAnalysis;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
@@ -119,7 +120,11 @@ protected override void PostInit()
/// to call an extension function from an extension that isn't loaded.
///
/// Whether the extension is available and loaded.
+#if NET5_0_OR_GREATER
+ public bool TryGetInstanceExtension<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors)] T>(Instance instance, out T ext, string layer = null) where T : NativeExtension =>
+#else
public bool TryGetInstanceExtension(Instance instance, out T ext, string layer = null) where T : NativeExtension =>
+#endif
!((ext = IsInstanceExtensionPresent(ExtensionAttribute.GetExtensionAttribute(typeof(T)).Name, layer)
? (T)Activator.CreateInstance
(typeof(T), new LamdaNativeContext(x => GetInstanceProcAddr(instance, x)))
@@ -138,7 +143,11 @@ public bool TryGetInstanceExtension(Instance instance, out T ext, string laye
/// to call an extension function from an extension that isn't loaded.
///
/// Whether the extension is available and loaded.
+#if NET5_0_OR_GREATER
+ public bool TryGetDeviceExtension<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors)] T>
+#else
public bool TryGetDeviceExtension
+#endif
(Instance instance, Device device, out T ext, string layer = null) where T : NativeExtension =>
!((ext = IsDeviceExtensionPresent(instance, ExtensionAttribute.GetExtensionAttribute(typeof(T)).Name, layer)
? (T)Activator.CreateInstance
diff --git a/src/WebGPU/Silk.NET.WebGPU/WebGPU.cs b/src/WebGPU/Silk.NET.WebGPU/WebGPU.cs
index 8e8bfd3eae..090a69db9b 100644
--- a/src/WebGPU/Silk.NET.WebGPU/WebGPU.cs
+++ b/src/WebGPU/Silk.NET.WebGPU/WebGPU.cs
@@ -1,4 +1,5 @@
using System;
+using System.Diagnostics.CodeAnalysis;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System.Text;
@@ -26,7 +27,11 @@ public override bool IsExtensionPresent(string name)
throw new NotSupportedException();
}
+#if NET5_0_OR_GREATER
+ public unsafe bool TryGetDeviceExtension<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors)] T>(Device* device, out T ext)
+#else
public unsafe bool TryGetDeviceExtension(Device* device, out T ext)
+#endif
where T:NativeExtension
{
ext = IsDeviceExtensionPresent(device, GetExtensionAttribute(typeof(T)).Name)
diff --git a/src/Windowing/Silk.NET.GLFW/GlfwCallbacks.cs b/src/Windowing/Silk.NET.GLFW/GlfwCallbacks.cs
index 5013e96c72..400741f27f 100644
--- a/src/Windowing/Silk.NET.GLFW/GlfwCallbacks.cs
+++ b/src/Windowing/Silk.NET.GLFW/GlfwCallbacks.cs
@@ -2,6 +2,7 @@
// The .NET Foundation licenses this file to you under the MIT license.
using System;
+using System.Runtime.InteropServices;
namespace Silk.NET.GLFW
{
@@ -16,6 +17,7 @@ public static unsafe class GlfwCallbacks
/// The window that received the event.
/// The Unicode code point of the character.
///
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void CharCallback(WindowHandle* window, uint codepoint);
///
@@ -26,6 +28,7 @@ public static unsafe class GlfwCallbacks
/// The Unicode code point of the character.
/// Bit field describing which modifier keys were held down.
///
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void CharModsCallback(WindowHandle* window, uint codepoint, KeyModifiers modifiers);
///
@@ -34,6 +37,7 @@ public static unsafe class GlfwCallbacks
/// The window that received the event.
/// true if the cursor entered the window's client area, or false if it left it.
///
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void CursorEnterCallback(WindowHandle* window, bool entered);
///
@@ -43,6 +47,7 @@ public static unsafe class GlfwCallbacks
/// The new cursor x-coordinate, relative to the left edge of the client area.
/// The new cursor y-coordinate, relative to the top edge of the client area.
///
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void CursorPosCallback(WindowHandle* window, double x, double y);
///
@@ -52,6 +57,7 @@ public static unsafe class GlfwCallbacks
/// The number of dropped files.
/// The UTF-8 encoded file and/or directory path names.
///
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void DropCallback(WindowHandle* window, int count, nint paths);
///
@@ -59,6 +65,7 @@ public static unsafe class GlfwCallbacks
///
/// An error code.
/// A UTF-8 encoded string describing the error.
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void ErrorCallback(ErrorCode error, string description);
///
@@ -69,6 +76,7 @@ public static unsafe class GlfwCallbacks
/// One of or .
///
///
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void JoystickCallback(int joystick, ConnectedState state);
///
@@ -80,6 +88,7 @@ public static unsafe class GlfwCallbacks
/// The for that .
/// Bit field describing which modifier keys were held down.
///
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void KeyCallback(WindowHandle* window, Keys key, int scanCode, InputAction action,
KeyModifiers mods);
@@ -91,6 +100,7 @@ public delegate void KeyCallback(WindowHandle* window, Keys key, int scanCode, I
/// One of or .
///
///
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void MonitorCallback(Monitor* monitor, ConnectedState state);
///
@@ -101,6 +111,7 @@ public delegate void KeyCallback(WindowHandle* window, Keys key, int scanCode, I
/// One of or .
/// Bit field describing which modifier keys were held down.
///
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void
MouseButtonCallback(WindowHandle* window, MouseButton button, InputAction action,
KeyModifiers mods);
@@ -112,6 +123,7 @@ public delegate void
/// The scroll offset along the x-axis.
/// The scroll offset along the y-axis.
///
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void ScrollCallback(WindowHandle* window, double offsetX, double offsetY);
///
@@ -119,6 +131,7 @@ public delegate void
///
/// The window that the user attempted to close.
///
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void WindowCloseCallback(WindowHandle* window);
///
@@ -127,6 +140,7 @@ public delegate void
/// The window that gained or lost input focus.
/// true if the window was given input focus, or false if it lost it.
///
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void WindowFocusCallback(WindowHandle* window, bool focused);
///
@@ -135,6 +149,7 @@ public delegate void
/// The window that was iconified or restored.
/// true if the window was iconified(minimized), or false if it was restored.
///
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void WindowIconifyCallback(WindowHandle* window, bool iconified);
///
@@ -142,6 +157,7 @@ public delegate void
///
/// The window that was maximized or restored.
/// true if the window was maximized, or false if it was restored.
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void WindowMaximizeCallback(WindowHandle* window, bool maximized);
///
@@ -155,12 +171,14 @@ public delegate void
/// The new y-coordinate, in screen coordinates, of the upper-left corner of the client area of the window.
///
///
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void WindowPosCallback(WindowHandle* window, int x, int y);
///
/// The function signature for window refresh functions.
///
/// The window that needs to be refreshed.
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void WindowRefreshCallback(WindowHandle* window);
///
@@ -170,6 +188,7 @@ public delegate void
/// The new width, in screen coordinates, of the window.
/// The new height, in screen coordinates, of the window.
///
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void WindowSizeCallback(WindowHandle* window, int width, int height);
///
@@ -178,6 +197,7 @@ public delegate void
/// The window whose framebuffer was resized.
/// The new width, in pixels, of the framebuffer.
/// The new height, in pixels, of the framebuffer.
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void FramebufferSizeCallback(WindowHandle* window, int width, int height);
}
-}
\ No newline at end of file
+}
diff --git a/src/Windowing/Silk.NET.GLFW/Silk.NET.GLFW.csproj b/src/Windowing/Silk.NET.GLFW/Silk.NET.GLFW.csproj
index 89ed2343fd..b51d4cea2c 100644
--- a/src/Windowing/Silk.NET.GLFW/Silk.NET.GLFW.csproj
+++ b/src/Windowing/Silk.NET.GLFW/Silk.NET.GLFW.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/src/Windowing/Silk.NET.SDL/Silk.NET.SDL.csproj b/src/Windowing/Silk.NET.SDL/Silk.NET.SDL.csproj
index 85cd4cac2b..989b41ebcd 100644
--- a/src/Windowing/Silk.NET.SDL/Silk.NET.SDL.csproj
+++ b/src/Windowing/Silk.NET.SDL/Silk.NET.SDL.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/src/Windowing/Silk.NET.Windowing.Common/Internals/ViewImplementationBase.cs b/src/Windowing/Silk.NET.Windowing.Common/Internals/ViewImplementationBase.cs
index c9b108137a..caef47152c 100644
--- a/src/Windowing/Silk.NET.Windowing.Common/Internals/ViewImplementationBase.cs
+++ b/src/Windowing/Silk.NET.Windowing.Common/Internals/ViewImplementationBase.cs
@@ -39,7 +39,7 @@ internal abstract class ViewImplementationBase : IView
private int _rented;
// Ensure we keep SwapInterval up-to-date
- private bool _swapIntervalChanged = true;
+ protected bool _swapIntervalChanged = true;
///
/// Creates a base view with the given options.
diff --git a/src/Windowing/Silk.NET.Windowing.Common/Internals/WindowImplementationBase.cs b/src/Windowing/Silk.NET.Windowing.Common/Internals/WindowImplementationBase.cs
index b40660dd35..ff155fd40d 100644
--- a/src/Windowing/Silk.NET.Windowing.Common/Internals/WindowImplementationBase.cs
+++ b/src/Windowing/Silk.NET.Windowing.Common/Internals/WindowImplementationBase.cs
@@ -60,6 +60,7 @@ protected WindowImplementationBase(WindowOptions optionsCache) : base(new ViewOp
// Lifetime controls
protected override void CoreInitialize(ViewOptions opts)
{
+ _swapIntervalChanged = true;
ExtendedOptionsCache.ShouldSwapAutomatically = opts.ShouldSwapAutomatically;
ExtendedOptionsCache.IsEventDriven = opts.IsEventDriven;
ExtendedOptionsCache.FramesPerSecond = opts.FramesPerSecond;
@@ -157,6 +158,7 @@ public WindowState WindowState
CoreWindowState = value;
}
+ _swapIntervalChanged = true;
ExtendedOptionsCache.WindowState = value;
}
}
diff --git a/src/Windowing/Silk.NET.Windowing.Glfw/GlfwWindow.cs b/src/Windowing/Silk.NET.Windowing.Glfw/GlfwWindow.cs
index aa4ff74423..67f0bd8d36 100644
--- a/src/Windowing/Silk.NET.Windowing.Glfw/GlfwWindow.cs
+++ b/src/Windowing/Silk.NET.Windowing.Glfw/GlfwWindow.cs
@@ -562,6 +562,7 @@ public override IMonitor? Monitor
}
set
{
+ _swapIntervalChanged = true;
if (!IsInitialized)
{
throw new InvalidOperationException("Window is not running.");
diff --git a/src/Windowing/Silk.NET.Windowing.Sdl/SdlWindow.cs b/src/Windowing/Silk.NET.Windowing.Sdl/SdlWindow.cs
index c2d6d394ad..318234a363 100644
--- a/src/Windowing/Silk.NET.Windowing.Sdl/SdlWindow.cs
+++ b/src/Windowing/Silk.NET.Windowing.Sdl/SdlWindow.cs
@@ -121,6 +121,7 @@ public WindowState WindowState
: _extendedOptionsCache.WindowState;
set
{
+ _swapIntervalChanged = true;
_extendedOptionsCache.WindowState = value;
if (!IsInitialized)
{
@@ -269,6 +270,7 @@ public IMonitor? Monitor
}
set
{
+ _swapIntervalChanged = true;
if (!IsInitialized)
{
throw new InvalidOperationException("Window is not initialized.");
@@ -430,6 +432,7 @@ public override void ProcessEvents()
protected override void CoreInitialize(ViewOptions opts)
{
+ _swapIntervalChanged = true;
Sdl.Setenv("SDL_VIDEO_X11_WMCLASS", WindowClass, 1);
WindowFlags flags = 0;