diff --git a/.gitmodules b/.gitmodules
index 3b16b5edff..16f6d2f163 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,11 +1,11 @@
[submodule "submodules/terrafx.interop.windows"]
path = eng/submodules/terrafx.interop.windows
url = https://github.com/terrafx/terrafx.interop.windows
-[submodule "eng/submodules/opengl"]
- path = eng/submodules/opengl
+[submodule "eng/submodules/opengl-registry"]
+ path = eng/submodules/opengl-registry
url = https://github.com/KhronosGroup/OpenGL-Registry.git
-[submodule "eng/submodules/egl"]
- path = eng/submodules/egl
+[submodule "eng/submodules/egl-registry"]
+ path = eng/submodules/egl-registry
url = https://github.com/KhronosGroup/EGL-Registry/
[submodule "eng/submodules/sdl"]
path = eng/submodules/sdl
@@ -16,9 +16,45 @@
[submodule "eng/submodules/openal-soft"]
path = eng/submodules/openal-soft
url = https://github.com/kcat/openal-soft
-[submodule "eng/submodules/vulkan"]
- path = eng/submodules/vulkan
+[submodule "eng/submodules/vulkan-docs"]
+ path = eng/submodules/vulkan-docs
url = https://github.com/KhronosGroup/Vulkan-Docs.git
[submodule "eng/submodules/vulkan-headers"]
path = eng/submodules/vulkan-headers
url = https://github.com/KhronosGroup/Vulkan-Headers.git
+[submodule "eng/submodules/assimp"]
+ path = eng/submodules/assimp
+ url = https://github.com/assimp/assimp
+[submodule "eng/submodules/spirv-tools"]
+ path = eng/submodules/spirv-tools
+ url = https://github.com/KhronosGroup/SPIRV-Tools
+[submodule "eng/submodules/spirv-reflect"]
+ path = eng/submodules/spirv-reflect
+ url = https://github.com/KhronosGroup/SPIRV-Reflect.git
+[submodule "eng/submodules/spirv-headers"]
+ path = eng/submodules/spirv-headers
+ url = https://github.com/KhronosGroup/SPIRV-Headers
+[submodule "eng/submodules/spirv-cross"]
+ path = eng/submodules/spirv-cross
+ url = https://github.com/KhronosGroup/SPIRV-Cross
+[submodule "eng/submodules/shaderc"]
+ path = eng/submodules/shaderc
+ url = https://github.com/google/shaderc
+[submodule "eng/submodules/moltenvk"]
+ path = eng/submodules/moltenvk
+ url = https://github.com/KhronosGroup/MoltenVK
+[submodule "eng/submodules/vulkan-memory-allocator"]
+ path = eng/submodules/vulkan-memory-allocator
+ url = https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git
+[submodule "eng/submodules/glslang"]
+ path = eng/submodules/glslang
+ url = https://github.com/KhronosGroup/glslang.git
+[submodule "eng/submodules/openxr-sdk"]
+ path = eng/submodules/openxr-sdk
+ url = https://github.com/KhronosGroup/OpenXR-SDK.git
+[submodule "eng/submodules/opencl-docs"]
+ path = eng/submodules/opencl-docs
+ url = https://github.com/KhronosGroup/OpenCL-Docs.git
+[submodule "eng/submodules/opencl-headers"]
+ path = eng/submodules/opencl-headers
+ url = https://github.com/KhronosGroup/OpenCL-Headers.git
diff --git a/.silktouch/opencl-clangsharp.stout b/.silktouch/opencl-clangsharp.stout
new file mode 100644
index 0000000000..87b3ce0856
Binary files /dev/null and b/.silktouch/opencl-clangsharp.stout differ
diff --git a/.silktouch/openxr-clangsharp.stout b/.silktouch/openxr-clangsharp.stout
new file mode 100644
index 0000000000..252ca036b2
Binary files /dev/null and b/.silktouch/openxr-clangsharp.stout differ
diff --git a/Silk.NET.slnx b/Silk.NET.slnx
index 3212772f0c..92374af89a 100644
--- a/Silk.NET.slnx
+++ b/Silk.NET.slnx
@@ -54,9 +54,15 @@
+
+
+
+
+
+
diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md
index 5ff74b19d5..75b7998a2d 100644
--- a/docs/CHANGELOG.md
+++ b/docs/CHANGELOG.md
@@ -12,6 +12,8 @@ Silk.NET 3.0 Preview 1
- Added combined OpenGL bindings using the 3.0 bindings style.
- Added OpenAL bindings using the 3.0 bindings style.
+- Added OpenCL bindings using the 3.0 bindings style.
+- Added OpenXR bindings using the 3.0 bindings style.
- Added SDL3 bindings using the 3.0 bindings style.
- Added Vulkan bindings using the 3.0 bindings style.
- Improved the bindings style to be more accessible, IDE-friendly, and AOT-friendly. Learn more at **TODO ADD A LINK TO DOCUMENTATION HERE**.
diff --git a/docs/for-contributors/Generator/api-specific-notes.md b/docs/for-contributors/Generator/api-specific-notes.md
index 3d3c4175a4..49109b57be 100644
--- a/docs/for-contributors/Generator/api-specific-notes.md
+++ b/docs/for-contributors/Generator/api-specific-notes.md
@@ -1,23 +1,66 @@
# API-Specific Notes
This document's purpose is to note down any decisions or quirks that are specific to a library that Silk is generating
-bindings for.
+bindings for. It is fine for a section to be empty if we do not have any notes specific to that library.
This is meant to be a living document. Please update this as new work is being done on the generator.
-## OpenAL
+Certain APIs are grouped together because they share similar characteristics.
-Currently empty.
+## C Bindings
+
+These are APIs that can be categorized as being straightforward C APIs or are C APIs that simply do not share
+characteristics with other bindings.
-## OpenGL
+### SDL
Currently empty.
-## SDL
+## Khronos Bindings
-Currently empty.
+These are APIs managed either by Khronos or APIs managed in a similar way to the official Khronos APIs.
+These use the `MixKhronosData` mod and come with an XML spec.
+
+Be aware that the XML spec links point to the latest version. Silk's repo may be using an older version of these XML
+files.
+
+### OpenAL
+
+Spec file used: https://raw.githubusercontent.com/kcat/openal-soft/master/registry/xml/al.xml
+
+### OpenCL
+
+Spec file used: https://raw.githubusercontent.com/KhronosGroup/OpenCL-Docs/main/xml/cl.xml
+
+The following warning is expected since we do not want to hardcode the version in our entrypoint header:
+
+```
+warning: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 310 (OpenCL 3.1) [-W#pragma-messages]
+```
+
+### OpenGL
+
+Spec file used: https://raw.githubusercontent.com/KhronosGroup/OpenGL-Registry/main/xml/gl.xml
+
+### OpenXR
+
+Spec file used: https://raw.githubusercontent.com/KhronosGroup/OpenXR-SDK/main/specification/registry/xr.xml
+
+There will be the following errors in the generation log. This is expected. These types are part of the XML
+specification, but not part of the main `openxr.h` header.
+
+API Constants shows up here, but not in Vulkan because OpenXR's XML lacks the `type="constants"` attribute that
+Vulkan's XML has.
+
+```
+fail: Silk.NET.SilkTouch.Mods.MixKhronosData[0] Enum "API Constants" has no base type. Please add TypeMap entry to the configuration. This enum group will be skipped.
+fail: Silk.NET.SilkTouch.Mods.MixKhronosData[0] Enum "XrAndroidThreadTypeKHR" has no base type. Please add TypeMap entry to the configuration. This enum group will be skipped.
+fail: Silk.NET.SilkTouch.Mods.MixKhronosData[0] Enum "XrLoaderInterfaceStructs" has no base type. Please add TypeMap entry to the configuration. This enum group will be skipped.
+```
+
+### Vulkan
-## Vulkan
+Spec file used: https://raw.githubusercontent.com/KhronosGroup/Vulkan-Docs/main/xml/vk.xml
There will be the following errors in the generation log. This is expected. These types are part of the XML
specification, but not part of the main `vulkan.h` header.
diff --git a/docs/for-contributors/Generator/generator-mods.md b/docs/for-contributors/Generator/generator-mods.md
index ff56581087..c8793b129d 100644
--- a/docs/for-contributors/Generator/generator-mods.md
+++ b/docs/for-contributors/Generator/generator-mods.md
@@ -496,13 +496,13 @@ the mod.
Khronos-style XML specifications:
-- OpenAL: https://raw.githubusercontent.com/kcat/openal-soft/refs/heads/master/registry/xml/al.xml
-- OpenCL: https://raw.githubusercontent.com/KhronosGroup/OpenCL-Docs/refs/heads/main/xml/cl.xml
-- OpenGL: https://raw.githubusercontent.com/KhronosGroup/OpenGL-Registry/refs/heads/main/xml/gl.xml
+- OpenAL: https://raw.githubusercontent.com/kcat/openal-soft/master/registry/xml/al.xml
+- OpenCL: https://raw.githubusercontent.com/KhronosGroup/OpenCL-Docs/main/xml/cl.xml
+- OpenGL: https://raw.githubusercontent.com/KhronosGroup/OpenGL-Registry/main/xml/gl.xml
- OpenGL Windows: https://raw.githubusercontent.com/KhronosGroup/OpenGL-Registry/main/xml/wgl.xml
-- OpenGL X11: https://github.com/KhronosGroup/OpenGL-Registry/blob/main/xml/glx.xml
-- OpenXR: https://raw.githubusercontent.com/KhronosGroup/OpenXR-SDK-Source/main/specification/registry/xr.xml
-- Vulkan: https://raw.githubusercontent.com/KhronosGroup/Vulkan-Docs/refs/heads/main/xml/vk.xml
+- OpenGL X11: https://raw.githubusercontent.com/KhronosGroup/OpenGL-Registry/main/xml/glx.xml
+- OpenXR: https://raw.githubusercontent.com/KhronosGroup/OpenXR-SDK/main/specification/registry/xr.xml
+- Vulkan: https://raw.githubusercontent.com/KhronosGroup/Vulkan-Docs/main/xml/vk.xml
Be aware that these link to the latest version. Silk's repo may be using an older version of these XML files.
diff --git a/docs/for-contributors/Generator/using-the-generator.md b/docs/for-contributors/Generator/using-the-generator.md
index 70eb00493c..65cc4c7f7b 100644
--- a/docs/for-contributors/Generator/using-the-generator.md
+++ b/docs/for-contributors/Generator/using-the-generator.md
@@ -15,12 +15,15 @@ Metal.
## Generator Overview
-There are two main things to configure:
+There are three main things to configure:
1. Silk 3 - This is the [`generator.json`](https://github.com/dotnet/Silk.NET/blob/develop/3.0/generator.json) file.
2. ClangSharpPInvokeGenerator - This is the [`eng/silktouch`](https://github.com/dotnet/Silk.NET/tree/develop/3.0/eng/silktouch) folder.
+3. C# Project File - This is your typical `.csproj` file and add it to your solution before running the SilkTouch
+ generator.
+
Both are organized by native API.
Note: For the average C API, SDL's generator configuration would be the best configuration to reference. Most options
@@ -63,7 +66,7 @@ Note that these files can be stored anywhere since the SilkTouch configuration l
generator looks for these response files.
> To read more about ClangSharpPInvokeGenerator's command line arguments, a good option is to install the tool directly
-> and use `--help` to display its command line documentation.
+> and use the `--help` option to display its command line documentation.
>
> ```sh
> dotnet tool install --global ClangSharpPInvokeGenerator
@@ -211,14 +214,59 @@ static Vk()
}
```
+### Initial Project Creation
+
+You must create the initial project for the generated bindings to go in. This also goes for the solution file.
+SilkTouch does not modify either file.
+
+The paths for these files correspond to the following options in the `generator.json` file:
+- `Jobs.JOB_NAME.SourceProject`
+- `Jobs.JOB_NAME.Solution`
+
+(TODO: Does this apply to `Jobs.JOB_NAME.TestProject` as well?)
+
+For the source project file, ensure that the project references the `Silk.NET.Core` project or package by using the
+corresponding `ProjectReference` or `PackageReference`. Also ensure the `AllowUnsafeBlocks` property is set to true.
+
+> Note: In Silk's repository, `AllowUnsafeBlocks` is set globally by
+> [Directory.Build.props](https://github.com/dotnet/Silk.NET/blob/develop/3.0/Directory.Build.props).
+>
+> (TODO: Not sure if other properties are required.)
+
+For the solution file, both `.sln` and `.slnx` file formats are supported. This is because we defer to Roslyn and
+MSBuild under the hood.
+
+### Running the Generator
+
+The generator can be run directly from source using the following command:
+
+```sh
+dotnet run --project sources/SilkTouch/SilkTouch/Silk.NET.SilkTouch.csproj -c Release -- generator.json --only SDL
+```
+
+You may use the `--help` option to display additional information about available options.
+
+```
+dotnet run --project sources/SilkTouch/SilkTouch/Silk.NET.SilkTouch.csproj -c Release -- --help
+```
+
+Some notable options include the `--only` and `--skip` options. `--only` lets you specify the exact jobs to run.
+`--skip` is the opposite and lets you specify the jobs to skip. If `--only` and `--skip` is specified for the same job,
+`--skip` takes precedence.
+
+Warning: There are currently some generator bugs associated with running multiple jobs in the same process. We recommend
+that you use `--only` to ensure that only one job is executed per process. Running multiple processes in parallel is
+fine.
+
### Generated Bindings Output
All generated binding will be output to the `Jobs.JOB_NAME.SourceProject` path defined in `generator.json`.
-These generated files all have the `.gen.cs` suffix and most of them are partial type declarations.
-This means by creating a similarly named `.cs` file and using the `partial` C# keyword, you can add to the type.
+These generated files all have the `.gen.cs` suffix and most of them are partial type declarations. This means by
+creating a similarly named `.cs` file and using the `partial` C# keyword, you can add to the type.
-Do not modify the `.gen.cs` files since running the generator again will overwrite those changes.
+Do not modify the `.gen.cs` files since running the generator again will overwrite those changes. Files without this
+extension are left untouched by the generator.
### Packing the Generated Bindings
diff --git a/docs/silk.net/experimental-feed.md b/docs/silk.net/experimental-feed.md
index 8d1b9a73c3..dbe7affae4 100644
--- a/docs/silk.net/experimental-feed.md
+++ b/docs/silk.net/experimental-feed.md
@@ -45,6 +45,16 @@ In order to use the experimental feed, you must change this project file slightl
```
+Optionally, create a `nuget.config` file next to your solution file with the following contents:
+```xml
+
+
+
+
+
+
+```
+
## Install an experimental version
Now .NET has access to the experimental feed, it's time to install an experimental package. Check for the latest version on our [GitLab Package Registry](https://gitlab.com/silkdotnet/Silk.NET/-/packages).
@@ -57,7 +67,6 @@ At the time of writing, the latest version is `2.0.0-build97.0`. Now to install
```
-
> [!WARNING]
> Experimental Feed builds may be deleted without warning at the Silk.NET team's discretion.
diff --git a/eng/silktouch/opencl/header.txt b/eng/silktouch/opencl/header.txt
new file mode 100644
index 0000000000..494c8c8976
--- /dev/null
+++ b/eng/silktouch/opencl/header.txt
@@ -0,0 +1,5 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
diff --git a/eng/silktouch/opencl/opencl/generate.rsp b/eng/silktouch/opencl/opencl/generate.rsp
new file mode 100644
index 0000000000..387499087f
--- /dev/null
+++ b/eng/silktouch/opencl/opencl/generate.rsp
@@ -0,0 +1,17 @@
+@../settings.rsp
+@../remap.rsp
+--additional
+-Wno-invalid-constexpr
+--file
+opencl-opencl.h
+--methodClassName
+Cl
+--namespace
+Silk.NET.OpenCL
+--output
+../../../../sources/OpenCL/OpenCL
+--test-output
+../../../../tests/OpenCL/OpenCL
+--traverse
+../../../submodules/opencl-headers/CL/cl.h
+../../../submodules/opencl-headers/CL/cl_ext.h
diff --git a/eng/silktouch/opencl/opencl/opencl-opencl.h b/eng/silktouch/opencl/opencl/opencl-opencl.h
new file mode 100644
index 0000000000..2940f714b4
--- /dev/null
+++ b/eng/silktouch/opencl/opencl/opencl-opencl.h
@@ -0,0 +1,2 @@
+#include
+#include
diff --git a/eng/silktouch/opencl/remap.rsp b/eng/silktouch/opencl/remap.rsp
new file mode 100644
index 0000000000..5cc04603c6
--- /dev/null
+++ b/eng/silktouch/opencl/remap.rsp
@@ -0,0 +1,11 @@
+@../../remap-stdint.rsp
+--remap
+_cl_platform_id=cl_platform_id
+_cl_device_id=cl_device_id
+_cl_context=cl_context
+_cl_command_queue=cl_command_queue
+_cl_mem=cl_mem
+_cl_program=cl_program
+_cl_kernel=cl_kernel
+_cl_event=cl_event
+_cl_sampler=cl_sampler
diff --git a/eng/silktouch/opencl/settings.rsp b/eng/silktouch/opencl/settings.rsp
new file mode 100644
index 0000000000..623eb4ec0b
--- /dev/null
+++ b/eng/silktouch/opencl/settings.rsp
@@ -0,0 +1,11 @@
+@../../common.rsp
+--define-macro
+TODO_DEFINE_MACROS=HERE
+--headerFile
+../header.txt
+--include-directory
+../../../submodules/opencl-headers
+--with-callconv
+*=Winapi
+--with-librarypath
+*=opencl
diff --git a/eng/silktouch/opengl/settings.rsp b/eng/silktouch/opengl/settings.rsp
index 3b24402e78..547b53cd28 100644
--- a/eng/silktouch/opengl/settings.rsp
+++ b/eng/silktouch/opengl/settings.rsp
@@ -4,8 +4,8 @@ TODO_DEFINE_MACROS=HERE
--headerFile
../header.txt
--include-directory
-../../../submodules/opengl/api
-../../../submodules/egl/api
+../../../submodules/opengl-registry/api
+../../../submodules/egl-registry/api
../../../include
--with-callconv
*=Winapi
diff --git a/eng/silktouch/openxr/header.txt b/eng/silktouch/openxr/header.txt
new file mode 100644
index 0000000000..3fc9ef3798
--- /dev/null
+++ b/eng/silktouch/openxr/header.txt
@@ -0,0 +1,5 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+// Ported from the OpenXR headers and corresponding dependencies.
+// Original source is Copyright 2017-2026 The Khronos Group Inc. Licensed under the MIT license.
diff --git a/eng/silktouch/openxr/openxr/generate.rsp b/eng/silktouch/openxr/openxr/generate.rsp
new file mode 100644
index 0000000000..9c01404150
--- /dev/null
+++ b/eng/silktouch/openxr/openxr/generate.rsp
@@ -0,0 +1,16 @@
+@../settings.rsp
+@../remap.rsp
+--exclude
+XR_NULL_HANDLE
+--file
+openxr-openxr.h
+--methodClassName
+Xr
+--namespace
+Silk.NET.OpenXR
+--output
+../../../../sources/OpenXR/OpenXR
+--test-output
+../../../../tests/OpenXR/OpenXR
+--traverse
+../../../submodules/openxr-sdk/include/openxr/openxr.h
diff --git a/eng/silktouch/openxr/openxr/openxr-openxr.h b/eng/silktouch/openxr/openxr/openxr-openxr.h
new file mode 100644
index 0000000000..17fc44a46d
--- /dev/null
+++ b/eng/silktouch/openxr/openxr/openxr-openxr.h
@@ -0,0 +1 @@
+#include
diff --git a/eng/silktouch/openxr/remap.rsp b/eng/silktouch/openxr/remap.rsp
new file mode 100644
index 0000000000..183bb5fb2a
--- /dev/null
+++ b/eng/silktouch/openxr/remap.rsp
@@ -0,0 +1 @@
+@../../remap-stdint.rsp
diff --git a/eng/silktouch/openxr/settings.rsp b/eng/silktouch/openxr/settings.rsp
new file mode 100644
index 0000000000..dc50931060
--- /dev/null
+++ b/eng/silktouch/openxr/settings.rsp
@@ -0,0 +1,11 @@
+@../../common.rsp
+--define-macro
+TODO_DEFINE_MACROS=HERE
+--headerFile
+../header.txt
+--include-directory
+../../../submodules/openxr-sdk/include
+--with-callconv
+*=Winapi
+--with-librarypath
+*=openxr_loader
diff --git a/eng/submodules/assimp b/eng/submodules/assimp
new file mode 160000
index 0000000000..392a658f9c
--- /dev/null
+++ b/eng/submodules/assimp
@@ -0,0 +1 @@
+Subproject commit 392a658f9c271be965271f45e7521a1b80ea4392
diff --git a/eng/submodules/egl b/eng/submodules/egl
deleted file mode 160000
index 5f2c71f311..0000000000
--- a/eng/submodules/egl
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 5f2c71f311d6cb031562f2d61517383542ecade7
diff --git a/eng/submodules/egl-registry b/eng/submodules/egl-registry
new file mode 160000
index 0000000000..a7fb4ec38a
--- /dev/null
+++ b/eng/submodules/egl-registry
@@ -0,0 +1 @@
+Subproject commit a7fb4ec38a785cb5914b5a8ba5f264450677338d
diff --git a/eng/submodules/glslang b/eng/submodules/glslang
new file mode 160000
index 0000000000..275822a626
--- /dev/null
+++ b/eng/submodules/glslang
@@ -0,0 +1 @@
+Subproject commit 275822a6261ee689aadb1da5f09a0ec2f058685c
diff --git a/eng/submodules/moltenvk b/eng/submodules/moltenvk
new file mode 160000
index 0000000000..db445ff204
--- /dev/null
+++ b/eng/submodules/moltenvk
@@ -0,0 +1 @@
+Subproject commit db445ff2042d9ce348c439ad8451112f354b8d2a
diff --git a/eng/submodules/openal-soft b/eng/submodules/openal-soft
index 6e0d0b39b3..dc98bfbe60 160000
--- a/eng/submodules/openal-soft
+++ b/eng/submodules/openal-soft
@@ -1 +1 @@
-Subproject commit 6e0d0b39b3d9e5b027f01bdd2fbf18ca8ce5a2db
+Subproject commit dc98bfbe6064d851e32428db83b06732a448810b
diff --git a/eng/submodules/opencl-docs b/eng/submodules/opencl-docs
new file mode 160000
index 0000000000..8e5d0534d0
--- /dev/null
+++ b/eng/submodules/opencl-docs
@@ -0,0 +1 @@
+Subproject commit 8e5d0534d022824de12e5fdde25f32f508de1b5c
diff --git a/eng/submodules/opencl-headers b/eng/submodules/opencl-headers
new file mode 160000
index 0000000000..6fe718c31a
--- /dev/null
+++ b/eng/submodules/opencl-headers
@@ -0,0 +1 @@
+Subproject commit 6fe718c31a45fe25151362a72ef041c3a1047cbd
diff --git a/eng/submodules/opengl b/eng/submodules/opengl
deleted file mode 160000
index 0ef89b84d3..0000000000
--- a/eng/submodules/opengl
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 0ef89b84d3bb5880a6553231d9cc64b2abd525a7
diff --git a/eng/submodules/opengl-registry b/eng/submodules/opengl-registry
new file mode 160000
index 0000000000..8e772a3b0c
--- /dev/null
+++ b/eng/submodules/opengl-registry
@@ -0,0 +1 @@
+Subproject commit 8e772a3b0c9e8a85ccb6f471b4cdbf94c8bcd71d
diff --git a/eng/submodules/openxr-sdk b/eng/submodules/openxr-sdk
new file mode 160000
index 0000000000..64f2b37c8c
--- /dev/null
+++ b/eng/submodules/openxr-sdk
@@ -0,0 +1 @@
+Subproject commit 64f2b37c8c6da3d83c9b4d11865ba1fb752cb8ec
diff --git a/eng/submodules/shaderc b/eng/submodules/shaderc
new file mode 160000
index 0000000000..d5f08ae5c5
--- /dev/null
+++ b/eng/submodules/shaderc
@@ -0,0 +1 @@
+Subproject commit d5f08ae5c5a9a45165578445cbd0f9adf0223448
diff --git a/eng/submodules/spirv-cross b/eng/submodules/spirv-cross
new file mode 160000
index 0000000000..1a6169566c
--- /dev/null
+++ b/eng/submodules/spirv-cross
@@ -0,0 +1 @@
+Subproject commit 1a6169566c73d3da552748fc372fe2bbb856e46e
diff --git a/eng/submodules/spirv-headers b/eng/submodules/spirv-headers
new file mode 160000
index 0000000000..ad9184e76a
--- /dev/null
+++ b/eng/submodules/spirv-headers
@@ -0,0 +1 @@
+Subproject commit ad9184e76a66b1001c29db9b0a3e87f646c64de0
diff --git a/eng/submodules/spirv-reflect b/eng/submodules/spirv-reflect
new file mode 160000
index 0000000000..c90b7b781c
--- /dev/null
+++ b/eng/submodules/spirv-reflect
@@ -0,0 +1 @@
+Subproject commit c90b7b781cdcff63cf1b409ffc7ca0a714e0425e
diff --git a/eng/submodules/spirv-tools b/eng/submodules/spirv-tools
new file mode 160000
index 0000000000..0539c81f69
--- /dev/null
+++ b/eng/submodules/spirv-tools
@@ -0,0 +1 @@
+Subproject commit 0539c81f69a3daeb706fd3477dca61435b475156
diff --git a/eng/submodules/vulkan b/eng/submodules/vulkan
deleted file mode 160000
index 09d464f853..0000000000
--- a/eng/submodules/vulkan
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 09d464f85360160747c4ad6dc5a9841e15822aa5
diff --git a/eng/submodules/vulkan-docs b/eng/submodules/vulkan-docs
new file mode 160000
index 0000000000..ea5259d683
--- /dev/null
+++ b/eng/submodules/vulkan-docs
@@ -0,0 +1 @@
+Subproject commit ea5259d68356334a2928d5d6c327ccaea2f2af08
diff --git a/eng/submodules/vulkan-headers b/eng/submodules/vulkan-headers
index 3dda5a1a87..01393c3df0 160000
--- a/eng/submodules/vulkan-headers
+++ b/eng/submodules/vulkan-headers
@@ -1 +1 @@
-Subproject commit 3dda5a1a87b62fdf3baf4680edc41c00e85a7a22
+Subproject commit 01393c3df0e5285b54ee6527466513f9e614be94
diff --git a/eng/submodules/vulkan-memory-allocator b/eng/submodules/vulkan-memory-allocator
new file mode 160000
index 0000000000..3aa921224c
--- /dev/null
+++ b/eng/submodules/vulkan-memory-allocator
@@ -0,0 +1 @@
+Subproject commit 3aa921224c154a0d2c43912bc88e1c42ce1f7607
diff --git a/generator.json b/generator.json
index 1a727db33d..bb01508ed3 100644
--- a/generator.json
+++ b/generator.json
@@ -107,8 +107,9 @@
"MarkNativeNames",
"AddApiProfiles",
"BakeSourceSets",
- "MixKhronosData",
"AddOpaqueStructs",
+ "MixKhronosData",
+ "TransformHandles",
"TransformFunctions",
"IdentifySharedPrefixes",
"PrettifyNames",
@@ -160,7 +161,7 @@
]
},
"MixKhronosData": {
- "SpecPath": "eng/submodules/opengl/xml/gl.xml",
+ "SpecPath": "eng/submodules/opengl-registry/xml/gl.xml",
"Namespace": "Silk.NET.OpenGL",
"TypeMap": {
"GLenum": "uint",
@@ -226,6 +227,9 @@
"AddNoneMemberToFlags": true,
"RewriteMemberValues": true
},
+ "TransformHandles": {
+ "UseDsl": true
+ },
"TransformFunctions": {
"BoolTypes": {
"GLboolean": null
@@ -244,6 +248,162 @@
]
}
},
+ "OpenCL": {
+ "SourceProject": "sources/OpenCL/OpenCL/Silk.NET.OpenCL.csproj",
+ "Solution": "Silk.NET.slnx",
+ "DefaultLicenseHeader": "eng/silktouch/header.txt",
+ "Mods": [
+ "AddIncludes",
+ "ClangScraper",
+ "MarkNativeNames",
+ "AddApiProfiles",
+ "ExtractHandles",
+ "MixKhronosData",
+ "TransformHandles",
+ "TransformFunctions",
+ "IdentifySharedPrefixes",
+ "PrettifyNames",
+ "TransformEnums",
+ "AddVTables",
+ "StripAttributes"
+ ],
+ "ClangScraper": {
+ "ClangSharpResponseFiles": [
+ "eng/silktouch/opencl/**/generate.rsp"
+ ],
+ "InputSourceRoot": "sources/OpenCL",
+ "InputTestRoot": "tests/OpenCL"
+ },
+ "MixKhronosData": {
+ "SpecPath": "eng/submodules/opencl-docs/xml/cl.xml",
+ "Namespace": "Silk.NET.OpenCL",
+ "TypeMap": {
+ "cl_bitfield": "ulong",
+ "cl_properties": "ulong",
+ "intptr_t": "long",
+ "ErrorCodes": "int",
+ "cl_affinity_domain_ext": "uint",
+ "clCommandExecutionStatus": "uint",
+ "cl_compiler_mode_altera": "uint",
+ "cl_motion_estimation_desc_intel.mb_block_type": "uint",
+ "cl_motion_estimation_desc_intel.subpixel_mode": "uint",
+ "cl_motion_estimation_desc_intel.sad_adjust_mode": "uint",
+ "cl_motion_estimation_desc_intel.search_path_type": "uint",
+ "cl_arm_device_svm_capabilities.flags": "uint",
+ "cl_arm_svm_alloc.flags": "uint",
+ "cl_intel_advanced_motion_estimation.flags": "uint",
+ "cl_intel_advanced_motion_estimation.search_cost_penalty": "uint",
+ "cl_intel_advanced_motion_estimation.search_cost_precision": "uint",
+ "cl_intel_advanced_motion_estimation.intra_search_prediction_modes_buffer.luma_block": "uint",
+ "cl_intel_advanced_motion_estimation.intra_search_prediction_modes_buffer.chroma_block": "uint",
+ "cl_intel_advanced_motion_estimation.skip_block_type": "uint",
+ "cl_intel_advanced_motion_estimation.device_me_version": "uint",
+ "cl_intel_advanced_motion_estimation.cl_motion_detect_desc_intel": "uint",
+ "cl_intel_advanced_motion_estimation.cl_motion_detect_desc_intel.2": "uint",
+ "cl_intel_device_side_avc_motion_estimation.version": "uint",
+ "cl_intel_device_side_avc_motion_estimation.major": "uint",
+ "cl_intel_device_side_avc_motion_estimation.minor": "uint",
+ "cl_intel_device_side_avc_motion_estimation.major.dir": "uint",
+ "cl_intel_device_side_avc_motion_estimation.partition": "uint",
+ "cl_intel_device_side_avc_motion_estimation.window": "uint",
+ "cl_intel_device_side_avc_motion_estimation.adjust": "uint",
+ "cl_intel_device_side_avc_motion_estimation.subpixel": "uint",
+ "cl_intel_device_side_avc_motion_estimation.cost.precision": "uint",
+ "cl_intel_device_side_avc_motion_estimation.weight": "uint",
+ "cl_intel_device_side_avc_motion_estimation.border": "uint",
+ "cl_intel_device_side_avc_motion_estimation.skip": "uint",
+ "cl_intel_device_side_avc_motion_estimation.skip.dir": "uint",
+ "cl_intel_device_side_avc_motion_estimation.skip.block.based": "uint",
+ "cl_intel_device_side_avc_motion_estimation.intra": "uint",
+ "cl_intel_device_side_avc_motion_estimation.intra.luma": "uint",
+ "cl_intel_device_side_avc_motion_estimation.intra.neighbor": "uint",
+ "cl_intel_device_side_avc_motion_estimation.luma.predictor": "uint",
+ "cl_intel_device_side_avc_motion_estimation.frame.dir": "uint",
+ "cl_intel_device_side_avc_motion_estimation.slice": "uint",
+ "cl_intel_device_side_avc_motion_estimation.scan.dir": "uint",
+ "cl_command_termination_reason_arm": "uint",
+ "cl_platform_command_buffer_capabilities_khr": "uint",
+ "cl_device_command_buffer_capabilities_khr": "uint",
+ "cl_media_adapter_type_khr": "uint",
+ "cl_media_adapter_set_khr": "uint",
+ "host_cache_policy": "uint",
+ "allocation_type": "uint",
+ "cl_unified_shared_memory_capabilities_intel": "uint",
+ "cl_mem_alloc_info_intel": "uint",
+ "cl_semaphore_type": "uint",
+ "cl_kernel_workgroup_info": "uint"
+ },
+ "IdentifyEnumMemberImpliedVendors": true
+ },
+ "AddVTables": {
+ "VTables": [
+ {
+ "Kind": "DllImport"
+ },
+ {
+ "Kind": "StaticWrapper"
+ },
+ {
+ "Kind": "ThisThread",
+ "IsDefault": true,
+ "GenerateMakeCurrentPartial": true
+ }
+ ]
+ },
+ "IdentifySharedPrefixes": {
+ "GlobalPrefixHints": ["cl", "_cl"]
+ },
+ "PrettifyNames": {
+ "Affixes": {
+ "HandleType": {
+ "Order": 1
+ },
+ "FunctionPointerDelegateType": {
+ "Order": 1
+ },
+ "KhronosVendor": {
+ "Order": -1,
+ "Capitalize": true
+ },
+ "KhronosFunctionDataType": {
+ "IsDiscriminator": true
+ },
+ "KhronosImpliedVendor": {
+ "Remove": true
+ },
+ "KhronosNonExclusiveVendor": {
+ "Remove": true
+ },
+ "SharedPrefix": {
+ "Remove": true
+ }
+ }
+ },
+ "TransformEnums": {
+ "AddNoneMemberToFlags": true,
+ "RewriteMemberValues": true
+ },
+ "TransformHandles": {
+ "UseDsl": true
+ },
+ "TransformFunctions": {
+ "BoolTypes": {
+ "cl_bool": null
+ }
+ },
+ "TransformProperties": {
+ "BoolTypes": {
+ "cl_bool": null
+ }
+ },
+ "StripAttributes": {
+ "Remove": [
+ "NativeTypeName",
+ "NameAffix",
+ "Transformed"
+ ]
+ }
+ },
"OpenAL": {
"SourceProject": "sources/OpenAL/OpenAL/Silk.NET.OpenAL.csproj",
"Solution": "Silk.NET.slnx",
@@ -294,9 +454,6 @@
"LOKI",
"EXT"
],
- "ExcludeVendorSuffixIdentification": [
- "ALC_INVALID_CONTEXT"
- ],
"NonVendorSuffixes": [
"Direct"
],
@@ -392,6 +549,133 @@
]
}
},
+ "OpenXR": {
+ "SourceProject": "sources/OpenXR/OpenXR/Silk.NET.OpenXR.csproj",
+ "Solution": "Silk.NET.slnx",
+ "DefaultLicenseHeader": "eng/silktouch/header.txt",
+ "Mods": [
+ "AddIncludes",
+ "ClangScraper",
+ "MarkNativeNames",
+ "ExtractHandles",
+ "ExtractNestedTypes",
+ "ExtractEnumConstants",
+ "ExtractFunctionPointers",
+ "TransformHandles",
+ "MixKhronosData",
+ "AddApiProfiles",
+ "InterceptNativeFunctions",
+ "TransformFunctions",
+ "TransformProperties",
+ "IdentifySharedPrefixes",
+ "PrettifyNames",
+ "TransformEnums",
+ "AddVTables",
+ "StripAttributes"
+ ],
+ "ClangScraper": {
+ "ClangSharpResponseFiles": [
+ "eng/silktouch/openxr/**/generate.rsp"
+ ],
+ "InputSourceRoot": "sources/OpenXR",
+ "InputTestRoot": "tests/OpenXR"
+ },
+ "AddApiProfiles": {
+ "Profiles": [
+ {
+ "Profile": "openxr",
+ "SourceSubdirectory": "openxr"
+ }
+ ]
+ },
+ "MixKhronosData": {
+ "SpecPath": "eng/submodules/openxr-sdk/specification/registry/xr.xml",
+ "Namespace": "Silk.NET.OpenXR",
+ "StructureTypes": [
+ "XrStructureType"
+ ],
+ "FlagsTypes": [
+ "XrFlags64"
+ ],
+ "IdentifyEnumMemberImpliedVendors": true
+ },
+ "InterceptNativeFunctions": {
+ "NativeFunctionNames": [
+ "xrCreateInstance"
+ ]
+ },
+ "TransformFunctions": {
+ "BoolTypes": {
+ "XrBool32": null
+ }
+ },
+ "TransformProperties": {
+ "BoolTypes": {
+ "XrBool32": null
+ }
+ },
+ "TransformHandles": {
+ "UseDsl": true
+ },
+ "IdentifySharedPrefixes": {
+ "GlobalPrefixHints": ["PFN_xr", "xr"]
+ },
+ "PrettifyNames": {
+ "Affixes": {
+ "HandleType": {
+ "Order": 1
+ },
+ "FunctionPointerDelegateType": {
+ "Order": 1
+ },
+ "KhronosVendor": {
+ "Order": -1
+ },
+ "KhronosImpliedVendor": {
+ "Remove": true
+ },
+ "KhronosHandleType": {
+ "Remove": true
+ },
+ "SharedPrefix": {
+ "Remove": true
+ }
+ }
+ },
+ "TransformEnums": {
+ "AddNoneMemberToFlags": true,
+ "RemoveMembers": [
+ {
+ "MemberName": "MaxEnum",
+ "MemberValue": "0x7FFFFFFF"
+ }
+ ],
+ "CoerceBackingTypes": "PreferUnsigned",
+ "RewriteMemberValues": true
+ },
+ "AddVTables": {
+ "VTables": [
+ {
+ "Kind": "DllImport"
+ },
+ {
+ "Kind": "StaticWrapper"
+ },
+ {
+ "Kind": "ThisThread",
+ "IsDefault": true,
+ "GenerateFactoryPartial": true
+ }
+ ]
+ },
+ "StripAttributes": {
+ "Remove": [
+ "NativeTypeName",
+ "NameAffix",
+ "Transformed"
+ ]
+ }
+ },
"Vulkan": {
"SourceProject": "sources/Vulkan/Vulkan/Silk.NET.Vulkan.csproj",
"Solution": "Silk.NET.slnx",
@@ -432,7 +716,7 @@
]
},
"MixKhronosData": {
- "SpecPath": "eng/submodules/vulkan/xml/vk.xml",
+ "SpecPath": "eng/submodules/vulkan-docs/xml/vk.xml",
"Namespace": "Silk.NET.Vulkan",
"StructureTypes": [
"VkStructureType"
@@ -470,6 +754,7 @@
"IdentifySharedPrefixes": {
"GlobalPrefixHints": ["PFN_vk", "vk"],
"PrefixOverrides": {
+ "VkImageCreateFlags2KHR": "VK_IMAGE_CREATE_2",
"VkPipelineCreateFlags2": "VK_PIPELINE_CREATE_2",
"VkMemoryDecompressionMethodFlagsEXT": "VK_MEMORY_DECOMPRESSION_METHOD"
}
diff --git a/sources/OpenAL/OpenAL/al/ALContext.gen.cs b/sources/OpenAL/OpenAL/al/ALContext.gen.cs
index 81f6a82bc1..cbb083c22b 100644
--- a/sources/OpenAL/OpenAL/al/ALContext.gen.cs
+++ b/sources/OpenAL/OpenAL/al/ALContext.gen.cs
@@ -295,21 +295,26 @@ public static extern void GetInteger(
[MethodImpl(
MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
)]
- public static void GetInteger(DeviceHandle device, int param1, int size, Ref values)
+ public static void GetInteger(
+ DeviceHandle device,
+ Constant param1,
+ int size,
+ Ref values
+ )
{
fixed (int* __dsl_values = values)
{
- GetInteger(device, param1, size, __dsl_values);
+ GetInteger(device, (int)param1, size, __dsl_values);
}
}
[NativeName("alcGetIntegerv")]
[SupportedApiProfile("alc", ["ALC_VERSION_1_0", "ALC_VERSION_1_1"], MinVersion = "1.0")]
[NativeFunction("openal", EntryPoint = "alcGetIntegerv")]
- public static int GetInteger(DeviceHandle device, int param1)
+ public static int GetInteger(DeviceHandle device, Constant param1)
{
int values = default;
- GetInteger(device, param1, 1, (int*)&values);
+ GetInteger(device, (int)param1, 1, (int*)&values);
return values;
}
@@ -904,8 +909,12 @@ public void GetInteger(DeviceHandle device, int param1, int size, int* values) =
[MethodImpl(
MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
)]
- public void GetInteger(DeviceHandle device, int param1, int size, Ref values) =>
- T.GetInteger(device, param1, size, values);
+ public void GetInteger(
+ DeviceHandle device,
+ Constant param1,
+ int size,
+ Ref values
+ ) => T.GetInteger(device, param1, size, values);
[NativeName("alcGetIntegerv")]
[SupportedApiProfile("alc", ["ALC_VERSION_1_0", "ALC_VERSION_1_1"], MinVersion = "1.0")]
@@ -913,7 +922,8 @@ public void GetInteger(DeviceHandle device, int param1, int size, Ref value
[MethodImpl(
MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
)]
- public int GetInteger(DeviceHandle device, int param1) => T.GetInteger(device, param1);
+ public int GetInteger(DeviceHandle device, Constant param1) =>
+ T.GetInteger(device, param1);
[NativeName("alcGetProcAddress")]
[SupportedApiProfile("alc", ["ALC_VERSION_1_0", "ALC_VERSION_1_1"], MinVersion = "1.0")]
@@ -1555,11 +1565,16 @@ public static void GetInteger(DeviceHandle device, int param1, int size, int* va
[MethodImpl(
MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
)]
- public static void GetInteger(DeviceHandle device, int param1, int size, Ref values)
+ public static void GetInteger(
+ DeviceHandle device,
+ Constant param1,
+ int size,
+ Ref values
+ )
{
fixed (int* __dsl_values = values)
{
- GetInteger(device, param1, size, __dsl_values);
+ GetInteger(device, (int)param1, size, __dsl_values);
}
}
@@ -1569,10 +1584,10 @@ public static void GetInteger(DeviceHandle device, int param1, int size, Ref param1)
{
int values = default;
- GetInteger(device, param1, 1, (int*)&values);
+ GetInteger(device, (int)param1, 1, (int*)&values);
return values;
}
@@ -2564,11 +2579,16 @@ public static void GetInteger(DeviceHandle device, int param1, int size, int* va
[SupportedApiProfile("alc", ["ALC_VERSION_1_0", "ALC_VERSION_1_1"], MinVersion = "1.0")]
[NativeFunction("openal", EntryPoint = "alcGetIntegerv")]
[MethodImpl(MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization)]
- void IALContext.GetInteger(DeviceHandle device, int param1, int size, Ref values)
+ void IALContext.GetInteger(
+ DeviceHandle device,
+ Constant param1,
+ int size,
+ Ref values
+ )
{
fixed (int* __dsl_values = values)
{
- ((IALContext)this).GetInteger(device, param1, size, __dsl_values);
+ ((IALContext)this).GetInteger(device, (int)param1, size, __dsl_values);
}
}
@@ -2576,17 +2596,21 @@ void IALContext.GetInteger(DeviceHandle device, int param1, int size, Ref v
[SupportedApiProfile("alc", ["ALC_VERSION_1_0", "ALC_VERSION_1_1"], MinVersion = "1.0")]
[NativeFunction("openal", EntryPoint = "alcGetIntegerv")]
[MethodImpl(MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization)]
- public static void GetInteger(DeviceHandle device, int param1, int size, Ref values) =>
- ThisThread.GetInteger(device, param1, size, values);
+ public static void GetInteger(
+ DeviceHandle device,
+ Constant param1,
+ int size,
+ Ref values
+ ) => ThisThread.GetInteger(device, param1, size, values);
[NativeName("alcGetIntegerv")]
[SupportedApiProfile("alc", ["ALC_VERSION_1_0", "ALC_VERSION_1_1"], MinVersion = "1.0")]
[NativeFunction("openal", EntryPoint = "alcGetIntegerv")]
[MethodImpl(MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization)]
- int IALContext.GetInteger(DeviceHandle device, int param1)
+ int IALContext.GetInteger(DeviceHandle device, Constant param1)
{
int values = default;
- ((IALContext)this).GetInteger(device, param1, 1, (int*)&values);
+ ((IALContext)this).GetInteger(device, (int)param1, 1, (int*)&values);
return values;
}
@@ -2594,7 +2618,7 @@ int IALContext.GetInteger(DeviceHandle device, int param1)
[SupportedApiProfile("alc", ["ALC_VERSION_1_0", "ALC_VERSION_1_1"], MinVersion = "1.0")]
[NativeFunction("openal", EntryPoint = "alcGetIntegerv")]
[MethodImpl(MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization)]
- public static int GetInteger(DeviceHandle device, int param1) =>
+ public static int GetInteger(DeviceHandle device, Constant param1) =>
ThisThread.GetInteger(device, param1);
[NativeName("alcGetProcAddress")]
diff --git a/sources/OpenAL/OpenAL/al/IALContext.gen.cs b/sources/OpenAL/OpenAL/al/IALContext.gen.cs
index 5dbd4241d9..6baac04f1c 100644
--- a/sources/OpenAL/OpenAL/al/IALContext.gen.cs
+++ b/sources/OpenAL/OpenAL/al/IALContext.gen.cs
@@ -208,12 +208,17 @@ Ref values
[NativeName("alcGetIntegerv")]
[SupportedApiProfile("alc", ["ALC_VERSION_1_0", "ALC_VERSION_1_1"], MinVersion = "1.0")]
[NativeFunction("openal", EntryPoint = "alcGetIntegerv")]
- static abstract void GetInteger(DeviceHandle device, int param1, int size, Ref values);
+ static abstract void GetInteger(
+ DeviceHandle device,
+ Constant param1,
+ int size,
+ Ref values
+ );
[NativeName("alcGetIntegerv")]
[SupportedApiProfile("alc", ["ALC_VERSION_1_0", "ALC_VERSION_1_1"], MinVersion = "1.0")]
[NativeFunction("openal", EntryPoint = "alcGetIntegerv")]
- static abstract int GetInteger(DeviceHandle device, int param1);
+ static abstract int GetInteger(DeviceHandle device, Constant param1);
[NativeName("alcGetProcAddress")]
[SupportedApiProfile("alc", ["ALC_VERSION_1_0", "ALC_VERSION_1_1"], MinVersion = "1.0")]
@@ -570,12 +575,17 @@ Constant deviceType
[NativeName("alcGetIntegerv")]
[SupportedApiProfile("alc", ["ALC_VERSION_1_0", "ALC_VERSION_1_1"], MinVersion = "1.0")]
[NativeFunction("openal", EntryPoint = "alcGetIntegerv")]
- void GetInteger(DeviceHandle device, int param1, int size, Ref values);
+ void GetInteger(
+ DeviceHandle device,
+ Constant param1,
+ int size,
+ Ref values
+ );
[NativeName("alcGetIntegerv")]
[SupportedApiProfile("alc", ["ALC_VERSION_1_0", "ALC_VERSION_1_1"], MinVersion = "1.0")]
[NativeFunction("openal", EntryPoint = "alcGetIntegerv")]
- int GetInteger(DeviceHandle device, int param1);
+ int GetInteger(DeviceHandle device, Constant param1);
[NativeName("alcGetProcAddress")]
[SupportedApiProfile("alc", ["ALC_VERSION_1_0", "ALC_VERSION_1_1"], MinVersion = "1.0")]
diff --git a/sources/OpenAL/Soft.Native/runtimes/android-arm/native/libopenal.so b/sources/OpenAL/Soft.Native/runtimes/android-arm/native/libopenal.so
index 8b0f64ec21..39dc8308d8 100644
Binary files a/sources/OpenAL/Soft.Native/runtimes/android-arm/native/libopenal.so and b/sources/OpenAL/Soft.Native/runtimes/android-arm/native/libopenal.so differ
diff --git a/sources/OpenAL/Soft.Native/runtimes/android-arm64/native/libopenal.so b/sources/OpenAL/Soft.Native/runtimes/android-arm64/native/libopenal.so
index 4fd3f598ca..42a0776619 100644
Binary files a/sources/OpenAL/Soft.Native/runtimes/android-arm64/native/libopenal.so and b/sources/OpenAL/Soft.Native/runtimes/android-arm64/native/libopenal.so differ
diff --git a/sources/OpenAL/Soft.Native/runtimes/android-x64/native/libopenal.so b/sources/OpenAL/Soft.Native/runtimes/android-x64/native/libopenal.so
index 3c2ec92d5a..534da427bb 100644
Binary files a/sources/OpenAL/Soft.Native/runtimes/android-x64/native/libopenal.so and b/sources/OpenAL/Soft.Native/runtimes/android-x64/native/libopenal.so differ
diff --git a/sources/OpenAL/Soft.Native/runtimes/android-x86/native/libopenal.so b/sources/OpenAL/Soft.Native/runtimes/android-x86/native/libopenal.so
index ed41794f25..240fdcf820 100644
Binary files a/sources/OpenAL/Soft.Native/runtimes/android-x86/native/libopenal.so and b/sources/OpenAL/Soft.Native/runtimes/android-x86/native/libopenal.so differ
diff --git a/sources/OpenAL/Soft.Native/runtimes/ios/native/libopenal.dylib b/sources/OpenAL/Soft.Native/runtimes/ios/native/libopenal.dylib
index f58e35e947..44c47f1943 100644
Binary files a/sources/OpenAL/Soft.Native/runtimes/ios/native/libopenal.dylib and b/sources/OpenAL/Soft.Native/runtimes/ios/native/libopenal.dylib differ
diff --git a/sources/OpenAL/Soft.Native/runtimes/linux-arm/native/libopenal.so b/sources/OpenAL/Soft.Native/runtimes/linux-arm/native/libopenal.so
index 8cf76e295b..f9ccbf5bbe 100644
Binary files a/sources/OpenAL/Soft.Native/runtimes/linux-arm/native/libopenal.so and b/sources/OpenAL/Soft.Native/runtimes/linux-arm/native/libopenal.so differ
diff --git a/sources/OpenAL/Soft.Native/runtimes/linux-arm64/native/libopenal.so b/sources/OpenAL/Soft.Native/runtimes/linux-arm64/native/libopenal.so
index c636b3783c..93cdc1f402 100644
Binary files a/sources/OpenAL/Soft.Native/runtimes/linux-arm64/native/libopenal.so and b/sources/OpenAL/Soft.Native/runtimes/linux-arm64/native/libopenal.so differ
diff --git a/sources/OpenAL/Soft.Native/runtimes/linux-x64/native/libopenal.so b/sources/OpenAL/Soft.Native/runtimes/linux-x64/native/libopenal.so
index bc5237235c..816ff019b9 100644
Binary files a/sources/OpenAL/Soft.Native/runtimes/linux-x64/native/libopenal.so and b/sources/OpenAL/Soft.Native/runtimes/linux-x64/native/libopenal.so differ
diff --git a/sources/OpenAL/Soft.Native/runtimes/osx/native/libopenal.dylib b/sources/OpenAL/Soft.Native/runtimes/osx/native/libopenal.dylib
index d6e299f695..1e04514e03 100644
Binary files a/sources/OpenAL/Soft.Native/runtimes/osx/native/libopenal.dylib and b/sources/OpenAL/Soft.Native/runtimes/osx/native/libopenal.dylib differ
diff --git a/sources/OpenAL/Soft.Native/runtimes/tvos/native/libopenal.dylib b/sources/OpenAL/Soft.Native/runtimes/tvos/native/libopenal.dylib
index 2ad7c825d8..00555640eb 100644
Binary files a/sources/OpenAL/Soft.Native/runtimes/tvos/native/libopenal.dylib and b/sources/OpenAL/Soft.Native/runtimes/tvos/native/libopenal.dylib differ
diff --git a/sources/OpenAL/Soft.Native/runtimes/tvossimulator/native/libopenal.dylib b/sources/OpenAL/Soft.Native/runtimes/tvossimulator/native/libopenal.dylib
index c0c36b20dc..300b7269d6 100644
Binary files a/sources/OpenAL/Soft.Native/runtimes/tvossimulator/native/libopenal.dylib and b/sources/OpenAL/Soft.Native/runtimes/tvossimulator/native/libopenal.dylib differ
diff --git a/sources/OpenAL/Soft.Native/runtimes/win-arm64/native/OpenAL32.dll b/sources/OpenAL/Soft.Native/runtimes/win-arm64/native/OpenAL32.dll
index 6a46cb52bd..3577178b56 100644
Binary files a/sources/OpenAL/Soft.Native/runtimes/win-arm64/native/OpenAL32.dll and b/sources/OpenAL/Soft.Native/runtimes/win-arm64/native/OpenAL32.dll differ
diff --git a/sources/OpenAL/Soft.Native/runtimes/win-arm64/native/soft_oal.dll b/sources/OpenAL/Soft.Native/runtimes/win-arm64/native/soft_oal.dll
index e2479997e8..859b1f9065 100644
Binary files a/sources/OpenAL/Soft.Native/runtimes/win-arm64/native/soft_oal.dll and b/sources/OpenAL/Soft.Native/runtimes/win-arm64/native/soft_oal.dll differ
diff --git a/sources/OpenAL/Soft.Native/runtimes/win-x64/native/OpenAL32.dll b/sources/OpenAL/Soft.Native/runtimes/win-x64/native/OpenAL32.dll
index 3e12d32c44..7e0f2ad73c 100644
Binary files a/sources/OpenAL/Soft.Native/runtimes/win-x64/native/OpenAL32.dll and b/sources/OpenAL/Soft.Native/runtimes/win-x64/native/OpenAL32.dll differ
diff --git a/sources/OpenAL/Soft.Native/runtimes/win-x64/native/soft_oal.dll b/sources/OpenAL/Soft.Native/runtimes/win-x64/native/soft_oal.dll
index 22d0abf0d5..50b3144b33 100644
Binary files a/sources/OpenAL/Soft.Native/runtimes/win-x64/native/soft_oal.dll and b/sources/OpenAL/Soft.Native/runtimes/win-x64/native/soft_oal.dll differ
diff --git a/sources/OpenCL/OpenCL/Cl.gen.cs b/sources/OpenCL/OpenCL/Cl.gen.cs
new file mode 100644
index 0000000000..f2d05b1901
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Cl.gen.cs
@@ -0,0 +1,34 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+using Silk.NET.Core.Loader;
+
+namespace Silk.NET.OpenCL;
+
+partial class Cl(INativeContext nativeContext) : IDisposable
+{
+ public partial class DllImport : ICl.Static
+ {
+ static DllImport() => LoaderInterface.RegisterHook(Assembly.GetExecutingAssembly());
+ }
+
+ public partial class ThisThread : ICl.Static
+ {
+ public static ThreadLocal Underlying { get; } = new();
+
+ public static partial void MakeCurrent(ICl ctx);
+ }
+
+ private readonly unsafe void*[] _slots = new void*[179];
+
+ public static ICl Create(INativeContext ctx) => new Cl(ctx);
+
+ ///
+ public void Dispose() => nativeContext.Dispose();
+}
diff --git a/sources/OpenCL/OpenCL/Enums/AcceleratorInfoINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/AcceleratorInfoINTEL.gen.cs
new file mode 100644
index 0000000000..29d2dbfbdf
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/AcceleratorInfoINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_accelerator_info_intel")]
+public enum AcceleratorInfoINTEL : uint
+{
+ [NativeName("CL_ACCELERATOR_DESCRIPTOR_INTEL")]
+ Descriptor = 16528,
+
+ [NativeName("CL_ACCELERATOR_REFERENCE_COUNT_INTEL")]
+ ReferenceCount = 16529,
+
+ [NativeName("CL_ACCELERATOR_CONTEXT_INTEL")]
+ Context = 16530,
+
+ [NativeName("CL_ACCELERATOR_TYPE_INTEL")]
+ Type = 16531,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/AcceleratorTypeINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/AcceleratorTypeINTEL.gen.cs
new file mode 100644
index 0000000000..9a3038358a
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/AcceleratorTypeINTEL.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_accelerator_type_intel")]
+public enum AcceleratorTypeINTEL : uint
+{
+ [NativeName("CL_ACCELERATOR_TYPE_MOTION_ESTIMATION_INTEL")]
+ MotionEstimation = 0,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/AddressingMode.gen.cs b/sources/OpenCL/OpenCL/Enums/AddressingMode.gen.cs
new file mode 100644
index 0000000000..7d34f76d98
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/AddressingMode.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_addressing_mode")]
+public enum AddressingMode : uint
+{
+ [NativeName("CL_ADDRESS_NONE")]
+ None = 4400,
+
+ [NativeName("CL_ADDRESS_CLAMP_TO_EDGE")]
+ ClampToEdge = 4401,
+
+ [NativeName("CL_ADDRESS_CLAMP")]
+ Clamp = 4402,
+
+ [NativeName("CL_ADDRESS_REPEAT")]
+ Repeat = 4403,
+
+ [NativeName("CL_ADDRESS_MIRRORED_REPEAT")]
+ MirroredRepeat = 4404,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationDeviceMeVersionINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationDeviceMeVersionINTEL.gen.cs
new file mode 100644
index 0000000000..f887278aea
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationDeviceMeVersionINTEL.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_advanced_motion_estimation.device_me_version")]
+public enum AdvancedMotionEstimationDeviceMeVersionINTEL : uint
+{
+ [NativeName("CL_ME_VERSION_LEGACY_INTEL")]
+ Legacy = 0,
+
+ [NativeName("CL_ME_VERSION_ADVANCED_VER_1_INTEL")]
+ AdvancedVer1 = 1,
+
+ [NativeName("CL_ME_VERSION_ADVANCED_VER_2_INTEL")]
+ AdvancedVer2 = 2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationFlagsINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationFlagsINTEL.gen.cs
new file mode 100644
index 0000000000..4f2fafb9cd
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationFlagsINTEL.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_advanced_motion_estimation.flags")]
+[Flags]
+public enum AdvancedMotionEstimationFlagsINTEL : uint
+{
+ None = 0x0,
+
+ [NativeName("CL_ME_CHROMA_INTRA_PREDICT_ENABLED_INTEL")]
+ ChromaIntraPredictEnabled = 0x1,
+
+ [NativeName("CL_ME_LUMA_INTRA_PREDICT_ENABLED_INTEL")]
+ LumaIntraPredictEnabled = 0x2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationIntraSearchPredictionModesBufferChromaBlockINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationIntraSearchPredictionModesBufferChromaBlockINTEL.gen.cs
new file mode 100644
index 0000000000..68fff267c3
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationIntraSearchPredictionModesBufferChromaBlockINTEL.gen.cs
@@ -0,0 +1,28 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName(
+ "cl_intel_advanced_motion_estimation.intra_search_prediction_modes_buffer.chroma_block"
+)]
+public enum AdvancedMotionEstimationIntraSearchPredictionModesBufferChromaBlockINTEL : uint
+{
+ [NativeName("CL_ME_CHROMA_PREDICTOR_MODE_DC_INTEL")]
+ Dc = 0,
+
+ [NativeName("CL_ME_CHROMA_PREDICTOR_MODE_HORIZONTAL_INTEL")]
+ Horizontal = 1,
+
+ [NativeName("CL_ME_CHROMA_PREDICTOR_MODE_VERTICAL_INTEL")]
+ Vertical = 2,
+
+ [NativeName("CL_ME_CHROMA_PREDICTOR_MODE_PLANE_INTEL")]
+ Plane = 3,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationIntraSearchPredictionModesBufferLumaBlockINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationIntraSearchPredictionModesBufferLumaBlockINTEL.gen.cs
new file mode 100644
index 0000000000..780f95c4db
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationIntraSearchPredictionModesBufferLumaBlockINTEL.gen.cs
@@ -0,0 +1,44 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_advanced_motion_estimation.intra_search_prediction_modes_buffer.luma_block")]
+public enum AdvancedMotionEstimationIntraSearchPredictionModesBufferLumaBlockINTEL : uint
+{
+ [NativeName("CL_ME_LUMA_PREDICTOR_MODE_VERTICAL_INTEL")]
+ Vertical = 0,
+
+ [NativeName("CL_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_INTEL")]
+ Horizontal = 1,
+
+ [NativeName("CL_ME_LUMA_PREDICTOR_MODE_DC_INTEL")]
+ Dc = 2,
+
+ [NativeName("CL_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_LEFT_INTEL")]
+ DiagonalDownLeft = 3,
+
+ [NativeName("CL_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_RIGHT_INTEL")]
+ DiagonalDownRight = 4,
+
+ [NativeName("CL_ME_LUMA_PREDICTOR_MODE_PLANE_INTEL")]
+ Plane = 4,
+
+ [NativeName("CL_ME_LUMA_PREDICTOR_MODE_VERTICAL_RIGHT_INTEL")]
+ VerticalRight = 5,
+
+ [NativeName("CL_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_DOWN_INTEL")]
+ HorizontalDown = 6,
+
+ [NativeName("CL_ME_LUMA_PREDICTOR_MODE_VERTICAL_LEFT_INTEL")]
+ VerticalLeft = 7,
+
+ [NativeName("CL_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_UP_INTEL")]
+ HorizontalUp = 8,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationMotionDetectDesc2INTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationMotionDetectDesc2INTEL.gen.cs
new file mode 100644
index 0000000000..7a1d803493
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationMotionDetectDesc2INTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_advanced_motion_estimation.cl_motion_detect_desc_intel.2")]
+public enum AdvancedMotionEstimationMotionDetectDesc2INTEL : uint
+{
+ [NativeName("CL_ME_BIDIR_WEIGHT_QUARTER_INTEL")]
+ Quarter = 16,
+
+ [NativeName("CL_ME_BIDIR_WEIGHT_THIRD_INTEL")]
+ Third = 21,
+
+ [NativeName("CL_ME_BIDIR_WEIGHT_HALF_INTEL")]
+ Half = 32,
+
+ [NativeName("CL_ME_BIDIR_WEIGHT_TWO_THIRD_INTEL")]
+ TwoThird = 43,
+
+ [NativeName("CL_ME_BIDIR_WEIGHT_THREE_QUARTER_INTEL")]
+ ThreeQuarter = 48,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationMotionDetectDescINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationMotionDetectDescINTEL.gen.cs
new file mode 100644
index 0000000000..db29c8798e
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationMotionDetectDescINTEL.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_advanced_motion_estimation.cl_motion_detect_desc_intel")]
+public enum AdvancedMotionEstimationMotionDetectDescINTEL : uint
+{
+ [NativeName("CL_ME_FORWARD_INPUT_MODE_INTEL")]
+ ForwardInputMode = 1,
+
+ [NativeName("CL_ME_BACKWARD_INPUT_MODE_INTEL")]
+ BackwardInputMode = 2,
+
+ [NativeName("CL_ME_BIDIRECTION_INPUT_MODE_INTEL")]
+ BidirectionInputMode = 3,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationSearchCostPenaltyINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationSearchCostPenaltyINTEL.gen.cs
new file mode 100644
index 0000000000..0405237336
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationSearchCostPenaltyINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_advanced_motion_estimation.search_cost_penalty")]
+public enum AdvancedMotionEstimationSearchCostPenaltyINTEL : uint
+{
+ [NativeName("CL_ME_COST_PENALTY_NONE_INTEL")]
+ None = 0,
+
+ [NativeName("CL_ME_COST_PENALTY_LOW_INTEL")]
+ Low = 1,
+
+ [NativeName("CL_ME_COST_PENALTY_NORMAL_INTEL")]
+ Normal = 2,
+
+ [NativeName("CL_ME_COST_PENALTY_HIGH_INTEL")]
+ High = 3,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationSearchCostPrecisionINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationSearchCostPrecisionINTEL.gen.cs
new file mode 100644
index 0000000000..48fb6aeb04
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationSearchCostPrecisionINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_advanced_motion_estimation.search_cost_precision")]
+public enum AdvancedMotionEstimationSearchCostPrecisionINTEL : uint
+{
+ [NativeName("CL_ME_COST_PRECISION_QPEL_INTEL")]
+ Qpel = 0,
+
+ [NativeName("CL_ME_COST_PRECISION_HPEL_INTEL")]
+ Hpel = 1,
+
+ [NativeName("CL_ME_COST_PRECISION_PEL_INTEL")]
+ Pel = 2,
+
+ [NativeName("CL_ME_COST_PRECISION_DPEL_INTEL")]
+ Dpel = 3,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationSkipBlockTypeINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationSkipBlockTypeINTEL.gen.cs
new file mode 100644
index 0000000000..d5ab1483b3
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/AdvancedMotionEstimationSkipBlockTypeINTEL.gen.cs
@@ -0,0 +1,20 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_advanced_motion_estimation.skip_block_type")]
+public enum AdvancedMotionEstimationSkipBlockTypeINTEL : uint
+{
+ [NativeName("CL_ME_SKIP_BLOCK_TYPE_16x16_INTEL")]
+ Type16x16 = 0,
+
+ [NativeName("CL_ME_SKIP_BLOCK_TYPE_8x8_INTEL")]
+ Type8x8 = 4,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/AffinityDomainEXT.gen.cs b/sources/OpenCL/OpenCL/Enums/AffinityDomainEXT.gen.cs
new file mode 100644
index 0000000000..0e6b61d974
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/AffinityDomainEXT.gen.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_affinity_domain_ext")]
+public enum AffinityDomainEXT : uint
+{
+ [NativeName("CL_AFFINITY_DOMAIN_L1_CACHE_EXT")]
+ L1Cache = 1,
+
+ [NativeName("CL_AFFINITY_DOMAIN_L2_CACHE_EXT")]
+ L2Cache = 2,
+
+ [NativeName("CL_AFFINITY_DOMAIN_L3_CACHE_EXT")]
+ L3Cache = 3,
+
+ [NativeName("CL_AFFINITY_DOMAIN_L4_CACHE_EXT")]
+ L4Cache = 4,
+
+ [NativeName("CL_AFFINITY_DOMAIN_NUMA_EXT")]
+ Numa = 16,
+
+ [NativeName("CL_AFFINITY_DOMAIN_NEXT_FISSIONABLE_EXT")]
+ NextFissionable = 256,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/AllocationType.gen.cs b/sources/OpenCL/OpenCL/Enums/AllocationType.gen.cs
new file mode 100644
index 0000000000..4847bae3ce
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/AllocationType.gen.cs
@@ -0,0 +1,20 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("allocation_type")]
+public enum AllocationType : uint
+{
+ [NativeName("CL_MEM_ION_HOST_PTR_QCOM")]
+ IonHostPtrQCOM = 16552,
+
+ [NativeName("CL_MEM_ANDROID_NATIVE_BUFFER_HOST_PTR_QCOM")]
+ AndroidNativeBufferHostPtrQCOM = 16582,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/Bool.gen.cs b/sources/OpenCL/OpenCL/Enums/Bool.gen.cs
new file mode 100644
index 0000000000..26577e7423
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/Bool.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_bool")]
+public enum Bool : uint
+{
+ [NativeName("CL_FALSE")]
+ False = 0,
+
+ [NativeName("CL_TRUE")]
+ True = 1,
+
+ [NativeName("CL_BLOCKING")]
+ Blocking = 1,
+
+ [NativeName("CL_NON_BLOCKING")]
+ NonBlocking = 0,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/BufferCreateType.gen.cs b/sources/OpenCL/OpenCL/Enums/BufferCreateType.gen.cs
new file mode 100644
index 0000000000..8c0ff038fc
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/BufferCreateType.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_buffer_create_type")]
+public enum BufferCreateType : uint
+{
+ [NativeName("CL_BUFFER_CREATE_TYPE_REGION")]
+ Region = 4640,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/BuildStatus.gen.cs b/sources/OpenCL/OpenCL/Enums/BuildStatus.gen.cs
new file mode 100644
index 0000000000..b98886894d
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/BuildStatus.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_build_status")]
+public enum BuildStatus : int
+{
+ [NativeName("CL_BUILD_SUCCESS")]
+ Success = 0,
+
+ [NativeName("CL_BUILD_NONE")]
+ None = -1,
+
+ [NativeName("CL_BUILD_ERROR")]
+ Error = -2,
+
+ [NativeName("CL_BUILD_IN_PROGRESS")]
+ InProgress = -3,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ChannelOrder.gen.cs b/sources/OpenCL/OpenCL/Enums/ChannelOrder.gen.cs
new file mode 100644
index 0000000000..7af07ad76e
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ChannelOrder.gen.cs
@@ -0,0 +1,92 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_channel_order")]
+public enum ChannelOrder : uint
+{
+ [NativeName("CL_R")]
+ R = 4272,
+
+ [NativeName("CL_A")]
+ A = 4273,
+
+ [NativeName("CL_RG")]
+ Rg = 4274,
+
+ [NativeName("CL_RA")]
+ Ra = 4275,
+
+ [NativeName("CL_RGB")]
+ Rgb = 4276,
+
+ [NativeName("CL_RGBA")]
+ Rgba = 4277,
+
+ [NativeName("CL_BGRA")]
+ Bgra = 4278,
+
+ [NativeName("CL_ARGB")]
+ Argb = 4279,
+
+ [NativeName("CL_INTENSITY")]
+ Intensity = 4280,
+
+ [NativeName("CL_LUMINANCE")]
+ Luminance = 4281,
+
+ [NativeName("CL_Rx")]
+ Rx = 4282,
+
+ [NativeName("CL_RGx")]
+ RGx = 4283,
+
+ [NativeName("CL_RGBx")]
+ RGBx = 4284,
+
+ [NativeName("CL_DEPTH")]
+ Depth = 4285,
+
+ [NativeName("CL_sRGB")]
+ SRgb = 4287,
+
+ [NativeName("CL_sRGBx")]
+ SRGBx = 4288,
+
+ [NativeName("CL_sRGBA")]
+ SRgba = 4289,
+
+ [NativeName("CL_sBGRA")]
+ SBgra = 4290,
+
+ [NativeName("CL_ABGR")]
+ Abgr = 4291,
+
+ [NativeName("CL_NV21_IMG")]
+ Nv21IMG = 16592,
+
+ [NativeName("CL_YV12_IMG")]
+ Yv12IMG = 16593,
+
+ [NativeName("CL_YUYV_INTEL")]
+ YuyvINTEL = 16502,
+
+ [NativeName("CL_UYVY_INTEL")]
+ UyvyINTEL = 16503,
+
+ [NativeName("CL_YVYU_INTEL")]
+ YvyuINTEL = 16504,
+
+ [NativeName("CL_VYUY_INTEL")]
+ VyuyINTEL = 16505,
+
+ [NativeName("CL_NV12_INTEL")]
+ Nv12INTEL = 16654,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ChannelType.gen.cs b/sources/OpenCL/OpenCL/Enums/ChannelType.gen.cs
new file mode 100644
index 0000000000..fcae68cc0b
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ChannelType.gen.cs
@@ -0,0 +1,89 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_channel_type")]
+public enum ChannelType : uint
+{
+ [NativeName("CL_SNORM_INT8")]
+ SnormInt8 = 4304,
+
+ [NativeName("CL_SNORM_INT16")]
+ SnormInt16 = 4305,
+
+ [NativeName("CL_UNORM_INT8")]
+ UnormInt8 = 4306,
+
+ [NativeName("CL_UNORM_INT16")]
+ UnormInt16 = 4307,
+
+ [NativeName("CL_UNORM_SHORT_565")]
+ UnormShort565 = 4308,
+
+ [NativeName("CL_UNORM_SHORT_555")]
+ UnormShort555 = 4309,
+
+ [NativeName("CL_UNORM_INT_101010")]
+ UnormInt101010 = 4310,
+
+ [NativeName("CL_SIGNED_INT8")]
+ SignedInt8 = 4311,
+
+ [NativeName("CL_SIGNED_INT16")]
+ SignedInt16 = 4312,
+
+ [NativeName("CL_SIGNED_INT32")]
+ SignedInt32 = 4313,
+
+ [NativeName("CL_UNSIGNED_INT8")]
+ UnsignedInt8 = 4314,
+
+ [NativeName("CL_UNSIGNED_INT16")]
+ UnsignedInt16 = 4315,
+
+ [NativeName("CL_UNSIGNED_INT32")]
+ UnsignedInt32 = 4316,
+
+ [NativeName("CL_HALF_FLOAT")]
+ HalfFloat = 4317,
+
+ [NativeName("CL_FLOAT")]
+ Float = 4318,
+
+ [NativeName("CL_UNORM_INT_101010_2")]
+ UnormInt101010x2 = 4320,
+
+ [NativeName("CL_UNSIGNED_INT_RAW10_EXT")]
+ UnsignedIntRaw10EXT = 4323,
+
+ [NativeName("CL_UNSIGNED_INT_RAW12_EXT")]
+ UnsignedIntRaw12EXT = 4324,
+
+ [NativeName("CL_UNORM_INT_2_101010_EXT")]
+ UnormInt2x101010EXT = 4325,
+
+ [NativeName("CL_UNSIGNED_INT10X6_EXT")]
+ UnsignedInt10x6EXT = 4326,
+
+ [NativeName("CL_UNSIGNED_INT12X4_EXT")]
+ UnsignedInt12x4EXT = 4327,
+
+ [NativeName("CL_UNSIGNED_INT14X2_EXT")]
+ UnsignedInt14x2EXT = 4328,
+
+ [NativeName("CL_UNORM_INT10X6_EXT")]
+ UnormInt10x6EXT = 4321,
+
+ [NativeName("CL_UNORM_INT12X4_EXT")]
+ UnormInt12x4EXT = 4329,
+
+ [NativeName("CL_UNORM_INT14X2_EXT")]
+ UnormInt14x2EXT = 4330,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/CommandBufferFlagsKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/CommandBufferFlagsKHR.gen.cs
new file mode 100644
index 0000000000..ded6076328
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/CommandBufferFlagsKHR.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_command_buffer_flags_khr")]
+[Flags]
+public enum CommandBufferFlagsKHR : ulong
+{
+ None = 0x0,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/CommandBufferInfoKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/CommandBufferInfoKHR.gen.cs
new file mode 100644
index 0000000000..ed4163681a
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/CommandBufferInfoKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_command_buffer_info_khr")]
+public enum CommandBufferInfoKHR : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/CommandBufferPropertiesKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/CommandBufferPropertiesKHR.gen.cs
new file mode 100644
index 0000000000..55172fe57a
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/CommandBufferPropertiesKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_command_buffer_properties_khr")]
+public enum CommandBufferPropertiesKHR : ulong { }
diff --git a/sources/OpenCL/OpenCL/Enums/CommandBufferStateKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/CommandBufferStateKHR.gen.cs
new file mode 100644
index 0000000000..c6be0cebd3
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/CommandBufferStateKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_command_buffer_state_khr")]
+public enum CommandBufferStateKHR : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/CommandBufferUpdateTypeKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/CommandBufferUpdateTypeKHR.gen.cs
new file mode 100644
index 0000000000..f3237426a2
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/CommandBufferUpdateTypeKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_command_buffer_update_type_khr")]
+public enum CommandBufferUpdateTypeKHR : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/CommandExecutionStatus.gen.cs b/sources/OpenCL/OpenCL/Enums/CommandExecutionStatus.gen.cs
new file mode 100644
index 0000000000..67e10cf3af
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/CommandExecutionStatus.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("clCommandExecutionStatus")]
+public enum CommandExecutionStatus : uint
+{
+ [NativeName("CL_COMPLETE")]
+ Complete = 0,
+
+ [NativeName("CL_RUNNING")]
+ Running = 1,
+
+ [NativeName("CL_SUBMITTED")]
+ Submitted = 2,
+
+ [NativeName("CL_QUEUED")]
+ Queued = 3,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/CommandPropertiesKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/CommandPropertiesKHR.gen.cs
new file mode 100644
index 0000000000..b2d9bfd370
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/CommandPropertiesKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_command_properties_khr")]
+public enum CommandPropertiesKHR : ulong { }
diff --git a/sources/OpenCL/OpenCL/Enums/CommandQueueCapabilitiesINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/CommandQueueCapabilitiesINTEL.gen.cs
new file mode 100644
index 0000000000..38918e7df0
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/CommandQueueCapabilitiesINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_command_queue_capabilities_intel")]
+[Flags]
+public enum CommandQueueCapabilitiesINTEL : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_QUEUE_CAPABILITY_CREATE_SINGLE_QUEUE_EVENTS_INTEL")]
+ CreateSingleQueueEvents = 0x1,
+
+ [NativeName("CL_QUEUE_CAPABILITY_CREATE_CROSS_QUEUE_EVENTS_INTEL")]
+ CreateCrossQueueEvents = 0x2,
+
+ [NativeName("CL_QUEUE_CAPABILITY_SINGLE_QUEUE_EVENT_WAIT_LIST_INTEL")]
+ SingleQueueEventWaitList = 0x4,
+
+ [NativeName("CL_QUEUE_CAPABILITY_CROSS_QUEUE_EVENT_WAIT_LIST_INTEL")]
+ CrossQueueEventWaitList = 0x8,
+
+ [NativeName("CL_QUEUE_CAPABILITY_TRANSFER_BUFFER_INTEL")]
+ TransferBuffer = 0x100,
+
+ [NativeName("CL_QUEUE_CAPABILITY_TRANSFER_BUFFER_RECT_INTEL")]
+ TransferBufferRect = 0x200,
+
+ [NativeName("CL_QUEUE_CAPABILITY_MAP_BUFFER_INTEL")]
+ MapBuffer = 0x400,
+
+ [NativeName("CL_QUEUE_CAPABILITY_FILL_BUFFER_INTEL")]
+ FillBuffer = 0x800,
+
+ [NativeName("CL_QUEUE_CAPABILITY_TRANSFER_IMAGE_INTEL")]
+ TransferImage = 0x1000,
+
+ [NativeName("CL_QUEUE_CAPABILITY_MAP_IMAGE_INTEL")]
+ MapImage = 0x2000,
+
+ [NativeName("CL_QUEUE_CAPABILITY_FILL_IMAGE_INTEL")]
+ FillImage = 0x4000,
+
+ [NativeName("CL_QUEUE_CAPABILITY_TRANSFER_BUFFER_IMAGE_INTEL")]
+ TransferBufferImage = 0x8000,
+
+ [NativeName("CL_QUEUE_CAPABILITY_TRANSFER_IMAGE_BUFFER_INTEL")]
+ TransferImageBuffer = 0x10000,
+
+ [NativeName("CL_QUEUE_CAPABILITY_MARKER_INTEL")]
+ Marker = 0x1000000,
+
+ [NativeName("CL_QUEUE_CAPABILITY_BARRIER_INTEL")]
+ Barrier = 0x2000000,
+
+ [NativeName("CL_QUEUE_CAPABILITY_KERNEL_INTEL")]
+ Kernel = 0x4000000,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/CommandQueueInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/CommandQueueInfo.gen.cs
new file mode 100644
index 0000000000..4afb3be949
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/CommandQueueInfo.gen.cs
@@ -0,0 +1,35 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_command_queue_info")]
+public enum CommandQueueInfo : uint
+{
+ [NativeName("CL_QUEUE_CONTEXT")]
+ Context = 4240,
+
+ [NativeName("CL_QUEUE_DEVICE")]
+ Device = 4241,
+
+ [NativeName("CL_QUEUE_REFERENCE_COUNT")]
+ ReferenceCount = 4242,
+
+ [NativeName("CL_QUEUE_PROPERTIES")]
+ Properties = 4243,
+
+ [NativeName("CL_QUEUE_SIZE")]
+ Size = 4244,
+
+ [NativeName("CL_QUEUE_DEVICE_DEFAULT")]
+ DeviceDefault = 4245,
+
+ [NativeName("CL_QUEUE_PROPERTIES_ARRAY")]
+ PropertiesArray = 4248,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/CommandQueueProperties.gen.cs b/sources/OpenCL/OpenCL/Enums/CommandQueueProperties.gen.cs
new file mode 100644
index 0000000000..4ebc133b67
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/CommandQueueProperties.gen.cs
@@ -0,0 +1,35 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_command_queue_properties")]
+[Flags]
+public enum CommandQueueProperties : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE")]
+ OutOfOrderExecModeEnable = 0x1,
+
+ [NativeName("CL_QUEUE_PROFILING_ENABLE")]
+ ProfilingEnable = 0x2,
+
+ [NativeName("CL_QUEUE_ON_DEVICE")]
+ OnDevice = 0x4,
+
+ [NativeName("CL_QUEUE_ON_DEVICE_DEFAULT")]
+ OnDeviceDefault = 0x8,
+
+ [NativeName("CL_QUEUE_THREAD_LOCAL_EXEC_ENABLE_INTEL")]
+ ThreadLocalExecEnableINTEL = 0x80000000,
+
+ [NativeName("CL_QUEUE_NO_SYNC_OPERATIONS_INTEL")]
+ NoSyncOperationsINTEL = 0x20000000,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/CommandTerminationReasonARM.gen.cs b/sources/OpenCL/OpenCL/Enums/CommandTerminationReasonARM.gen.cs
new file mode 100644
index 0000000000..67b8ed4b3a
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/CommandTerminationReasonARM.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_command_termination_reason_arm")]
+public enum CommandTerminationReasonARM : uint
+{
+ [NativeName("CL_COMMAND_TERMINATION_COMPLETION_ARM")]
+ Completion = 0,
+
+ [NativeName("CL_COMMAND_TERMINATION_CONTROLLED_SUCCESS_ARM")]
+ ControlledSuccess = 1,
+
+ [NativeName("CL_COMMAND_TERMINATION_CONTROLLED_FAILURE_ARM")]
+ ControlledFailure = 2,
+
+ [NativeName("CL_COMMAND_TERMINATION_ERROR_ARM")]
+ Error = 3,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/CommandType.gen.cs b/sources/OpenCL/OpenCL/Enums/CommandType.gen.cs
new file mode 100644
index 0000000000..82cd5eca3b
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/CommandType.gen.cs
@@ -0,0 +1,158 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_command_type")]
+public enum CommandType : uint
+{
+ [NativeName("CL_COMMAND_NDRANGE_KERNEL")]
+ NdrangeKernel = 4592,
+
+ [NativeName("CL_COMMAND_TASK")]
+ Task = 4593,
+
+ [NativeName("CL_COMMAND_NATIVE_KERNEL")]
+ NativeKernel = 4594,
+
+ [NativeName("CL_COMMAND_READ_BUFFER")]
+ ReadBuffer = 4595,
+
+ [NativeName("CL_COMMAND_WRITE_BUFFER")]
+ WriteBuffer = 4596,
+
+ [NativeName("CL_COMMAND_COPY_BUFFER")]
+ CopyBuffer = 4597,
+
+ [NativeName("CL_COMMAND_READ_IMAGE")]
+ ReadImage = 4598,
+
+ [NativeName("CL_COMMAND_WRITE_IMAGE")]
+ WriteImage = 4599,
+
+ [NativeName("CL_COMMAND_COPY_IMAGE")]
+ CopyImage = 4600,
+
+ [NativeName("CL_COMMAND_COPY_IMAGE_TO_BUFFER")]
+ CopyImageToBuffer = 4601,
+
+ [NativeName("CL_COMMAND_COPY_BUFFER_TO_IMAGE")]
+ CopyBufferToImage = 4602,
+
+ [NativeName("CL_COMMAND_MAP_BUFFER")]
+ MapBuffer = 4603,
+
+ [NativeName("CL_COMMAND_MAP_IMAGE")]
+ MapImage = 4604,
+
+ [NativeName("CL_COMMAND_UNMAP_MEM_OBJECT")]
+ UnmapMemObject = 4605,
+
+ [NativeName("CL_COMMAND_MARKER")]
+ Marker = 4606,
+
+ [NativeName("CL_COMMAND_ACQUIRE_GL_OBJECTS")]
+ AcquireGlObjects = 4607,
+
+ [NativeName("CL_COMMAND_RELEASE_GL_OBJECTS")]
+ ReleaseGlObjects = 4608,
+
+ [NativeName("CL_COMMAND_READ_BUFFER_RECT")]
+ ReadBufferRect = 4609,
+
+ [NativeName("CL_COMMAND_WRITE_BUFFER_RECT")]
+ WriteBufferRect = 4610,
+
+ [NativeName("CL_COMMAND_COPY_BUFFER_RECT")]
+ CopyBufferRect = 4611,
+
+ [NativeName("CL_COMMAND_USER")]
+ User = 4612,
+
+ [NativeName("CL_COMMAND_BARRIER")]
+ Barrier = 4613,
+
+ [NativeName("CL_COMMAND_MIGRATE_MEM_OBJECTS")]
+ MigrateMemObjects = 4614,
+
+ [NativeName("CL_COMMAND_FILL_BUFFER")]
+ FillBuffer = 4615,
+
+ [NativeName("CL_COMMAND_FILL_IMAGE")]
+ FillImage = 4616,
+
+ [NativeName("CL_COMMAND_SVM_FREE")]
+ SvmFree = 4617,
+
+ [NativeName("CL_COMMAND_SVM_MEMCPY")]
+ SvmMemcpy = 4618,
+
+ [NativeName("CL_COMMAND_SVM_MEMFILL")]
+ SvmMemfill = 4619,
+
+ [NativeName("CL_COMMAND_SVM_MAP")]
+ SvmMap = 4620,
+
+ [NativeName("CL_COMMAND_SVM_UNMAP")]
+ SvmUnmap = 4621,
+
+ [NativeName("CL_COMMAND_SVM_MIGRATE_MEM")]
+ SvmMigrateMem = 4622,
+
+ [NativeName("CL_COMMAND_MIGRATE_MEM_OBJECT_EXT")]
+ MigrateMemObjectEXT = 16448,
+
+ [NativeName("CL_COMMAND_ACQUIRE_GRALLOC_OBJECTS_IMG")]
+ AcquireGrallocObjectsIMG = 16594,
+
+ [NativeName("CL_COMMAND_RELEASE_GRALLOC_OBJECTS_IMG")]
+ ReleaseGrallocObjectsIMG = 16595,
+
+ [NativeName("CL_COMMAND_GENERATE_MIPMAP_IMG")]
+ GenerateMipmapIMG = 16598,
+
+ [NativeName("CL_COMMAND_ACQUIRE_EXTERNAL_MEM_OBJECTS_KHR")]
+ AcquireExternalMemObjectsKHR = 8263,
+
+ [NativeName("CL_COMMAND_RELEASE_EXTERNAL_MEM_OBJECTS_KHR")]
+ ReleaseExternalMemObjectsKHR = 8264,
+
+ [NativeName("CL_COMMAND_SEMAPHORE_WAIT_KHR")]
+ SemaphoreWaitKHR = 8258,
+
+ [NativeName("CL_COMMAND_SEMAPHORE_SIGNAL_KHR")]
+ SemaphoreSignalKHR = 8259,
+
+ [NativeName("CL_COMMAND_SVM_FREE_ARM")]
+ SvmFreeARM = 16570,
+
+ [NativeName("CL_COMMAND_SVM_MEMCPY_ARM")]
+ SvmMemcpyARM = 16571,
+
+ [NativeName("CL_COMMAND_SVM_MEMFILL_ARM")]
+ SvmMemfillARM = 16572,
+
+ [NativeName("CL_COMMAND_SVM_MAP_ARM")]
+ SvmMapARM = 16573,
+
+ [NativeName("CL_COMMAND_SVM_UNMAP_ARM")]
+ SvmUnmapARM = 16574,
+
+ [NativeName("CL_COMMAND_MEMFILL_INTEL")]
+ MemfillINTEL = 16900,
+
+ [NativeName("CL_COMMAND_MEMCPY_INTEL")]
+ MemcpyINTEL = 16901,
+
+ [NativeName("CL_COMMAND_MIGRATEMEM_INTEL")]
+ MigratememINTEL = 16902,
+
+ [NativeName("CL_COMMAND_MEMADVISE_INTEL")]
+ MemadviseINTEL = 16903,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/CompilerModeAltera.gen.cs b/sources/OpenCL/OpenCL/Enums/CompilerModeAltera.gen.cs
new file mode 100644
index 0000000000..04c2982d6e
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/CompilerModeAltera.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_compiler_mode_altera")]
+public enum CompilerModeAltera : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/ContextInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/ContextInfo.gen.cs
new file mode 100644
index 0000000000..abaa579e37
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ContextInfo.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_context_info")]
+public enum ContextInfo : uint
+{
+ [NativeName("CL_CONTEXT_REFERENCE_COUNT")]
+ ReferenceCount = 4224,
+
+ [NativeName("CL_CONTEXT_DEVICES")]
+ Devices = 4225,
+
+ [NativeName("CL_CONTEXT_PROPERTIES")]
+ Properties = 4226,
+
+ [NativeName("CL_CONTEXT_NUM_DEVICES")]
+ NumDevices = 4227,
+
+ [NativeName("CL_CONTEXT_PERF_HINT_QCOM")]
+ PerfHintQCOM = 16578,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ContextMemoryInitializeKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/ContextMemoryInitializeKHR.gen.cs
new file mode 100644
index 0000000000..7316020d7f
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ContextMemoryInitializeKHR.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_context_memory_initialize_khr")]
+[Flags]
+public enum ContextMemoryInitializeKHR : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_CONTEXT_MEMORY_INITIALIZE_LOCAL_KHR")]
+ Local = 0x1,
+
+ [NativeName("CL_CONTEXT_MEMORY_INITIALIZE_PRIVATE_KHR")]
+ Private = 0x2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ContextProperties.gen.cs b/sources/OpenCL/OpenCL/Enums/ContextProperties.gen.cs
new file mode 100644
index 0000000000..92b24e2adc
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ContextProperties.gen.cs
@@ -0,0 +1,38 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_context_properties")]
+public enum ContextProperties : long
+{
+ [NativeName("CL_CONTEXT_PLATFORM")]
+ ContextPlatform = 4228,
+
+ [NativeName("CL_CONTEXT_INTEROP_USER_SYNC")]
+ ContextInteropUserSync = 4229,
+
+ [NativeName("CL_CONTEXT_MEMORY_INITIALIZE_KHR")]
+ ContextMemoryInitializeKHR = 8240,
+
+ [NativeName("CL_CONTEXT_TERMINATE_KHR")]
+ ContextTerminateKHR = 8242,
+
+ [NativeName("CL_PRINTF_CALLBACK_ARM")]
+ PrintfCallbackARM = 16560,
+
+ [NativeName("CL_PRINTF_BUFFERSIZE_ARM")]
+ PrintfBuffersizeARM = 16561,
+
+ [NativeName("CL_CONTEXT_SHOW_DIAGNOSTICS_INTEL")]
+ ContextShowDiagnosticsINTEL = 16646,
+
+ [NativeName("CL_CONTEXT_SAFETY_PROPERTIES_IMG")]
+ ContextSafetyPropertiesIMG = 16601,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ContextSafetyPropertiesIMG.gen.cs b/sources/OpenCL/OpenCL/Enums/ContextSafetyPropertiesIMG.gen.cs
new file mode 100644
index 0000000000..97ac14f77c
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ContextSafetyPropertiesIMG.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_context_safety_properties_img")]
+[Flags]
+public enum ContextSafetyPropertiesIMG : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_CONTEXT_WORKGROUP_PROTECTION_IMG")]
+ WorkgroupProtection = 0x1,
+
+ [NativeName("CL_CONTEXT_ENHANCED_EVENT_EXECUTION_STATUS_IMG")]
+ EnhancedEventExecutionStatus = 0x2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/D3D10DeviceSetKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/D3D10DeviceSetKHR.gen.cs
new file mode 100644
index 0000000000..ff470f0f1b
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/D3D10DeviceSetKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_d3d10_device_set_khr")]
+public enum D3D10DeviceSetKHR : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/D3D10DeviceSourceKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/D3D10DeviceSourceKHR.gen.cs
new file mode 100644
index 0000000000..635b67fa7f
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/D3D10DeviceSourceKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_d3d10_device_source_khr")]
+public enum D3D10DeviceSourceKHR : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/D3D11DeviceSetKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/D3D11DeviceSetKHR.gen.cs
new file mode 100644
index 0000000000..4b90233d14
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/D3D11DeviceSetKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_d3d11_device_set_khr")]
+public enum D3D11DeviceSetKHR : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/D3D11DeviceSourceKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/D3D11DeviceSourceKHR.gen.cs
new file mode 100644
index 0000000000..e7fc08dc4a
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/D3D11DeviceSourceKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_d3d11_device_source_khr")]
+public enum D3D11DeviceSourceKHR : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceAffinityDomain.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceAffinityDomain.gen.cs
new file mode 100644
index 0000000000..6a114e61ac
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceAffinityDomain.gen.cs
@@ -0,0 +1,35 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_affinity_domain")]
+[Flags]
+public enum DeviceAffinityDomain : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_DEVICE_AFFINITY_DOMAIN_NUMA")]
+ Numa = 0x1,
+
+ [NativeName("CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE")]
+ L4Cache = 0x2,
+
+ [NativeName("CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE")]
+ L3Cache = 0x4,
+
+ [NativeName("CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE")]
+ L2Cache = 0x8,
+
+ [NativeName("CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE")]
+ L1Cache = 0x10,
+
+ [NativeName("CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE")]
+ NextPartitionable = 0x20,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceAtomicCapabilities.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceAtomicCapabilities.gen.cs
new file mode 100644
index 0000000000..9ff7246520
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceAtomicCapabilities.gen.cs
@@ -0,0 +1,38 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_atomic_capabilities")]
+[Flags]
+public enum DeviceAtomicCapabilities : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_DEVICE_ATOMIC_ORDER_RELAXED")]
+ OrderRelaxed = 0x1,
+
+ [NativeName("CL_DEVICE_ATOMIC_ORDER_ACQ_REL")]
+ OrderAcqRel = 0x2,
+
+ [NativeName("CL_DEVICE_ATOMIC_ORDER_SEQ_CST")]
+ OrderSeqCst = 0x4,
+
+ [NativeName("CL_DEVICE_ATOMIC_SCOPE_WORK_ITEM")]
+ ScopeWorkItem = 0x8,
+
+ [NativeName("CL_DEVICE_ATOMIC_SCOPE_WORK_GROUP")]
+ ScopeWorkGroup = 0x10,
+
+ [NativeName("CL_DEVICE_ATOMIC_SCOPE_DEVICE")]
+ ScopeDevice = 0x20,
+
+ [NativeName("CL_DEVICE_ATOMIC_SCOPE_ALL_DEVICES")]
+ ScopeAllDevices = 0x40,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceCommandBufferCapabilitiesKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceCommandBufferCapabilitiesKHR.gen.cs
new file mode 100644
index 0000000000..f4f3bcde74
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceCommandBufferCapabilitiesKHR.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_command_buffer_capabilities_khr")]
+[Flags]
+public enum DeviceCommandBufferCapabilitiesKHR : ulong
+{
+ None = 0x0,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceControlledTerminationCapabilitiesARM.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceControlledTerminationCapabilitiesARM.gen.cs
new file mode 100644
index 0000000000..0f383544ef
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceControlledTerminationCapabilitiesARM.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_controlled_termination_capabilities_arm")]
+[Flags]
+public enum DeviceControlledTerminationCapabilitiesARM : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_DEVICE_CONTROLLED_TERMINATION_SUCCESS_ARM")]
+ Success = 0x1,
+
+ [NativeName("CL_DEVICE_CONTROLLED_TERMINATION_FAILURE_ARM")]
+ Failure = 0x2,
+
+ [NativeName("CL_DEVICE_CONTROLLED_TERMINATION_QUERY_ARM")]
+ Query = 0x4,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceDeviceEnqueueCapabilities.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceDeviceEnqueueCapabilities.gen.cs
new file mode 100644
index 0000000000..ad3cfa26e7
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceDeviceEnqueueCapabilities.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_device_enqueue_capabilities")]
+[Flags]
+public enum DeviceDeviceEnqueueCapabilities : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_DEVICE_QUEUE_SUPPORTED")]
+ Supported = 0x1,
+
+ [NativeName("CL_DEVICE_QUEUE_REPLACEABLE_DEFAULT")]
+ ReplaceableDefault = 0x2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceExecCapabilities.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceExecCapabilities.gen.cs
new file mode 100644
index 0000000000..8c968da7f8
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceExecCapabilities.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_exec_capabilities")]
+[Flags]
+public enum DeviceExecCapabilities : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_EXEC_KERNEL")]
+ Kernel = 0x1,
+
+ [NativeName("CL_EXEC_NATIVE_KERNEL")]
+ NativeKernel = 0x2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceFeatureCapabilitiesINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceFeatureCapabilitiesINTEL.gen.cs
new file mode 100644
index 0000000000..48599634e8
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceFeatureCapabilitiesINTEL.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_feature_capabilities_intel")]
+[Flags]
+public enum DeviceFeatureCapabilitiesINTEL : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_DEVICE_FEATURE_FLAG_DP4A_INTEL")]
+ Dp4A = 0x1,
+
+ [NativeName("CL_DEVICE_FEATURE_FLAG_DPAS_INTEL")]
+ Dpas = 0x2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceFpAtomicCapabilitiesEXT.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceFpAtomicCapabilitiesEXT.gen.cs
new file mode 100644
index 0000000000..128e2f2d30
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceFpAtomicCapabilitiesEXT.gen.cs
@@ -0,0 +1,35 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_fp_atomic_capabilities_ext")]
+[Flags]
+public enum DeviceFpAtomicCapabilitiesEXT : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_DEVICE_GLOBAL_FP_ATOMIC_LOAD_STORE_EXT")]
+ GlobalFpAtomicLoadStore = 0x1,
+
+ [NativeName("CL_DEVICE_GLOBAL_FP_ATOMIC_ADD_EXT")]
+ GlobalFpAtomicAdd = 0x2,
+
+ [NativeName("CL_DEVICE_GLOBAL_FP_ATOMIC_MIN_MAX_EXT")]
+ GlobalFpAtomicMinMax = 0x4,
+
+ [NativeName("CL_DEVICE_LOCAL_FP_ATOMIC_LOAD_STORE_EXT")]
+ LocalFpAtomicLoadStore = 0x10000,
+
+ [NativeName("CL_DEVICE_LOCAL_FP_ATOMIC_ADD_EXT")]
+ LocalFpAtomicAdd = 0x20000,
+
+ [NativeName("CL_DEVICE_LOCAL_FP_ATOMIC_MIN_MAX_EXT")]
+ LocalFpAtomicMinMax = 0x40000,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceFpConfig.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceFpConfig.gen.cs
new file mode 100644
index 0000000000..79f2a734d1
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceFpConfig.gen.cs
@@ -0,0 +1,41 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_fp_config")]
+[Flags]
+public enum DeviceFpConfig : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_FP_DENORM")]
+ Denorm = 0x1,
+
+ [NativeName("CL_FP_INF_NAN")]
+ InfNan = 0x2,
+
+ [NativeName("CL_FP_ROUND_TO_NEAREST")]
+ RoundToNearest = 0x4,
+
+ [NativeName("CL_FP_ROUND_TO_ZERO")]
+ RoundToZero = 0x8,
+
+ [NativeName("CL_FP_ROUND_TO_INF")]
+ RoundToInf = 0x10,
+
+ [NativeName("CL_FP_FMA")]
+ Fma = 0x20,
+
+ [NativeName("CL_FP_SOFT_FLOAT")]
+ SoftFloat = 0x40,
+
+ [NativeName("CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT")]
+ CorrectlyRoundedDivideSqrt = 0x80,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceInfo.gen.cs
new file mode 100644
index 0000000000..2cd52793d7
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceInfo.gen.cs
@@ -0,0 +1,683 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_info")]
+public enum DeviceInfo : uint
+{
+ [NativeName("CL_DEVICE_TYPE")]
+ DeviceType = 4096,
+
+ [NativeName("CL_DEVICE_VENDOR_ID")]
+ DeviceVendorId = 4097,
+
+ [NativeName("CL_DEVICE_MAX_COMPUTE_UNITS")]
+ DeviceMaxComputeUnits = 4098,
+
+ [NativeName("CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS")]
+ DeviceMaxWorkItemDimensions = 4099,
+
+ [NativeName("CL_DEVICE_MAX_WORK_GROUP_SIZE")]
+ DeviceMaxWorkGroupSize = 4100,
+
+ [NativeName("CL_DEVICE_MAX_WORK_ITEM_SIZES")]
+ DeviceMaxWorkItemSizes = 4101,
+
+ [NativeName("CL_DEVICE_MAX_WORK_GROUP_SIZES")]
+ DeviceMaxWorkGroupSizes = 4101,
+
+ [NativeName("CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR")]
+ DevicePreferredVectorWidthChar = 4102,
+
+ [NativeName("CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT")]
+ DevicePreferredVectorWidthShort = 4103,
+
+ [NativeName("CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT")]
+ DevicePreferredVectorWidthInt = 4104,
+
+ [NativeName("CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG")]
+ DevicePreferredVectorWidthLong = 4105,
+
+ [NativeName("CL_DEVICE_PREFERRED_VECTOR_WIDTH_FLOAT")]
+ DevicePreferredVectorWidthFloat = 4106,
+
+ [NativeName("CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE")]
+ DevicePreferredVectorWidthDouble = 4107,
+
+ [NativeName("CL_DEVICE_MAX_CLOCK_FREQUENCY")]
+ DeviceMaxClockFrequency = 4108,
+
+ [NativeName("CL_DEVICE_ADDRESS_BITS")]
+ DeviceAddressBits = 4109,
+
+ [NativeName("CL_DEVICE_MAX_READ_IMAGE_ARGS")]
+ DeviceMaxReadImageArgs = 4110,
+
+ [NativeName("CL_DEVICE_MAX_WRITE_IMAGE_ARGS")]
+ DeviceMaxWriteImageArgs = 4111,
+
+ [NativeName("CL_DEVICE_MAX_MEM_ALLOC_SIZE")]
+ DeviceMaxMemAllocSize = 4112,
+
+ [NativeName("CL_DEVICE_IMAGE2D_MAX_WIDTH")]
+ DeviceImage2DMaxWidth = 4113,
+
+ [NativeName("CL_DEVICE_IMAGE2D_MAX_HEIGHT")]
+ DeviceImage2DMaxHeight = 4114,
+
+ [NativeName("CL_DEVICE_IMAGE3D_MAX_WIDTH")]
+ DeviceImage3DMaxWidth = 4115,
+
+ [NativeName("CL_DEVICE_IMAGE3D_MAX_HEIGHT")]
+ DeviceImage3DMaxHeight = 4116,
+
+ [NativeName("CL_DEVICE_IMAGE3D_MAX_DEPTH")]
+ DeviceImage3DMaxDepth = 4117,
+
+ [NativeName("CL_DEVICE_IMAGE_SUPPORT")]
+ DeviceImageSupport = 4118,
+
+ [NativeName("CL_DEVICE_MAX_PARAMETER_SIZE")]
+ DeviceMaxParameterSize = 4119,
+
+ [NativeName("CL_DEVICE_MAX_SAMPLERS")]
+ DeviceMaxSamplers = 4120,
+
+ [NativeName("CL_DEVICE_MEM_BASE_ADDR_ALIGN")]
+ DeviceMemBaseAddrAlign = 4121,
+
+ [NativeName("CL_DEVICE_MIN_DATA_TYPE_ALIGN_SIZE")]
+ DeviceMinDataTypeAlignSize = 4122,
+
+ [NativeName("CL_DEVICE_SINGLE_FP_CONFIG")]
+ DeviceSingleFpConfig = 4123,
+
+ [NativeName("CL_DEVICE_GLOBAL_MEM_CACHE_TYPE")]
+ DeviceGlobalMemCacheType = 4124,
+
+ [NativeName("CL_DEVICE_GLOBAL_MEM_CACHELINE_SIZE")]
+ DeviceGlobalMemCachelineSize = 4125,
+
+ [NativeName("CL_DEVICE_GLOBAL_MEM_CACHE_SIZE")]
+ DeviceGlobalMemCacheSize = 4126,
+
+ [NativeName("CL_DEVICE_GLOBAL_MEM_SIZE")]
+ DeviceGlobalMemSize = 4127,
+
+ [NativeName("CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE")]
+ DeviceMaxConstantBufferSize = 4128,
+
+ [NativeName("CL_DEVICE_MAX_CONSTANT_ARGS")]
+ DeviceMaxConstantArgs = 4129,
+
+ [NativeName("CL_DEVICE_LOCAL_MEM_TYPE")]
+ DeviceLocalMemType = 4130,
+
+ [NativeName("CL_DEVICE_LOCAL_MEM_SIZE")]
+ DeviceLocalMemSize = 4131,
+
+ [NativeName("CL_DEVICE_ERROR_CORRECTION_SUPPORT")]
+ DeviceErrorCorrectionSupport = 4132,
+
+ [NativeName("CL_DEVICE_PROFILING_TIMER_RESOLUTION")]
+ DeviceProfilingTimerResolution = 4133,
+
+ [NativeName("CL_DEVICE_ENDIAN_LITTLE")]
+ DeviceEndianLittle = 4134,
+
+ [NativeName("CL_DEVICE_AVAILABLE")]
+ DeviceAvailable = 4135,
+
+ [NativeName("CL_DEVICE_COMPILER_AVAILABLE")]
+ DeviceCompilerAvailable = 4136,
+
+ [NativeName("CL_DEVICE_EXECUTION_CAPABILITIES")]
+ DeviceExecutionCapabilities = 4137,
+
+ [NativeName("CL_DEVICE_QUEUE_PROPERTIES")]
+ DeviceQueueProperties = 4138,
+
+ [NativeName("CL_DEVICE_QUEUE_ON_HOST_PROPERTIES")]
+ DeviceQueueOnHostProperties = 4138,
+
+ [NativeName("CL_DEVICE_NAME")]
+ DeviceName = 4139,
+
+ [NativeName("CL_DEVICE_VENDOR")]
+ DeviceVendor = 4140,
+
+ [NativeName("CL_DRIVER_VERSION")]
+ DriverVersion = 4141,
+
+ [NativeName("CL_DEVICE_PROFILE")]
+ DeviceProfile = 4142,
+
+ [NativeName("CL_DEVICE_VERSION")]
+ DeviceVersion = 4143,
+
+ [NativeName("CL_DEVICE_EXTENSIONS")]
+ DeviceExtensions = 4144,
+
+ [NativeName("CL_DEVICE_PLATFORM")]
+ DevicePlatform = 4145,
+
+ [NativeName("CL_DEVICE_DOUBLE_FP_CONFIG")]
+ DeviceDoubleFpConfig = 4146,
+
+ [NativeName("CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF")]
+ DevicePreferredVectorWidthHalf = 4148,
+
+ [NativeName("CL_DEVICE_HOST_UNIFIED_MEMORY")]
+ DeviceHostUnifiedMemory = 4149,
+
+ [NativeName("CL_DEVICE_NATIVE_VECTOR_WIDTH_CHAR")]
+ DeviceNativeVectorWidthChar = 4150,
+
+ [NativeName("CL_DEVICE_NATIVE_VECTOR_WIDTH_SHORT")]
+ DeviceNativeVectorWidthShort = 4151,
+
+ [NativeName("CL_DEVICE_NATIVE_VECTOR_WIDTH_INT")]
+ DeviceNativeVectorWidthInt = 4152,
+
+ [NativeName("CL_DEVICE_NATIVE_VECTOR_WIDTH_LONG")]
+ DeviceNativeVectorWidthLong = 4153,
+
+ [NativeName("CL_DEVICE_NATIVE_VECTOR_WIDTH_FLOAT")]
+ DeviceNativeVectorWidthFloat = 4154,
+
+ [NativeName("CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE")]
+ DeviceNativeVectorWidthDouble = 4155,
+
+ [NativeName("CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF")]
+ DeviceNativeVectorWidthHalf = 4156,
+
+ [NativeName("CL_DEVICE_OPENCL_C_VERSION")]
+ DeviceOpenclCVersion = 4157,
+
+ [NativeName("CL_DEVICE_LINKER_AVAILABLE")]
+ DeviceLinkerAvailable = 4158,
+
+ [NativeName("CL_DEVICE_BUILT_IN_KERNELS")]
+ DeviceBuiltInKernels = 4159,
+
+ [NativeName("CL_DEVICE_IMAGE_MAX_BUFFER_SIZE")]
+ DeviceImageMaxBufferSize = 4160,
+
+ [NativeName("CL_DEVICE_IMAGE_MAX_ARRAY_SIZE")]
+ DeviceImageMaxArraySize = 4161,
+
+ [NativeName("CL_DEVICE_PARENT_DEVICE")]
+ DeviceParentDevice = 4162,
+
+ [NativeName("CL_DEVICE_PARTITION_MAX_SUB_DEVICES")]
+ DevicePartitionMaxSubDevices = 4163,
+
+ [NativeName("CL_DEVICE_PARTITION_PROPERTIES")]
+ DevicePartitionProperties = 4164,
+
+ [NativeName("CL_DEVICE_PARTITION_AFFINITY_DOMAIN")]
+ DevicePartitionAffinityDomain = 4165,
+
+ [NativeName("CL_DEVICE_PARTITION_TYPE")]
+ DevicePartitionType = 4166,
+
+ [NativeName("CL_DEVICE_REFERENCE_COUNT")]
+ DeviceReferenceCount = 4167,
+
+ [NativeName("CL_DEVICE_PREFERRED_INTEROP_USER_SYNC")]
+ DevicePreferredInteropUserSync = 4168,
+
+ [NativeName("CL_DEVICE_PRINTF_BUFFER_SIZE")]
+ DevicePrintfBufferSize = 4169,
+
+ [NativeName("CL_DEVICE_IMAGE_PITCH_ALIGNMENT")]
+ DeviceImagePitchAlignment = 4170,
+
+ [NativeName("CL_DEVICE_IMAGE_BASE_ADDRESS_ALIGNMENT")]
+ DeviceImageBaseAddressAlignment = 4171,
+
+ [NativeName("CL_DEVICE_MAX_READ_WRITE_IMAGE_ARGS")]
+ DeviceMaxReadWriteImageArgs = 4172,
+
+ [NativeName("CL_DEVICE_MAX_GLOBAL_VARIABLE_SIZE")]
+ DeviceMaxGlobalVariableSize = 4173,
+
+ [NativeName("CL_DEVICE_QUEUE_ON_DEVICE_PROPERTIES")]
+ DeviceQueueOnDeviceProperties = 4174,
+
+ [NativeName("CL_DEVICE_QUEUE_ON_DEVICE_PREFERRED_SIZE")]
+ DeviceQueueOnDevicePreferredSize = 4175,
+
+ [NativeName("CL_DEVICE_QUEUE_ON_DEVICE_MAX_SIZE")]
+ DeviceQueueOnDeviceMaxSize = 4176,
+
+ [NativeName("CL_DEVICE_MAX_ON_DEVICE_QUEUES")]
+ DeviceMaxOnDeviceQueues = 4177,
+
+ [NativeName("CL_DEVICE_MAX_ON_DEVICE_EVENTS")]
+ DeviceMaxOnDeviceEvents = 4178,
+
+ [NativeName("CL_DEVICE_SVM_CAPABILITIES")]
+ DeviceSvmCapabilities = 4179,
+
+ [NativeName("CL_DEVICE_GLOBAL_VARIABLE_PREFERRED_TOTAL_SIZE")]
+ DeviceGlobalVariablePreferredTotalSize = 4180,
+
+ [NativeName("CL_DEVICE_MAX_PIPE_ARGS")]
+ DeviceMaxPipeArgs = 4181,
+
+ [NativeName("CL_DEVICE_PIPE_MAX_ACTIVE_RESERVATIONS")]
+ DevicePipeMaxActiveReservations = 4182,
+
+ [NativeName("CL_DEVICE_PIPE_MAX_PACKET_SIZE")]
+ DevicePipeMaxPacketSize = 4183,
+
+ [NativeName("CL_DEVICE_PREFERRED_PLATFORM_ATOMIC_ALIGNMENT")]
+ DevicePreferredPlatformAtomicAlignment = 4184,
+
+ [NativeName("CL_DEVICE_PREFERRED_GLOBAL_ATOMIC_ALIGNMENT")]
+ DevicePreferredGlobalAtomicAlignment = 4185,
+
+ [NativeName("CL_DEVICE_PREFERRED_LOCAL_ATOMIC_ALIGNMENT")]
+ DevicePreferredLocalAtomicAlignment = 4186,
+
+ [NativeName("CL_DEVICE_IL_VERSION")]
+ DeviceIlVersion = 4187,
+
+ [NativeName("CL_DEVICE_MAX_NUM_SUB_GROUPS")]
+ DeviceMaxNumSubGroups = 4188,
+
+ [NativeName("CL_DEVICE_SUB_GROUP_INDEPENDENT_FORWARD_PROGRESS")]
+ DeviceSubGroupIndependentForwardProgress = 4189,
+
+ [NativeName("CL_DEVICE_NUMERIC_VERSION")]
+ DeviceNumericVersion = 4190,
+
+ [NativeName("CL_DEVICE_EXTENSIONS_WITH_VERSION")]
+ DeviceExtensionsWithVersion = 4192,
+
+ [NativeName("CL_DEVICE_ILS_WITH_VERSION")]
+ DeviceIlsWithVersion = 4193,
+
+ [NativeName("CL_DEVICE_BUILT_IN_KERNELS_WITH_VERSION")]
+ DeviceBuiltInKernelsWithVersion = 4194,
+
+ [NativeName("CL_DEVICE_ATOMIC_MEMORY_CAPABILITIES")]
+ DeviceAtomicMemoryCapabilities = 4195,
+
+ [NativeName("CL_DEVICE_ATOMIC_FENCE_CAPABILITIES")]
+ DeviceAtomicFenceCapabilities = 4196,
+
+ [NativeName("CL_DEVICE_NON_UNIFORM_WORK_GROUP_SUPPORT")]
+ DeviceNonUniformWorkGroupSupport = 4197,
+
+ [NativeName("CL_DEVICE_OPENCL_C_ALL_VERSIONS")]
+ DeviceOpenclCAllVersions = 4198,
+
+ [NativeName("CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_MULTIPLE")]
+ DevicePreferredWorkGroupSizeMultiple = 4199,
+
+ [NativeName("CL_DEVICE_WORK_GROUP_COLLECTIVE_FUNCTIONS_SUPPORT")]
+ DeviceWorkGroupCollectiveFunctionsSupport = 4200,
+
+ [NativeName("CL_DEVICE_GENERIC_ADDRESS_SPACE_SUPPORT")]
+ DeviceGenericAddressSpaceSupport = 4201,
+
+ [NativeName("CL_DEVICE_UUID")]
+ DeviceUuid = 4202,
+
+ [NativeName("CL_DRIVER_UUID")]
+ DriverUuid = 4203,
+
+ [NativeName("CL_DEVICE_LUID_VALID")]
+ DeviceLuidValid = 4204,
+
+ [NativeName("CL_DEVICE_LUID")]
+ DeviceLuid = 4205,
+
+ [NativeName("CL_DEVICE_NODE_MASK")]
+ DeviceNodeMask = 4206,
+
+ [NativeName("CL_DEVICE_OPENCL_C_FEATURES")]
+ DeviceOpenclCFeatures = 4207,
+
+ [NativeName("CL_DEVICE_DEVICE_ENQUEUE_CAPABILITIES")]
+ DeviceDeviceEnqueueCapabilities = 4208,
+
+ [NativeName("CL_DEVICE_PIPE_SUPPORT")]
+ DevicePipeSupport = 4209,
+
+ [NativeName("CL_DEVICE_LATEST_CONFORMANCE_VERSION_PASSED")]
+ DeviceLatestConformanceVersionPassed = 4210,
+
+ [NativeName("CL_DEVICE_INTEGER_DOT_PRODUCT_CAPABILITIES")]
+ DeviceIntegerDotProductCapabilities = 4211,
+
+ [NativeName("CL_DEVICE_INTEGER_DOT_PRODUCT_ACCELERATION_PROPERTIES_8BIT")]
+ DeviceIntegerDotProductAccelerationProperties8Bit = 4212,
+
+ [NativeName("CL_DEVICE_INTEGER_DOT_PRODUCT_ACCELERATION_PROPERTIES_4x8BIT_PACKED")]
+ DeviceIntegerDotProductAccelerationProperties4x8BitPacked = 4213,
+
+ [NativeName("CL_DEVICE_SPIRV_EXTENDED_INSTRUCTION_SETS")]
+ DeviceSpirvExtendedInstructionSets = 4793,
+
+ [NativeName("CL_DEVICE_SPIRV_EXTENSIONS")]
+ DeviceSpirvExtensions = 4794,
+
+ [NativeName("CL_DEVICE_SPIRV_CAPABILITIES")]
+ DeviceSpirvCapabilities = 4795,
+
+ [NativeName("CL_DEVICE_HALF_FP_CONFIG")]
+ DeviceHalfFpConfig = 4147,
+
+ [NativeName("CL_DEVICE_IL_VERSION_KHR")]
+ DeviceIlVersionKHR = 4187,
+
+ [NativeName("CL_DEVICE_IMAGE_PITCH_ALIGNMENT_KHR")]
+ DeviceImagePitchAlignmentKHR = 4170,
+
+ [NativeName("CL_DEVICE_IMAGE_BASE_ADDRESS_ALIGNMENT_KHR")]
+ DeviceImageBaseAddressAlignmentKHR = 4171,
+
+ [NativeName("CL_DEVICE_TERMINATE_CAPABILITY_KHR")]
+ DeviceTerminateCapabilityKHR = 8241,
+
+ [NativeName("CL_DEVICE_SPIR_VERSIONS")]
+ DeviceSpirVersions = 16608,
+
+ [NativeName("CL_DEVICE_COMPUTE_CAPABILITY_MAJOR_NV")]
+ DeviceComputeCapabilityMajorNV = 16384,
+
+ [NativeName("CL_DEVICE_COMPUTE_CAPABILITY_MINOR_NV")]
+ DeviceComputeCapabilityMinorNV = 16385,
+
+ [NativeName("CL_DEVICE_REGISTERS_PER_BLOCK_NV")]
+ DeviceRegistersPerBlockNV = 16386,
+
+ [NativeName("CL_DEVICE_WARP_SIZE_NV")]
+ DeviceWarpSizeNV = 16387,
+
+ [NativeName("CL_DEVICE_GPU_OVERLAP_NV")]
+ DeviceGpuOverlapNV = 16388,
+
+ [NativeName("CL_DEVICE_KERNEL_EXEC_TIMEOUT_NV")]
+ DeviceKernelExecTimeoutNV = 16389,
+
+ [NativeName("CL_DEVICE_INTEGRATED_MEMORY_NV")]
+ DeviceIntegratedMemoryNV = 16390,
+
+ [NativeName("CL_DEVICE_PROFILING_TIMER_OFFSET_AMD")]
+ DeviceProfilingTimerOffsetAMD = 16438,
+
+ [NativeName("CL_DEVICE_TOPOLOGY_AMD")]
+ DeviceTopologyAMD = 16439,
+
+ [NativeName("CL_DEVICE_BOARD_NAME_AMD")]
+ DeviceBoardNameAMD = 16440,
+
+ [NativeName("CL_DEVICE_GLOBAL_FREE_MEMORY_AMD")]
+ DeviceGlobalFreeMemoryAMD = 16441,
+
+ [NativeName("CL_DEVICE_SIMD_PER_COMPUTE_UNIT_AMD")]
+ DeviceSimdPerComputeUnitAMD = 16448,
+
+ [NativeName("CL_DEVICE_SIMD_WIDTH_AMD")]
+ DeviceSimdWidthAMD = 16449,
+
+ [NativeName("CL_DEVICE_SIMD_INSTRUCTION_WIDTH_AMD")]
+ DeviceSimdInstructionWidthAMD = 16450,
+
+ [NativeName("CL_DEVICE_WAVEFRONT_WIDTH_AMD")]
+ DeviceWavefrontWidthAMD = 16451,
+
+ [NativeName("CL_DEVICE_GLOBAL_MEM_CHANNELS_AMD")]
+ DeviceGlobalMemChannelsAMD = 16452,
+
+ [NativeName("CL_DEVICE_GLOBAL_MEM_CHANNEL_BANKS_AMD")]
+ DeviceGlobalMemChannelBanksAMD = 16453,
+
+ [NativeName("CL_DEVICE_GLOBAL_MEM_CHANNEL_BANK_WIDTH_AMD")]
+ DeviceGlobalMemChannelBankWidthAMD = 16454,
+
+ [NativeName("CL_DEVICE_LOCAL_MEM_SIZE_PER_COMPUTE_UNIT_AMD")]
+ DeviceLocalMemSizePerComputeUnitAMD = 16455,
+
+ [NativeName("CL_DEVICE_LOCAL_MEM_BANKS_AMD")]
+ DeviceLocalMemBanksAMD = 16456,
+
+ [NativeName("CL_DEVICE_THREAD_TRACE_SUPPORTED_AMD")]
+ DeviceThreadTraceSupportedAMD = 16457,
+
+ [NativeName("CL_DEVICE_GFXIP_MAJOR_AMD")]
+ DeviceGfxipMajorAMD = 16458,
+
+ [NativeName("CL_DEVICE_GFXIP_MINOR_AMD")]
+ DeviceGfxipMinorAMD = 16459,
+
+ [NativeName("CL_DEVICE_AVAILABLE_ASYNC_QUEUES_AMD")]
+ DeviceAvailableAsyncQueuesAMD = 16460,
+
+ [NativeName("CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD")]
+ DevicePreferredWorkGroupSizeAMD = 16432,
+
+ [NativeName("CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD")]
+ DeviceMaxWorkGroupSizeAMD = 16433,
+
+ [NativeName("CL_DEVICE_PREFERRED_CONSTANT_BUFFER_SIZE_AMD")]
+ DevicePreferredConstantBufferSizeAMD = 16435,
+
+ [NativeName("CL_DEVICE_PCIE_ID_AMD")]
+ DevicePcieIdAMD = 16436,
+
+ [NativeName("CL_DEVICE_PARENT_DEVICE_EXT")]
+ DeviceParentDeviceEXT = 16468,
+
+ [NativeName("CL_DEVICE_PARTITION_TYPES_EXT")]
+ DevicePartitionTypesEXT = 16469,
+
+ [NativeName("CL_DEVICE_AFFINITY_DOMAINS_EXT")]
+ DeviceAffinityDomainsEXT = 16470,
+
+ [NativeName("CL_DEVICE_REFERENCE_COUNT_EXT")]
+ DeviceReferenceCountEXT = 16471,
+
+ [NativeName("CL_DEVICE_PARTITION_STYLE_EXT")]
+ DevicePartitionStyleEXT = 16472,
+
+ [NativeName("CL_DEVICE_CXX_FOR_OPENCL_NUMERIC_VERSION_EXT")]
+ DeviceCxxForOpenclNumericVersionEXT = 16944,
+
+ [NativeName("CL_DEVICE_EXT_MEM_PADDING_IN_BYTES_QCOM")]
+ DeviceExtMemPaddingInBytesQCOM = 16544,
+
+ [NativeName("CL_DEVICE_PAGE_SIZE_QCOM")]
+ DevicePageSizeQCOM = 16545,
+
+ [NativeName("CL_DEVICE_MEMORY_CAPABILITIES_IMG")]
+ DeviceMemoryCapabilitiesIMG = 16600,
+
+ [NativeName("CL_DEVICE_MAX_NAMED_BARRIER_COUNT_KHR")]
+ DeviceMaxNamedBarrierCountKHR = 8245,
+
+ [NativeName("CL_DEVICE_NUMERIC_VERSION_KHR")]
+ DeviceNumericVersionKHR = 4190,
+
+ [NativeName("CL_DEVICE_OPENCL_C_NUMERIC_VERSION_KHR")]
+ DeviceOpenclCNumericVersionKHR = 4191,
+
+ [NativeName("CL_DEVICE_EXTENSIONS_WITH_VERSION_KHR")]
+ DeviceExtensionsWithVersionKHR = 4192,
+
+ [NativeName("CL_DEVICE_ILS_WITH_VERSION_KHR")]
+ DeviceIlsWithVersionKHR = 4193,
+
+ [NativeName("CL_DEVICE_BUILT_IN_KERNELS_WITH_VERSION_KHR")]
+ DeviceBuiltInKernelsWithVersionKHR = 4194,
+
+ [NativeName("CL_DEVICE_UUID_KHR")]
+ DeviceUuidKHR = 4202,
+
+ [NativeName("CL_DRIVER_UUID_KHR")]
+ DriverUuidKHR = 4203,
+
+ [NativeName("CL_DEVICE_LUID_VALID_KHR")]
+ DeviceLuidValidKHR = 4204,
+
+ [NativeName("CL_DEVICE_LUID_KHR")]
+ DeviceLuidKHR = 4205,
+
+ [NativeName("CL_DEVICE_NODE_MASK_KHR")]
+ DeviceNodeMaskKHR = 4206,
+
+ [NativeName("CL_DEVICE_PCI_BUS_INFO_KHR")]
+ DevicePciBusInfoKHR = 16655,
+
+ [NativeName("CL_DEVICE_INTEGER_DOT_PRODUCT_CAPABILITIES_KHR")]
+ DeviceIntegerDotProductCapabilitiesKHR = 4211,
+
+ [NativeName("CL_DEVICE_INTEGER_DOT_PRODUCT_ACCELERATION_PROPERTIES_8BIT_KHR")]
+ DeviceIntegerDotProductAccelerationProperties8BitKHR = 4212,
+
+ [NativeName("CL_DEVICE_INTEGER_DOT_PRODUCT_ACCELERATION_PROPERTIES_4x8BIT_PACKED_KHR")]
+ DeviceIntegerDotProductAccelerationProperties4x8BitPackedKHR = 4213,
+
+ [NativeName("CL_DEVICE_EXTERNAL_MEMORY_IMPORT_HANDLE_TYPES_KHR")]
+ DeviceExternalMemoryImportHandleTypesKHR = 8271,
+
+ [NativeName("CL_DEVICE_EXTERNAL_MEMORY_IMPORT_ASSUME_LINEAR_IMAGES_HANDLE_TYPES_KHR")]
+ DeviceExternalMemoryImportAssumeLinearImagesHandleTypesKHR = 8274,
+
+ [NativeName("CL_DEVICE_SEMAPHORE_IMPORT_HANDLE_TYPES_KHR")]
+ DeviceSemaphoreImportHandleTypesKHR = 8269,
+
+ [NativeName("CL_DEVICE_SEMAPHORE_EXPORT_HANDLE_TYPES_KHR")]
+ DeviceSemaphoreExportHandleTypesKHR = 8270,
+
+ [NativeName("CL_DEVICE_SEMAPHORE_TYPES_KHR")]
+ DeviceSemaphoreTypesKHR = 8268,
+
+ [NativeName("CL_DEVICE_SVM_CAPABILITIES_ARM")]
+ DeviceSvmCapabilitiesARM = 16566,
+
+ [NativeName("CL_DEVICE_COMPUTE_UNITS_BITFIELD_ARM")]
+ DeviceComputeUnitsBitfieldARM = 16575,
+
+ [NativeName("CL_DEVICE_JOB_SLOTS_ARM")]
+ DeviceJobSlotsARM = 16864,
+
+ [NativeName("CL_DEVICE_SCHEDULING_CONTROLS_CAPABILITIES_ARM")]
+ DeviceSchedulingControlsCapabilitiesARM = 16868,
+
+ [NativeName("CL_DEVICE_SUPPORTED_REGISTER_ALLOCATIONS_ARM")]
+ DeviceSupportedRegisterAllocationsARM = 16875,
+
+ [NativeName("CL_DEVICE_MAX_WARP_COUNT_ARM")]
+ DeviceMaxWarpCountARM = 16874,
+
+ [NativeName("CL_DEVICE_CONTROLLED_TERMINATION_CAPABILITIES_ARM")]
+ DeviceControlledTerminationCapabilitiesARM = 16878,
+
+ [NativeName("CL_DEVICE_IP_VERSION_INTEL")]
+ DeviceIpVersionINTEL = 16976,
+
+ [NativeName("CL_DEVICE_ID_INTEL")]
+ DeviceIdINTEL = 16977,
+
+ [NativeName("CL_DEVICE_NUM_SLICES_INTEL")]
+ DeviceNumSlicesINTEL = 16978,
+
+ [NativeName("CL_DEVICE_NUM_SUB_SLICES_PER_SLICE_INTEL")]
+ DeviceNumSubSlicesPerSliceINTEL = 16979,
+
+ [NativeName("CL_DEVICE_NUM_EUS_PER_SUB_SLICE_INTEL")]
+ DeviceNumEusPerSubSliceINTEL = 16980,
+
+ [NativeName("CL_DEVICE_NUM_THREADS_PER_EU_INTEL")]
+ DeviceNumThreadsPerEuINTEL = 16981,
+
+ [NativeName("CL_DEVICE_FEATURE_CAPABILITIES_INTEL")]
+ DeviceFeatureCapabilitiesINTEL = 16982,
+
+ [NativeName("CL_DEVICE_ME_VERSION_INTEL")]
+ DeviceMeVersionINTEL = 16510,
+
+ [NativeName("CL_DEVICE_SIMULTANEOUS_INTEROPS_INTEL")]
+ DeviceSimultaneousInteropsINTEL = 16644,
+
+ [NativeName("CL_DEVICE_NUM_SIMULTANEOUS_INTEROPS_INTEL")]
+ DeviceNumSimultaneousInteropsINTEL = 16645,
+
+ [NativeName("CL_DEVICE_SUB_GROUP_SIZES_INTEL")]
+ DeviceSubGroupSizesINTEL = 16648,
+
+ [NativeName("CL_DEVICE_PLANAR_YUV_MAX_WIDTH_INTEL")]
+ DevicePlanarYuvMaxWidthINTEL = 16766,
+
+ [NativeName("CL_DEVICE_PLANAR_YUV_MAX_HEIGHT_INTEL")]
+ DevicePlanarYuvMaxHeightINTEL = 16767,
+
+ [NativeName("CL_DEVICE_AVC_ME_VERSION_INTEL")]
+ DeviceAvcMeVersionINTEL = 16651,
+
+ [NativeName("CL_DEVICE_AVC_ME_SUPPORTS_TEXTURE_SAMPLER_USE_INTEL")]
+ DeviceAvcMeSupportsTextureSamplerUseINTEL = 16652,
+
+ [NativeName("CL_DEVICE_AVC_ME_SUPPORTS_PREEMPTION_INTEL")]
+ DeviceAvcMeSupportsPreemptionINTEL = 16653,
+
+ [NativeName("CL_DEVICE_HOST_MEM_CAPABILITIES_INTEL")]
+ DeviceHostMemCapabilitiesINTEL = 16784,
+
+ [NativeName("CL_DEVICE_DEVICE_MEM_CAPABILITIES_INTEL")]
+ DeviceDeviceMemCapabilitiesINTEL = 16785,
+
+ [NativeName("CL_DEVICE_SINGLE_DEVICE_SHARED_MEM_CAPABILITIES_INTEL")]
+ DeviceSingleDeviceSharedMemCapabilitiesINTEL = 16786,
+
+ [NativeName("CL_DEVICE_CROSS_DEVICE_SHARED_MEM_CAPABILITIES_INTEL")]
+ DeviceCrossDeviceSharedMemCapabilitiesINTEL = 16787,
+
+ [NativeName("CL_DEVICE_SHARED_SYSTEM_MEM_CAPABILITIES_INTEL")]
+ DeviceSharedSystemMemCapabilitiesINTEL = 16788,
+
+ [NativeName("CL_DEVICE_QUEUE_FAMILY_PROPERTIES_INTEL")]
+ DeviceQueueFamilyPropertiesINTEL = 16779,
+
+ [NativeName("CL_DEVICE_SINGLE_FP_ATOMIC_CAPABILITIES_EXT")]
+ DeviceSingleFpAtomicCapabilitiesEXT = 16945,
+
+ [NativeName("CL_DEVICE_DOUBLE_FP_ATOMIC_CAPABILITIES_EXT")]
+ DeviceDoubleFpAtomicCapabilitiesEXT = 16946,
+
+ [NativeName("CL_DEVICE_HALF_FP_ATOMIC_CAPABILITIES_EXT")]
+ DeviceHalfFpAtomicCapabilitiesEXT = 16947,
+
+ [NativeName("CL_DEVICE_KERNEL_CLOCK_CAPABILITIES_KHR")]
+ DeviceKernelClockCapabilitiesKHR = 4214,
+
+ [NativeName("CL_DEVICE_SPIRV_EXTENDED_INSTRUCTION_SETS_KHR")]
+ DeviceSpirvExtendedInstructionSetsKHR = 4793,
+
+ [NativeName("CL_DEVICE_SPIRV_EXTENSIONS_KHR")]
+ DeviceSpirvExtensionsKHR = 4794,
+
+ [NativeName("CL_DEVICE_SPIRV_CAPABILITIES_KHR")]
+ DeviceSpirvCapabilitiesKHR = 4795,
+
+ [NativeName("CL_DEVICE_WORKGROUP_PROTECTION_SVM_CAPABILITIES_IMG")]
+ DeviceWorkgroupProtectionSvmCapabilitiesIMG = 16602,
+
+ [NativeName("CL_DEVICE_WORKGROUP_PROTECTION_DEVICE_ENQUEUE_CAPABILITIES_IMG")]
+ DeviceWorkgroupProtectionDeviceEnqueueCapabilitiesIMG = 16603,
+
+ [NativeName("CL_DEVICE_SAFETY_MEM_SIZE_IMG")]
+ DeviceSafetyMemSizeIMG = 16604,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceIntegerDotProductCapabilities.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceIntegerDotProductCapabilities.gen.cs
new file mode 100644
index 0000000000..055a4e89ab
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceIntegerDotProductCapabilities.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_integer_dot_product_capabilities")]
+[Flags]
+public enum DeviceIntegerDotProductCapabilities : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_DEVICE_INTEGER_DOT_PRODUCT_INPUT_4x8BIT_PACKED")]
+ BitPacked = 0x1,
+
+ [NativeName("CL_DEVICE_INTEGER_DOT_PRODUCT_INPUT_4x8BIT")]
+ Bit = 0x2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceIntegerDotProductCapabilitiesKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceIntegerDotProductCapabilitiesKHR.gen.cs
new file mode 100644
index 0000000000..4e4aca018d
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceIntegerDotProductCapabilitiesKHR.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_integer_dot_product_capabilities_khr")]
+[Flags]
+public enum DeviceIntegerDotProductCapabilitiesKHR : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_DEVICE_INTEGER_DOT_PRODUCT_INPUT_4x8BIT_PACKED_KHR")]
+ BitPacked = 0x1,
+
+ [NativeName("CL_DEVICE_INTEGER_DOT_PRODUCT_INPUT_4x8BIT_KHR")]
+ Bit = 0x2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceKernelClockCapabilitiesKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceKernelClockCapabilitiesKHR.gen.cs
new file mode 100644
index 0000000000..7c49378326
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceKernelClockCapabilitiesKHR.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_kernel_clock_capabilities_khr")]
+[Flags]
+public enum DeviceKernelClockCapabilitiesKHR : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_DEVICE_KERNEL_CLOCK_SCOPE_DEVICE_KHR")]
+ Device = 0x1,
+
+ [NativeName("CL_DEVICE_KERNEL_CLOCK_SCOPE_WORK_GROUP_KHR")]
+ WorkGroup = 0x2,
+
+ [NativeName("CL_DEVICE_KERNEL_CLOCK_SCOPE_SUB_GROUP_KHR")]
+ SubGroup = 0x4,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceLocalMemType.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceLocalMemType.gen.cs
new file mode 100644
index 0000000000..0151f292ac
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceLocalMemType.gen.cs
@@ -0,0 +1,20 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_local_mem_type")]
+public enum DeviceLocalMemType : uint
+{
+ [NativeName("CL_LOCAL")]
+ Local = 1,
+
+ [NativeName("CL_GLOBAL")]
+ Global = 2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceMemCacheType.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceMemCacheType.gen.cs
new file mode 100644
index 0000000000..2a6a7555b1
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceMemCacheType.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_mem_cache_type")]
+public enum DeviceMemCacheType : uint
+{
+ [NativeName("CL_NONE")]
+ None = 0,
+
+ [NativeName("CL_READ_ONLY_CACHE")]
+ ReadOnlyCache = 1,
+
+ [NativeName("CL_READ_WRITE_CACHE")]
+ ReadWriteCache = 2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DevicePartitionProperty.gen.cs b/sources/OpenCL/OpenCL/Enums/DevicePartitionProperty.gen.cs
new file mode 100644
index 0000000000..7ae604aede
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DevicePartitionProperty.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_partition_property")]
+public enum DevicePartitionProperty : long
+{
+ [NativeName("CL_DEVICE_PARTITION_EQUALLY")]
+ Equally = 4230,
+
+ [NativeName("CL_DEVICE_PARTITION_BY_COUNTS")]
+ ByCounts = 4231,
+
+ [NativeName("CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN")]
+ ByAffinityDomain = 4232,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DevicePartitionPropertyEXT.gen.cs b/sources/OpenCL/OpenCL/Enums/DevicePartitionPropertyEXT.gen.cs
new file mode 100644
index 0000000000..466259d67a
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DevicePartitionPropertyEXT.gen.cs
@@ -0,0 +1,44 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_partition_property_ext")]
+public enum DevicePartitionPropertyEXT : ulong
+{
+ [NativeName("CL_DEVICE_PARTITION_EQUALLY_EXT")]
+ DevicePartitionEqually = 16464,
+
+ [NativeName("CL_DEVICE_PARTITION_BY_COUNTS_EXT")]
+ DevicePartitionByCounts = 16465,
+
+ [NativeName("CL_DEVICE_PARTITION_BY_NAMES_EXT")]
+ DevicePartitionByNames = 16466,
+
+ [NativeName("CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN_EXT")]
+ DevicePartitionByAffinityDomain = 16467,
+
+ [NativeName("CL_AFFINITY_DOMAIN_L1_CACHE_EXT")]
+ AffinityDomainL1Cache = 1,
+
+ [NativeName("CL_AFFINITY_DOMAIN_L2_CACHE_EXT")]
+ AffinityDomainL2Cache = 2,
+
+ [NativeName("CL_AFFINITY_DOMAIN_L3_CACHE_EXT")]
+ AffinityDomainL3Cache = 3,
+
+ [NativeName("CL_AFFINITY_DOMAIN_L4_CACHE_EXT")]
+ AffinityDomainL4Cache = 4,
+
+ [NativeName("CL_AFFINITY_DOMAIN_NUMA_EXT")]
+ AffinityDomainNuma = 16,
+
+ [NativeName("CL_AFFINITY_DOMAIN_NEXT_FISSIONABLE_EXT")]
+ AffinityDomainNextFissionable = 256,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSchedulingControlsCapabilitiesARM.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSchedulingControlsCapabilitiesARM.gen.cs
new file mode 100644
index 0000000000..ed8448f508
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSchedulingControlsCapabilitiesARM.gen.cs
@@ -0,0 +1,41 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_scheduling_controls_capabilities_arm")]
+[Flags]
+public enum DeviceSchedulingControlsCapabilitiesARM : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_DEVICE_SCHEDULING_KERNEL_BATCHING_ARM")]
+ KernelBatching = 0x1,
+
+ [NativeName("CL_DEVICE_SCHEDULING_WORKGROUP_BATCH_SIZE_ARM")]
+ WorkgroupBatchSize = 0x2,
+
+ [NativeName("CL_DEVICE_SCHEDULING_WORKGROUP_BATCH_SIZE_MODIFIER_ARM")]
+ WorkgroupBatchSizeModifier = 0x4,
+
+ [NativeName("CL_DEVICE_SCHEDULING_DEFERRED_FLUSH_ARM")]
+ DeferredFlush = 0x8,
+
+ [NativeName("CL_DEVICE_SCHEDULING_REGISTER_ALLOCATION_ARM")]
+ RegisterAllocation = 0x10,
+
+ [NativeName("CL_DEVICE_SCHEDULING_WARP_THROTTLING_ARM")]
+ WarpThrottling = 0x20,
+
+ [NativeName("CL_DEVICE_SCHEDULING_COMPUTE_UNIT_BATCH_QUEUE_SIZE_ARM")]
+ ComputeUnitBatchQueueSize = 0x40,
+
+ [NativeName("CL_DEVICE_SCHEDULING_COMPUTE_UNIT_LIMIT_ARM")]
+ ComputeUnitLimit = 0x80,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSchedulingControlsCapabilitiesIMG.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSchedulingControlsCapabilitiesIMG.gen.cs
new file mode 100644
index 0000000000..a1e6fd578d
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSchedulingControlsCapabilitiesIMG.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_scheduling_controls_capabilities_img")]
+[Flags]
+public enum DeviceSchedulingControlsCapabilitiesIMG : ulong
+{
+ None = 0x0,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationAdjustINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationAdjustINTEL.gen.cs
new file mode 100644
index 0000000000..0be528d36a
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationAdjustINTEL.gen.cs
@@ -0,0 +1,20 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.adjust")]
+public enum DeviceSideAvcMotionEstimationAdjustINTEL : uint
+{
+ [NativeName("CL_AVC_ME_SAD_ADJUST_MODE_NONE_INTEL")]
+ None = 0,
+
+ [NativeName("CL_AVC_ME_SAD_ADJUST_MODE_HAAR_INTEL")]
+ Haar = 2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationBorderINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationBorderINTEL.gen.cs
new file mode 100644
index 0000000000..d31ce25bc2
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationBorderINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.border")]
+public enum DeviceSideAvcMotionEstimationBorderINTEL : uint
+{
+ [NativeName("CL_AVC_ME_BORDER_REACHED_LEFT_INTEL")]
+ Left = 0,
+
+ [NativeName("CL_AVC_ME_BORDER_REACHED_RIGHT_INTEL")]
+ Right = 2,
+
+ [NativeName("CL_AVC_ME_BORDER_REACHED_TOP_INTEL")]
+ Top = 4,
+
+ [NativeName("CL_AVC_ME_BORDER_REACHED_BOTTOM_INTEL")]
+ Bottom = 8,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationCostPrecisionINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationCostPrecisionINTEL.gen.cs
new file mode 100644
index 0000000000..e49b1eab0e
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationCostPrecisionINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.cost.precision")]
+public enum DeviceSideAvcMotionEstimationCostPrecisionINTEL : uint
+{
+ [NativeName("CL_AVC_ME_COST_PRECISION_QPEL_INTEL")]
+ Qpel = 0,
+
+ [NativeName("CL_AVC_ME_COST_PRECISION_HPEL_INTEL")]
+ Hpel = 1,
+
+ [NativeName("CL_AVC_ME_COST_PRECISION_PEL_INTEL")]
+ Pel = 2,
+
+ [NativeName("CL_AVC_ME_COST_PRECISION_DPEL_INTEL")]
+ Dpel = 3,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationFrameDirINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationFrameDirINTEL.gen.cs
new file mode 100644
index 0000000000..da515c2c37
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationFrameDirINTEL.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.frame.dir")]
+public enum DeviceSideAvcMotionEstimationFrameDirINTEL : uint
+{
+ [NativeName("CL_AVC_ME_FRAME_FORWARD_INTEL")]
+ Forward = 1,
+
+ [NativeName("CL_AVC_ME_FRAME_BACKWARD_INTEL")]
+ Backward = 2,
+
+ [NativeName("CL_AVC_ME_FRAME_DUAL_INTEL")]
+ Dual = 3,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationIntraINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationIntraINTEL.gen.cs
new file mode 100644
index 0000000000..27f9ed8386
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationIntraINTEL.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.intra")]
+public enum DeviceSideAvcMotionEstimationIntraINTEL : uint
+{
+ [NativeName("CL_AVC_ME_INTRA_16x16_INTEL")]
+ Intra16x16 = 0,
+
+ [NativeName("CL_AVC_ME_INTRA_8x8_INTEL")]
+ Intra8x8 = 1,
+
+ [NativeName("CL_AVC_ME_INTRA_4x4_INTEL")]
+ Intra4x4 = 2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationIntraLumaINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationIntraLumaINTEL.gen.cs
new file mode 100644
index 0000000000..0bf132f669
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationIntraLumaINTEL.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.intra.luma")]
+public enum DeviceSideAvcMotionEstimationIntraLumaINTEL : uint
+{
+ [NativeName("CL_AVC_ME_INTRA_LUMA_PARTITION_MASK_16x16_INTEL")]
+ Mask16x16 = 6,
+
+ [NativeName("CL_AVC_ME_INTRA_LUMA_PARTITION_MASK_8x8_INTEL")]
+ Mask8x8 = 5,
+
+ [NativeName("CL_AVC_ME_INTRA_LUMA_PARTITION_MASK_4x4_INTEL")]
+ Mask4x4 = 3,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationIntraNeighborINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationIntraNeighborINTEL.gen.cs
new file mode 100644
index 0000000000..9db5234191
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationIntraNeighborINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.intra.neighbor")]
+public enum DeviceSideAvcMotionEstimationIntraNeighborINTEL : uint
+{
+ [NativeName("CL_AVC_ME_INTRA_NEIGHBOR_LEFT_MASK_ENABLE_INTEL")]
+ LeftMaskEnable = 96,
+
+ [NativeName("CL_AVC_ME_INTRA_NEIGHBOR_UPPER_MASK_ENABLE_INTEL")]
+ UpperMaskEnable = 16,
+
+ [NativeName("CL_AVC_ME_INTRA_NEIGHBOR_UPPER_RIGHT_MASK_ENABLE_INTEL")]
+ UpperRightMaskEnable = 8,
+
+ [NativeName("CL_AVC_ME_INTRA_NEIGHBOR_UPPER_LEFT_MASK_ENABLE_INTEL")]
+ UpperLeftMaskEnable = 4,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationLumaPredictorINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationLumaPredictorINTEL.gen.cs
new file mode 100644
index 0000000000..361f12735a
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationLumaPredictorINTEL.gen.cs
@@ -0,0 +1,56 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.luma.predictor")]
+public enum DeviceSideAvcMotionEstimationLumaPredictorINTEL : uint
+{
+ [NativeName("CL_AVC_ME_LUMA_PREDICTOR_MODE_VERTICAL_INTEL")]
+ LumaPredictorModeVertical = 0,
+
+ [NativeName("CL_AVC_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_INTEL")]
+ LumaPredictorModeHorizontal = 1,
+
+ [NativeName("CL_AVC_ME_LUMA_PREDICTOR_MODE_DC_INTEL")]
+ LumaPredictorModeDc = 2,
+
+ [NativeName("CL_AVC_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_LEFT_INTEL")]
+ LumaPredictorModeDiagonalDownLeft = 3,
+
+ [NativeName("CL_AVC_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_RIGHT_INTEL")]
+ LumaPredictorModeDiagonalDownRight = 4,
+
+ [NativeName("CL_AVC_ME_LUMA_PREDICTOR_MODE_PLANE_INTEL")]
+ LumaPredictorModePlane = 4,
+
+ [NativeName("CL_AVC_ME_LUMA_PREDICTOR_MODE_VERTICAL_RIGHT_INTEL")]
+ LumaPredictorModeVerticalRight = 5,
+
+ [NativeName("CL_AVC_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_DOWN_INTEL")]
+ LumaPredictorModeHorizontalDown = 6,
+
+ [NativeName("CL_AVC_ME_LUMA_PREDICTOR_MODE_VERTICAL_LEFT_INTEL")]
+ LumaPredictorModeVerticalLeft = 7,
+
+ [NativeName("CL_AVC_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_UP_INTEL")]
+ LumaPredictorModeHorizontalUp = 8,
+
+ [NativeName("CL_AVC_ME_CHROMA_PREDICTOR_MODE_DC_INTEL")]
+ ChromaPredictorModeDc = 0,
+
+ [NativeName("CL_AVC_ME_CHROMA_PREDICTOR_MODE_HORIZONTAL_INTEL")]
+ ChromaPredictorModeHorizontal = 1,
+
+ [NativeName("CL_AVC_ME_CHROMA_PREDICTOR_MODE_VERTICAL_INTEL")]
+ ChromaPredictorModeVertical = 2,
+
+ [NativeName("CL_AVC_ME_CHROMA_PREDICTOR_MODE_PLANE_INTEL")]
+ ChromaPredictorModePlane = 3,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationMajorDirINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationMajorDirINTEL.gen.cs
new file mode 100644
index 0000000000..8a4ba780d3
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationMajorDirINTEL.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.major.dir")]
+public enum DeviceSideAvcMotionEstimationMajorDirINTEL : uint
+{
+ [NativeName("CL_AVC_ME_MAJOR_FORWARD_INTEL")]
+ Forward = 0,
+
+ [NativeName("CL_AVC_ME_MAJOR_BACKWARD_INTEL")]
+ Backward = 1,
+
+ [NativeName("CL_AVC_ME_MAJOR_BIDIRECTIONAL_INTEL")]
+ Bidirectional = 2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationMajorINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationMajorINTEL.gen.cs
new file mode 100644
index 0000000000..62bbe0e32b
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationMajorINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.major")]
+public enum DeviceSideAvcMotionEstimationMajorINTEL : uint
+{
+ [NativeName("CL_AVC_ME_MAJOR_16x16_INTEL")]
+ Major16x16 = 0,
+
+ [NativeName("CL_AVC_ME_MAJOR_16x8_INTEL")]
+ Major16x8 = 1,
+
+ [NativeName("CL_AVC_ME_MAJOR_8x16_INTEL")]
+ Major8x16 = 2,
+
+ [NativeName("CL_AVC_ME_MAJOR_8x8_INTEL")]
+ Major8x8 = 3,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationMinorINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationMinorINTEL.gen.cs
new file mode 100644
index 0000000000..d5441db962
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationMinorINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.minor")]
+public enum DeviceSideAvcMotionEstimationMinorINTEL : uint
+{
+ [NativeName("CL_AVC_ME_MINOR_8x8_INTEL")]
+ Minor8x8 = 0,
+
+ [NativeName("CL_AVC_ME_MINOR_8x4_INTEL")]
+ Minor8x4 = 1,
+
+ [NativeName("CL_AVC_ME_MINOR_4x8_INTEL")]
+ Minor4x8 = 2,
+
+ [NativeName("CL_AVC_ME_MINOR_4x4_INTEL")]
+ Minor4x4 = 3,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationPartitionINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationPartitionINTEL.gen.cs
new file mode 100644
index 0000000000..080675c059
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationPartitionINTEL.gen.cs
@@ -0,0 +1,38 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.partition")]
+public enum DeviceSideAvcMotionEstimationPartitionINTEL : uint
+{
+ [NativeName("CL_AVC_ME_PARTITION_MASK_ALL_INTEL")]
+ MaskAll = 0,
+
+ [NativeName("CL_AVC_ME_PARTITION_MASK_16x16_INTEL")]
+ Mask16x16 = 126,
+
+ [NativeName("CL_AVC_ME_PARTITION_MASK_16x8_INTEL")]
+ Mask16x8 = 125,
+
+ [NativeName("CL_AVC_ME_PARTITION_MASK_8x16_INTEL")]
+ Mask8x16 = 123,
+
+ [NativeName("CL_AVC_ME_PARTITION_MASK_8x8_INTEL")]
+ Mask8x8 = 119,
+
+ [NativeName("CL_AVC_ME_PARTITION_MASK_8x4_INTEL")]
+ Mask8x4 = 111,
+
+ [NativeName("CL_AVC_ME_PARTITION_MASK_4x8_INTEL")]
+ Mask4x8 = 95,
+
+ [NativeName("CL_AVC_ME_PARTITION_MASK_4x4_INTEL")]
+ Mask4x4 = 63,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationScanDirINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationScanDirINTEL.gen.cs
new file mode 100644
index 0000000000..7d120f6268
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationScanDirINTEL.gen.cs
@@ -0,0 +1,20 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.scan.dir")]
+public enum DeviceSideAvcMotionEstimationScanDirINTEL : uint
+{
+ [NativeName("CL_AVC_ME_INTERLACED_SCAN_TOP_FIELD_INTEL")]
+ TopField = 0,
+
+ [NativeName("CL_AVC_ME_INTERLACED_SCAN_BOTTOM_FIELD_INTEL")]
+ BottomField = 1,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationSkipBlockBasedINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationSkipBlockBasedINTEL.gen.cs
new file mode 100644
index 0000000000..7c2cea7293
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationSkipBlockBasedINTEL.gen.cs
@@ -0,0 +1,20 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.skip.block.based")]
+public enum DeviceSideAvcMotionEstimationSkipBlockBasedINTEL : uint
+{
+ [NativeName("CL_AVC_ME_BLOCK_BASED_SKIP_4x4_INTEL")]
+ Skip4x4 = 0,
+
+ [NativeName("CL_AVC_ME_BLOCK_BASED_SKIP_8x8_INTEL")]
+ Skip8x8 = 128,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationSkipDirINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationSkipDirINTEL.gen.cs
new file mode 100644
index 0000000000..e6efbe2c7d
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationSkipDirINTEL.gen.cs
@@ -0,0 +1,56 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.skip.dir")]
+public enum DeviceSideAvcMotionEstimationSkipDirINTEL : uint
+{
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_16x16_FORWARD_ENABLE_INTEL")]
+ Block16x16ForwardEnable = 16777216,
+
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_16x16_BACKWARD_ENABLE_INTEL")]
+ Block16x16BackwardEnable = 33554432,
+
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_16x16_DUAL_ENABLE_INTEL")]
+ Block16x16DualEnable = 50331648,
+
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_8x8_FORWARD_ENABLE_INTEL")]
+ Block8x8ForwardEnable = 1426063360,
+
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_8x8_BACKWARD_ENABLE_INTEL")]
+ Block8x8BackwardEnable = 2852126720,
+
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_8x8_DUAL_ENABLE_INTEL")]
+ Block8x8DualEnable = 4278190080,
+
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_8x8_0_FORWARD_ENABLE_INTEL")]
+ Block8x8x0ForwardEnable = 16777216,
+
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_8x8_0_BACKWARD_ENABLE_INTEL")]
+ Block8x8x0BackwardEnable = 33554432,
+
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_8x8_1_FORWARD_ENABLE_INTEL")]
+ Block8x8x1ForwardEnable = 67108864,
+
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_8x8_1_BACKWARD_ENABLE_INTEL")]
+ Block8x8x1BackwardEnable = 134217728,
+
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_8x8_2_FORWARD_ENABLE_INTEL")]
+ Block8x8x2ForwardEnable = 268435456,
+
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_8x8_2_BACKWARD_ENABLE_INTEL")]
+ Block8x8x2BackwardEnable = 536870912,
+
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_8x8_3_FORWARD_ENABLE_INTEL")]
+ Block8x8x3ForwardEnable = 1073741824,
+
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_8x8_3_BACKWARD_ENABLE_INTEL")]
+ Block8x8x3BackwardEnable = 2147483648,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationSkipINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationSkipINTEL.gen.cs
new file mode 100644
index 0000000000..5279b34b0d
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationSkipINTEL.gen.cs
@@ -0,0 +1,20 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.skip")]
+public enum DeviceSideAvcMotionEstimationSkipINTEL : uint
+{
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_PARTITION_16x16_INTEL")]
+ Partition16x16 = 0,
+
+ [NativeName("CL_AVC_ME_SKIP_BLOCK_PARTITION_8x8_INTEL")]
+ Partition8x8 = 16384,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationSliceINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationSliceINTEL.gen.cs
new file mode 100644
index 0000000000..1f96d3ccf8
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationSliceINTEL.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.slice")]
+public enum DeviceSideAvcMotionEstimationSliceINTEL : uint
+{
+ [NativeName("CL_AVC_ME_SLICE_TYPE_PRED_INTEL")]
+ Pred = 0,
+
+ [NativeName("CL_AVC_ME_SLICE_TYPE_BPRED_INTEL")]
+ Bpred = 1,
+
+ [NativeName("CL_AVC_ME_SLICE_TYPE_INTRA_INTEL")]
+ Intra = 2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationSubpixelINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationSubpixelINTEL.gen.cs
new file mode 100644
index 0000000000..ce761211f9
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationSubpixelINTEL.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.subpixel")]
+public enum DeviceSideAvcMotionEstimationSubpixelINTEL : uint
+{
+ [NativeName("CL_AVC_ME_SUBPIXEL_MODE_INTEGER_INTEL")]
+ Integer = 0,
+
+ [NativeName("CL_AVC_ME_SUBPIXEL_MODE_HPEL_INTEL")]
+ Hpel = 1,
+
+ [NativeName("CL_AVC_ME_SUBPIXEL_MODE_QPEL_INTEL")]
+ Qpel = 3,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationVersionINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationVersionINTEL.gen.cs
new file mode 100644
index 0000000000..7d852636a1
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationVersionINTEL.gen.cs
@@ -0,0 +1,20 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.version")]
+public enum DeviceSideAvcMotionEstimationVersionINTEL : uint
+{
+ [NativeName("CL_AVC_ME_VERSION_0_INTEL")]
+ Version0 = 0,
+
+ [NativeName("CL_AVC_ME_VERSION_1_INTEL")]
+ Version1 = 1,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationWeightINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationWeightINTEL.gen.cs
new file mode 100644
index 0000000000..2bed9c5c71
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationWeightINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.weight")]
+public enum DeviceSideAvcMotionEstimationWeightINTEL : uint
+{
+ [NativeName("CL_AVC_ME_BIDIR_WEIGHT_QUARTER_INTEL")]
+ Quarter = 16,
+
+ [NativeName("CL_AVC_ME_BIDIR_WEIGHT_THIRD_INTEL")]
+ Third = 21,
+
+ [NativeName("CL_AVC_ME_BIDIR_WEIGHT_HALF_INTEL")]
+ Half = 32,
+
+ [NativeName("CL_AVC_ME_BIDIR_WEIGHT_TWO_THIRD_INTEL")]
+ TwoThird = 43,
+
+ [NativeName("CL_AVC_ME_BIDIR_WEIGHT_THREE_QUARTER_INTEL")]
+ ThreeQuarter = 48,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationWindowINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationWindowINTEL.gen.cs
new file mode 100644
index 0000000000..78a5001bb4
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSideAvcMotionEstimationWindowINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_intel_device_side_avc_motion_estimation.window")]
+public enum DeviceSideAvcMotionEstimationWindowINTEL : uint
+{
+ [NativeName("CL_AVC_ME_SEARCH_WINDOW_EXHAUSTIVE_INTEL")]
+ WindowExhaustive = 0,
+
+ [NativeName("CL_AVC_ME_SEARCH_WINDOW_SMALL_INTEL")]
+ WindowSmall = 1,
+
+ [NativeName("CL_AVC_ME_SEARCH_WINDOW_TINY_INTEL")]
+ WindowTiny = 2,
+
+ [NativeName("CL_AVC_ME_SEARCH_WINDOW_EXTRA_TINY_INTEL")]
+ WindowExtraTiny = 3,
+
+ [NativeName("CL_AVC_ME_SEARCH_WINDOW_DIAMOND_INTEL")]
+ WindowDiamond = 4,
+
+ [NativeName("CL_AVC_ME_SEARCH_WINDOW_LARGE_DIAMOND_INTEL")]
+ WindowLargeDiamond = 5,
+
+ [NativeName("CL_AVC_ME_SEARCH_WINDOW_RESERVED0_INTEL")]
+ WindowReserved0 = 6,
+
+ [NativeName("CL_AVC_ME_SEARCH_WINDOW_RESERVED1_INTEL")]
+ WindowReserved1 = 7,
+
+ [NativeName("CL_AVC_ME_SEARCH_WINDOW_CUSTOM_INTEL")]
+ WindowCustom = 8,
+
+ [NativeName("CL_AVC_ME_SEARCH_WINDOW_16x12_RADIUS_INTEL")]
+ Window16x12Radius = 9,
+
+ [NativeName("CL_AVC_ME_SEARCH_WINDOW_4x4_RADIUS_INTEL")]
+ Window4x4Radius = 2,
+
+ [NativeName("CL_AVC_ME_SEARCH_WINDOW_2x2_RADIUS_INTEL")]
+ Window2x2Radius = 10,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSvmCapabilities.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSvmCapabilities.gen.cs
new file mode 100644
index 0000000000..a6f08a9929
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSvmCapabilities.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_svm_capabilities")]
+[Flags]
+public enum DeviceSvmCapabilities : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_DEVICE_SVM_COARSE_GRAIN_BUFFER")]
+ CoarseGrainBuffer = 0x1,
+
+ [NativeName("CL_DEVICE_SVM_FINE_GRAIN_BUFFER")]
+ FineGrainBuffer = 0x2,
+
+ [NativeName("CL_DEVICE_SVM_FINE_GRAIN_SYSTEM")]
+ FineGrainSystem = 0x4,
+
+ [NativeName("CL_DEVICE_SVM_ATOMICS")]
+ Atomics = 0x8,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSvmCapabilitiesARM.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSvmCapabilitiesARM.gen.cs
new file mode 100644
index 0000000000..cbbfef95ca
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSvmCapabilitiesARM.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_svm_capabilities_arm")]
+[Flags]
+public enum DeviceSvmCapabilitiesARM : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_DEVICE_SVM_COARSE_GRAIN_BUFFER_ARM")]
+ CoarseGrainBuffer = 0x1,
+
+ [NativeName("CL_DEVICE_SVM_FINE_GRAIN_BUFFER_ARM")]
+ FineGrainBuffer = 0x2,
+
+ [NativeName("CL_DEVICE_SVM_FINE_GRAIN_SYSTEM_ARM")]
+ FineGrainSystem = 0x4,
+
+ [NativeName("CL_DEVICE_SVM_ATOMICS_ARM")]
+ Atomics = 0x8,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceSvmCapabilitiesFlagsARM.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceSvmCapabilitiesFlagsARM.gen.cs
new file mode 100644
index 0000000000..72c4f5190e
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceSvmCapabilitiesFlagsARM.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_arm_device_svm_capabilities.flags")]
+[Flags]
+public enum DeviceSvmCapabilitiesFlagsARM : uint
+{
+ None = 0x0,
+
+ [NativeName("CL_DEVICE_SVM_COARSE_GRAIN_BUFFER_ARM")]
+ CoarseGrainBuffer = 0x1,
+
+ [NativeName("CL_DEVICE_SVM_FINE_GRAIN_BUFFER_ARM")]
+ FineGrainBuffer = 0x2,
+
+ [NativeName("CL_DEVICE_SVM_FINE_GRAIN_SYSTEM_ARM")]
+ FineGrainSystem = 0x4,
+
+ [NativeName("CL_DEVICE_SVM_ATOMICS_ARM")]
+ Atomics = 0x8,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceTerminateCapabilityKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceTerminateCapabilityKHR.gen.cs
new file mode 100644
index 0000000000..6b75601027
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceTerminateCapabilityKHR.gen.cs
@@ -0,0 +1,20 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_terminate_capability_khr")]
+[Flags]
+public enum DeviceTerminateCapabilityKHR : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_DEVICE_TERMINATE_CAPABILITY_CONTEXT_KHR")]
+ Context = 0x1,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceType.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceType.gen.cs
new file mode 100644
index 0000000000..60a28be8bc
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceType.gen.cs
@@ -0,0 +1,35 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_type")]
+[Flags]
+public enum DeviceType : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_DEVICE_TYPE_DEFAULT")]
+ Default = 0x1,
+
+ [NativeName("CL_DEVICE_TYPE_CPU")]
+ Cpu = 0x2,
+
+ [NativeName("CL_DEVICE_TYPE_GPU")]
+ Gpu = 0x4,
+
+ [NativeName("CL_DEVICE_TYPE_ACCELERATOR")]
+ Accelerator = 0x8,
+
+ [NativeName("CL_DEVICE_TYPE_CUSTOM")]
+ Custom = 0x10,
+
+ [NativeName("CL_DEVICE_TYPE_ALL")]
+ All = 0xFFFFFFFF,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DeviceUnifiedSharedMemoryCapabilitiesINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DeviceUnifiedSharedMemoryCapabilitiesINTEL.gen.cs
new file mode 100644
index 0000000000..51696201e0
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DeviceUnifiedSharedMemoryCapabilitiesINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_unified_shared_memory_capabilities_intel")]
+[Flags]
+public enum DeviceUnifiedSharedMemoryCapabilitiesINTEL : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_UNIFIED_SHARED_MEMORY_ACCESS_INTEL")]
+ Access = 0x1,
+
+ [NativeName("CL_UNIFIED_SHARED_MEMORY_ATOMIC_ACCESS_INTEL")]
+ AtomicAccess = 0x2,
+
+ [NativeName("CL_UNIFIED_SHARED_MEMORY_CONCURRENT_ACCESS_INTEL")]
+ ConcurrentAccess = 0x4,
+
+ [NativeName("CL_UNIFIED_SHARED_MEMORY_CONCURRENT_ATOMIC_ACCESS_INTEL")]
+ ConcurrentAtomicAccess = 0x8,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/DiagnosticVerboseLevelINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/DiagnosticVerboseLevelINTEL.gen.cs
new file mode 100644
index 0000000000..7090932204
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/DiagnosticVerboseLevelINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_diagnostic_verbose_level_intel")]
+[Flags]
+public enum DiagnosticVerboseLevelINTEL : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_CONTEXT_DIAGNOSTICS_LEVEL_ALL_INTEL")]
+ All = 0xFF,
+
+ [NativeName("CL_CONTEXT_DIAGNOSTICS_LEVEL_GOOD_INTEL")]
+ Good = 0x1,
+
+ [NativeName("CL_CONTEXT_DIAGNOSTICS_LEVEL_BAD_INTEL")]
+ Bad = 0x2,
+
+ [NativeName("CL_CONTEXT_DIAGNOSTICS_LEVEL_NEUTRAL_INTEL")]
+ Neutral = 0x4,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/Dx9DeviceSetINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/Dx9DeviceSetINTEL.gen.cs
new file mode 100644
index 0000000000..46a8660ef6
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/Dx9DeviceSetINTEL.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_dx9_device_set_intel")]
+public enum Dx9DeviceSetINTEL : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/Dx9DeviceSourceINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/Dx9DeviceSourceINTEL.gen.cs
new file mode 100644
index 0000000000..55d2a647c4
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/Dx9DeviceSourceINTEL.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_dx9_device_source_intel")]
+public enum Dx9DeviceSourceINTEL : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/EglImagePropertiesKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/EglImagePropertiesKHR.gen.cs
new file mode 100644
index 0000000000..843a1fadc4
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/EglImagePropertiesKHR.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_egl_image_properties_khr")]
+public enum EglImagePropertiesKHR : long
+{
+ [NativeName("CL_EGL_YUV_PLANE_INTEL")]
+ YuvPlaneINTEL = 16647,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ErrorCodes.gen.cs b/sources/OpenCL/OpenCL/Enums/ErrorCodes.gen.cs
new file mode 100644
index 0000000000..c9a63c84aa
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ErrorCodes.gen.cs
@@ -0,0 +1,260 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("ErrorCodes")]
+public enum ErrorCodes : int
+{
+ [NativeName("CL_SUCCESS")]
+ Success = 0,
+
+ [NativeName("CL_DEVICE_NOT_FOUND")]
+ DeviceNotFound = -1,
+
+ [NativeName("CL_DEVICE_NOT_AVAILABLE")]
+ DeviceNotAvailable = -2,
+
+ [NativeName("CL_COMPILER_NOT_AVAILABLE")]
+ CompilerNotAvailable = -3,
+
+ [NativeName("CL_MEM_OBJECT_ALLOCATION_FAILURE")]
+ MemObjectAllocationFailure = -4,
+
+ [NativeName("CL_OUT_OF_RESOURCES")]
+ OutOfResources = -5,
+
+ [NativeName("CL_OUT_OF_HOST_MEMORY")]
+ OutOfHostMemory = -6,
+
+ [NativeName("CL_PROFILING_INFO_NOT_AVAILABLE")]
+ ProfilingInfoNotAvailable = -7,
+
+ [NativeName("CL_MEM_COPY_OVERLAP")]
+ MemCopyOverlap = -8,
+
+ [NativeName("CL_IMAGE_FORMAT_MISMATCH")]
+ ImageFormatMismatch = -9,
+
+ [NativeName("CL_IMAGE_FORMAT_NOT_SUPPORTED")]
+ ImageFormatNotSupported = -10,
+
+ [NativeName("CL_BUILD_PROGRAM_FAILURE")]
+ BuildProgramFailure = -11,
+
+ [NativeName("CL_MAP_FAILURE")]
+ MapFailure = -12,
+
+ [NativeName("CL_MISALIGNED_SUB_BUFFER_OFFSET")]
+ MisalignedSubBufferOffset = -13,
+
+ [NativeName("CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST")]
+ ExecStatusErrorForEventsInWaitList = -14,
+
+ [NativeName("CL_COMPILE_PROGRAM_FAILURE")]
+ CompileProgramFailure = -15,
+
+ [NativeName("CL_LINKER_NOT_AVAILABLE")]
+ LinkerNotAvailable = -16,
+
+ [NativeName("CL_LINK_PROGRAM_FAILURE")]
+ LinkProgramFailure = -17,
+
+ [NativeName("CL_DEVICE_PARTITION_FAILED")]
+ DevicePartitionFailed = -18,
+
+ [NativeName("CL_KERNEL_ARG_INFO_NOT_AVAILABLE")]
+ KernelArgInfoNotAvailable = -19,
+
+ [NativeName("CL_INVALID_VALUE")]
+ InvalidValue = -30,
+
+ [NativeName("CL_INVALID_DEVICE_TYPE")]
+ InvalidDeviceType = -31,
+
+ [NativeName("CL_INVALID_PLATFORM")]
+ InvalidPlatform = -32,
+
+ [NativeName("CL_INVALID_DEVICE")]
+ InvalidDevice = -33,
+
+ [NativeName("CL_INVALID_CONTEXT")]
+ InvalidContext = -34,
+
+ [NativeName("CL_INVALID_QUEUE_PROPERTIES")]
+ InvalidQueueProperties = -35,
+
+ [NativeName("CL_INVALID_COMMAND_QUEUE")]
+ InvalidCommandQueue = -36,
+
+ [NativeName("CL_INVALID_HOST_PTR")]
+ InvalidHostPtr = -37,
+
+ [NativeName("CL_INVALID_MEM_OBJECT")]
+ InvalidMemObject = -38,
+
+ [NativeName("CL_INVALID_IMAGE_FORMAT_DESCRIPTOR")]
+ InvalidImageFormatDescriptor = -39,
+
+ [NativeName("CL_INVALID_IMAGE_SIZE")]
+ InvalidImageSize = -40,
+
+ [NativeName("CL_INVALID_SAMPLER")]
+ InvalidSampler = -41,
+
+ [NativeName("CL_INVALID_BINARY")]
+ InvalidBinary = -42,
+
+ [NativeName("CL_INVALID_BUILD_OPTIONS")]
+ InvalidBuildOptions = -43,
+
+ [NativeName("CL_INVALID_PROGRAM")]
+ InvalidProgram = -44,
+
+ [NativeName("CL_INVALID_PROGRAM_EXECUTABLE")]
+ InvalidProgramExecutable = -45,
+
+ [NativeName("CL_INVALID_KERNEL_NAME")]
+ InvalidKernelName = -46,
+
+ [NativeName("CL_INVALID_KERNEL_DEFINITION")]
+ InvalidKernelDefinition = -47,
+
+ [NativeName("CL_INVALID_KERNEL")]
+ InvalidKernel = -48,
+
+ [NativeName("CL_INVALID_ARG_INDEX")]
+ InvalidArgIndex = -49,
+
+ [NativeName("CL_INVALID_ARG_VALUE")]
+ InvalidArgValue = -50,
+
+ [NativeName("CL_INVALID_ARG_SIZE")]
+ InvalidArgSize = -51,
+
+ [NativeName("CL_INVALID_KERNEL_ARGS")]
+ InvalidKernelArgs = -52,
+
+ [NativeName("CL_INVALID_WORK_DIMENSION")]
+ InvalidWorkDimension = -53,
+
+ [NativeName("CL_INVALID_WORK_GROUP_SIZE")]
+ InvalidWorkGroupSize = -54,
+
+ [NativeName("CL_INVALID_WORK_ITEM_SIZE")]
+ InvalidWorkItemSize = -55,
+
+ [NativeName("CL_INVALID_GLOBAL_OFFSET")]
+ InvalidGlobalOffset = -56,
+
+ [NativeName("CL_INVALID_EVENT_WAIT_LIST")]
+ InvalidEventWaitList = -57,
+
+ [NativeName("CL_INVALID_EVENT")]
+ InvalidEvent = -58,
+
+ [NativeName("CL_INVALID_OPERATION")]
+ InvalidOperation = -59,
+
+ [NativeName("CL_INVALID_GL_OBJECT")]
+ InvalidGlObject = -60,
+
+ [NativeName("CL_INVALID_BUFFER_SIZE")]
+ InvalidBufferSize = -61,
+
+ [NativeName("CL_INVALID_MIP_LEVEL")]
+ InvalidMipLevel = -62,
+
+ [NativeName("CL_INVALID_GLOBAL_WORK_SIZE")]
+ InvalidGlobalWorkSize = -63,
+
+ [NativeName("CL_INVALID_PROPERTY")]
+ InvalidProperty = -64,
+
+ [NativeName("CL_INVALID_IMAGE_DESCRIPTOR")]
+ InvalidImageDescriptor = -65,
+
+ [NativeName("CL_INVALID_COMPILER_OPTIONS")]
+ InvalidCompilerOptions = -66,
+
+ [NativeName("CL_INVALID_LINKER_OPTIONS")]
+ InvalidLinkerOptions = -67,
+
+ [NativeName("CL_INVALID_DEVICE_PARTITION_COUNT")]
+ InvalidDevicePartitionCount = -68,
+
+ [NativeName("CL_INVALID_PIPE_SIZE")]
+ InvalidPipeSize = -69,
+
+ [NativeName("CL_INVALID_DEVICE_QUEUE")]
+ InvalidDeviceQueue = -70,
+
+ [NativeName("CL_INVALID_SPEC_ID")]
+ InvalidSpecId = -71,
+
+ [NativeName("CL_MAX_SIZE_RESTRICTION_EXCEEDED")]
+ MaxSizeRestrictionExceeded = -72,
+
+ [NativeName("CL_PLATFORM_NOT_FOUND_KHR")]
+ PlatformNotFoundKHR = -1001,
+
+ [NativeName("CL_CONTEXT_TERMINATED_KHR")]
+ ContextTerminatedKHR = -1121,
+
+ [NativeName("CL_DEVICE_PARTITION_FAILED_EXT")]
+ DevicePartitionFailedEXT = -1057,
+
+ [NativeName("CL_INVALID_PARTITION_COUNT_EXT")]
+ InvalidPartitionCountEXT = -1058,
+
+ [NativeName("CL_INVALID_PARTITION_NAME_EXT")]
+ InvalidPartitionNameEXT = -1059,
+
+ [NativeName("CL_GRALLOC_RESOURCE_NOT_ACQUIRED_IMG")]
+ GrallocResourceNotAcquiredIMG = 16596,
+
+ [NativeName("CL_INVALID_GRALLOC_OBJECT_IMG")]
+ InvalidGrallocObjectIMG = 16597,
+
+ [NativeName("CL_INVALID_SEMAPHORE_KHR")]
+ InvalidSemaphoreKHR = -1142,
+
+ [NativeName("CL_COMMAND_TERMINATED_ITSELF_WITH_FAILURE_ARM")]
+ CommandTerminatedItselfWithFailureARM = -1108,
+
+ [NativeName("CL_INVALID_ACCELERATOR_INTEL")]
+ InvalidAcceleratorINTEL = -1094,
+
+ [NativeName("CL_INVALID_ACCELERATOR_TYPE_INTEL")]
+ InvalidAcceleratorTypeINTEL = -1095,
+
+ [NativeName("CL_INVALID_ACCELERATOR_DESCRIPTOR_INTEL")]
+ InvalidAcceleratorDescriptorINTEL = -1096,
+
+ [NativeName("CL_ACCELERATOR_TYPE_NOT_SUPPORTED_INTEL")]
+ AcceleratorTypeNotSupportedINTEL = -1097,
+
+ [NativeName("CL_CANCELLED_IMG")]
+ CancelledIMG = -1126,
+
+ [NativeName("CL_ECC_RECOVERED_IMG")]
+ EccRecoveredIMG = 16605,
+
+ [NativeName("CL_PAGE_FAULT_IMG")]
+ PageFaultIMG = -1127,
+
+ [NativeName("CL_SAFETY_FAULT_IMG")]
+ SafetyFaultIMG = -1128,
+
+ [NativeName("CL_GENERAL_FAULT_IMG")]
+ GeneralFaultIMG = -1129,
+
+ [NativeName("CL_ECC_UNRECOVERED_IMG")]
+ EccUnrecoveredIMG = -1130,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/EventInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/EventInfo.gen.cs
new file mode 100644
index 0000000000..98c82cc801
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/EventInfo.gen.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_event_info")]
+public enum EventInfo : uint
+{
+ [NativeName("CL_EVENT_COMMAND_QUEUE")]
+ CommandQueue = 4560,
+
+ [NativeName("CL_EVENT_COMMAND_TYPE")]
+ CommandType = 4561,
+
+ [NativeName("CL_EVENT_REFERENCE_COUNT")]
+ ReferenceCount = 4562,
+
+ [NativeName("CL_EVENT_COMMAND_EXECUTION_STATUS")]
+ CommandExecutionStatus = 4563,
+
+ [NativeName("CL_EVENT_CONTEXT")]
+ Context = 4564,
+
+ [NativeName("CL_EVENT_COMMAND_TERMINATION_REASON_ARM")]
+ CommandTerminationReasonARM = 16877,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ExternalMemoryHandleTypeKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/ExternalMemoryHandleTypeKHR.gen.cs
new file mode 100644
index 0000000000..99386547ae
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ExternalMemoryHandleTypeKHR.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_external_memory_handle_type_khr")]
+public enum ExternalMemoryHandleTypeKHR : uint
+{
+ [NativeName("CL_EXTERNAL_MEMORY_HANDLE_DMA_BUF_KHR")]
+ DmaBuf = 8295,
+
+ [NativeName("CL_EXTERNAL_MEMORY_HANDLE_OPAQUE_FD_KHR")]
+ OpaqueFd = 8288,
+
+ [NativeName("CL_EXTERNAL_MEMORY_HANDLE_OPAQUE_WIN32_KHR")]
+ OpaqueWin32 = 8289,
+
+ [NativeName("CL_EXTERNAL_MEMORY_HANDLE_OPAQUE_WIN32_KMT_KHR")]
+ OpaqueWin32Kmt = 8290,
+
+ [NativeName("CL_EXTERNAL_MEMORY_HANDLE_OPAQUE_WIN32_NAME_KHR")]
+ OpaqueWin32Name = 8297,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ExternalSemaphoreHandleTypeKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/ExternalSemaphoreHandleTypeKHR.gen.cs
new file mode 100644
index 0000000000..cfc5d2d76b
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ExternalSemaphoreHandleTypeKHR.gen.cs
@@ -0,0 +1,20 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_external_semaphore_handle_type_khr")]
+public enum ExternalSemaphoreHandleTypeKHR : uint
+{
+ [NativeName("CL_SEMAPHORE_HANDLE_OPAQUE_FD_KHR")]
+ OpaqueFd = 8277,
+
+ [NativeName("CL_SEMAPHORE_HANDLE_SYNC_FD_KHR")]
+ SyncFd = 8280,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/FilterMode.gen.cs b/sources/OpenCL/OpenCL/Enums/FilterMode.gen.cs
new file mode 100644
index 0000000000..23d1f6c3c8
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/FilterMode.gen.cs
@@ -0,0 +1,20 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_filter_mode")]
+public enum FilterMode : uint
+{
+ [NativeName("CL_FILTER_NEAREST")]
+ Nearest = 4416,
+
+ [NativeName("CL_FILTER_LINEAR")]
+ Linear = 4417,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/GlContextInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/GlContextInfo.gen.cs
new file mode 100644
index 0000000000..0c4a3b0795
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/GlContextInfo.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_gl_context_info")]
+public enum GlContextInfo : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/GlObjectType.gen.cs b/sources/OpenCL/OpenCL/Enums/GlObjectType.gen.cs
new file mode 100644
index 0000000000..5ccf8bbfb4
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/GlObjectType.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_gl_object_type")]
+public enum GlObjectType : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/GlTextureInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/GlTextureInfo.gen.cs
new file mode 100644
index 0000000000..b9695a8708
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/GlTextureInfo.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_gl_texture_info")]
+public enum GlTextureInfo : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/HostCachePolicy.gen.cs b/sources/OpenCL/OpenCL/Enums/HostCachePolicy.gen.cs
new file mode 100644
index 0000000000..bc16f670c2
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/HostCachePolicy.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("host_cache_policy")]
+public enum HostCachePolicy : uint
+{
+ [NativeName("CL_MEM_HOST_UNCACHED_QCOM")]
+ UncachedQCOM = 16548,
+
+ [NativeName("CL_MEM_HOST_WRITEBACK_QCOM")]
+ WritebackQCOM = 16549,
+
+ [NativeName("CL_MEM_HOST_WRITETHROUGH_QCOM")]
+ WritethroughQCOM = 16550,
+
+ [NativeName("CL_MEM_HOST_WRITE_COMBINING_QCOM")]
+ WriteCombiningQCOM = 16551,
+
+ [NativeName("CL_MEM_HOST_IOCOHERENT_QCOM")]
+ IocoherentQCOM = 16553,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/IcdlInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/IcdlInfo.gen.cs
new file mode 100644
index 0000000000..0544e6b9af
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/IcdlInfo.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_icdl_info")]
+public enum IcdlInfo : uint
+{
+ [NativeName("CL_ICDL_OCL_VERSION")]
+ OclVersion = 1,
+
+ [NativeName("CL_ICDL_VERSION")]
+ Version = 2,
+
+ [NativeName("CL_ICDL_NAME")]
+ Name = 3,
+
+ [NativeName("CL_ICDL_VENDOR")]
+ Vendor = 4,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ImageInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/ImageInfo.gen.cs
new file mode 100644
index 0000000000..5379452234
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ImageInfo.gen.cs
@@ -0,0 +1,47 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_image_info")]
+public enum ImageInfo : uint
+{
+ [NativeName("CL_IMAGE_FORMAT")]
+ Format = 4368,
+
+ [NativeName("CL_IMAGE_ELEMENT_SIZE")]
+ ElementSize = 4369,
+
+ [NativeName("CL_IMAGE_ROW_PITCH")]
+ RowPitch = 4370,
+
+ [NativeName("CL_IMAGE_SLICE_PITCH")]
+ SlicePitch = 4371,
+
+ [NativeName("CL_IMAGE_WIDTH")]
+ Width = 4372,
+
+ [NativeName("CL_IMAGE_HEIGHT")]
+ Height = 4373,
+
+ [NativeName("CL_IMAGE_DEPTH")]
+ Depth = 4374,
+
+ [NativeName("CL_IMAGE_ARRAY_SIZE")]
+ ArraySize = 4375,
+
+ [NativeName("CL_IMAGE_BUFFER")]
+ Buffer = 4376,
+
+ [NativeName("CL_IMAGE_NUM_MIP_LEVELS")]
+ NumMipLevels = 4377,
+
+ [NativeName("CL_IMAGE_NUM_SAMPLES")]
+ NumSamples = 4378,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ImagePitchInfoQCOM.gen.cs b/sources/OpenCL/OpenCL/Enums/ImagePitchInfoQCOM.gen.cs
new file mode 100644
index 0000000000..405d8dbd20
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ImagePitchInfoQCOM.gen.cs
@@ -0,0 +1,20 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_image_pitch_info_qcom")]
+public enum ImagePitchInfoQCOM : uint
+{
+ [NativeName("CL_IMAGE_ROW_ALIGNMENT_QCOM")]
+ RowAlignment = 16546,
+
+ [NativeName("CL_IMAGE_SLICE_ALIGNMENT_QCOM")]
+ SliceAlignment = 16547,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ImageRequirementsInfoEXT.gen.cs b/sources/OpenCL/OpenCL/Enums/ImageRequirementsInfoEXT.gen.cs
new file mode 100644
index 0000000000..50b1640cba
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ImageRequirementsInfoEXT.gen.cs
@@ -0,0 +1,38 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_image_requirements_info_ext")]
+public enum ImageRequirementsInfoEXT : uint
+{
+ [NativeName("CL_IMAGE_REQUIREMENTS_BASE_ADDRESS_ALIGNMENT_EXT")]
+ BaseAddressAlignment = 4754,
+
+ [NativeName("CL_IMAGE_REQUIREMENTS_ROW_PITCH_ALIGNMENT_EXT")]
+ RowPitchAlignment = 4752,
+
+ [NativeName("CL_IMAGE_REQUIREMENTS_SIZE_EXT")]
+ Size = 4786,
+
+ [NativeName("CL_IMAGE_REQUIREMENTS_MAX_WIDTH_EXT")]
+ MaxWidth = 4787,
+
+ [NativeName("CL_IMAGE_REQUIREMENTS_MAX_HEIGHT_EXT")]
+ MaxHeight = 4788,
+
+ [NativeName("CL_IMAGE_REQUIREMENTS_MAX_DEPTH_EXT")]
+ MaxDepth = 4789,
+
+ [NativeName("CL_IMAGE_REQUIREMENTS_MAX_ARRAY_SIZE_EXT")]
+ MaxArraySize = 4790,
+
+ [NativeName("CL_IMAGE_REQUIREMENTS_SLICE_PITCH_ALIGNMENT_EXT")]
+ SlicePitchAlignment = 4753,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ImportPropertiesARM.gen.cs b/sources/OpenCL/OpenCL/Enums/ImportPropertiesARM.gen.cs
new file mode 100644
index 0000000000..0d821d78e2
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ImportPropertiesARM.gen.cs
@@ -0,0 +1,38 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_import_properties_arm")]
+public enum ImportPropertiesARM : long
+{
+ [NativeName("CL_IMPORT_TYPE_ARM")]
+ Type = 16562,
+
+ [NativeName("CL_IMPORT_TYPE_HOST_ARM")]
+ TypeHost = 16563,
+
+ [NativeName("CL_IMPORT_TYPE_DMA_BUF_ARM")]
+ TypeDmaBuf = 16564,
+
+ [NativeName("CL_IMPORT_TYPE_PROTECTED_ARM")]
+ TypeProtected = 16565,
+
+ [NativeName("CL_IMPORT_TYPE_ANDROID_HARDWARE_BUFFER_ARM")]
+ TypeAndroidHardwareBuffer = 16866,
+
+ [NativeName("CL_IMPORT_DMA_BUF_DATA_CONSISTENCY_WITH_HOST_ARM")]
+ DmaBufDataConsistencyWithHost = 16867,
+
+ [NativeName("CL_IMPORT_ANDROID_HARDWARE_BUFFER_PLANE_INDEX_ARM")]
+ AndroidHardwareBufferPlaneIndex = 16879,
+
+ [NativeName("CL_IMPORT_ANDROID_HARDWARE_BUFFER_LAYER_INDEX_ARM")]
+ AndroidHardwareBufferLayerIndex = 16880,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/KernelArgAccessQualifier.gen.cs b/sources/OpenCL/OpenCL/Enums/KernelArgAccessQualifier.gen.cs
new file mode 100644
index 0000000000..6a6b8459dd
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/KernelArgAccessQualifier.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_kernel_arg_access_qualifier")]
+public enum KernelArgAccessQualifier : uint
+{
+ [NativeName("CL_KERNEL_ARG_ACCESS_READ_ONLY")]
+ ReadOnly = 4512,
+
+ [NativeName("CL_KERNEL_ARG_ACCESS_WRITE_ONLY")]
+ WriteOnly = 4513,
+
+ [NativeName("CL_KERNEL_ARG_ACCESS_READ_WRITE")]
+ ReadWrite = 4514,
+
+ [NativeName("CL_KERNEL_ARG_ACCESS_NONE")]
+ None = 4515,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/KernelArgAddressQualifier.gen.cs b/sources/OpenCL/OpenCL/Enums/KernelArgAddressQualifier.gen.cs
new file mode 100644
index 0000000000..dba81b684c
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/KernelArgAddressQualifier.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_kernel_arg_address_qualifier")]
+public enum KernelArgAddressQualifier : uint
+{
+ [NativeName("CL_KERNEL_ARG_ADDRESS_GLOBAL")]
+ Global = 4507,
+
+ [NativeName("CL_KERNEL_ARG_ADDRESS_LOCAL")]
+ Local = 4508,
+
+ [NativeName("CL_KERNEL_ARG_ADDRESS_CONSTANT")]
+ Constant = 4509,
+
+ [NativeName("CL_KERNEL_ARG_ADDRESS_PRIVATE")]
+ Private = 4510,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/KernelArgInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/KernelArgInfo.gen.cs
new file mode 100644
index 0000000000..b48f606265
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/KernelArgInfo.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_kernel_arg_info")]
+public enum KernelArgInfo : uint
+{
+ [NativeName("CL_KERNEL_ARG_ADDRESS_QUALIFIER")]
+ AddressQualifier = 4502,
+
+ [NativeName("CL_KERNEL_ARG_ACCESS_QUALIFIER")]
+ AccessQualifier = 4503,
+
+ [NativeName("CL_KERNEL_ARG_TYPE_NAME")]
+ TypeName = 4504,
+
+ [NativeName("CL_KERNEL_ARG_TYPE_QUALIFIER")]
+ TypeQualifier = 4505,
+
+ [NativeName("CL_KERNEL_ARG_NAME")]
+ Name = 4506,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/KernelArgTypeQualifier.gen.cs b/sources/OpenCL/OpenCL/Enums/KernelArgTypeQualifier.gen.cs
new file mode 100644
index 0000000000..5f2a422399
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/KernelArgTypeQualifier.gen.cs
@@ -0,0 +1,30 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_kernel_arg_type_qualifier")]
+[Flags]
+public enum KernelArgTypeQualifier : ulong
+{
+ [NativeName("CL_KERNEL_ARG_TYPE_NONE")]
+ None = 0x0,
+
+ [NativeName("CL_KERNEL_ARG_TYPE_CONST")]
+ Const = 0x1,
+
+ [NativeName("CL_KERNEL_ARG_TYPE_RESTRICT")]
+ Restrict = 0x2,
+
+ [NativeName("CL_KERNEL_ARG_TYPE_VOLATILE")]
+ Volatile = 0x4,
+
+ [NativeName("CL_KERNEL_ARG_TYPE_PIPE")]
+ Pipe = 0x8,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/KernelExecInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/KernelExecInfo.gen.cs
new file mode 100644
index 0000000000..2ff9c6a52d
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/KernelExecInfo.gen.cs
@@ -0,0 +1,47 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_kernel_exec_info")]
+public enum KernelExecInfo : uint
+{
+ [NativeName("CL_KERNEL_EXEC_INFO_SVM_PTRS")]
+ SvmPtrs = 4534,
+
+ [NativeName("CL_KERNEL_EXEC_INFO_SVM_FINE_GRAIN_SYSTEM")]
+ SvmFineGrainSystem = 4535,
+
+ [NativeName("CL_KERNEL_EXEC_INFO_WORKGROUP_BATCH_SIZE_ARM")]
+ WorkgroupBatchSizeARM = 16869,
+
+ [NativeName("CL_KERNEL_EXEC_INFO_WORKGROUP_BATCH_SIZE_MODIFIER_ARM")]
+ WorkgroupBatchSizeModifierARM = 16870,
+
+ [NativeName("CL_KERNEL_EXEC_INFO_WARP_COUNT_LIMIT_ARM")]
+ WarpCountLimitARM = 16872,
+
+ [NativeName("CL_KERNEL_EXEC_INFO_COMPUTE_UNIT_MAX_QUEUED_BATCHES_ARM")]
+ ComputeUnitMaxQueuedBatchesARM = 16881,
+
+ [NativeName("CL_KERNEL_EXEC_INFO_INDIRECT_HOST_ACCESS_INTEL")]
+ IndirectHostAccessINTEL = 16896,
+
+ [NativeName("CL_KERNEL_EXEC_INFO_INDIRECT_DEVICE_ACCESS_INTEL")]
+ IndirectDeviceAccessINTEL = 16897,
+
+ [NativeName("CL_KERNEL_EXEC_INFO_INDIRECT_SHARED_ACCESS_INTEL")]
+ IndirectSharedAccessINTEL = 16898,
+
+ [NativeName("CL_KERNEL_EXEC_INFO_USM_PTRS_INTEL")]
+ UsmPtrsINTEL = 16899,
+
+ [NativeName("CL_KERNEL_EXEC_INFO_DEVICE_PTRS_EXT")]
+ DevicePtrsEXT = 20482,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/KernelExecInfoARM.gen.cs b/sources/OpenCL/OpenCL/Enums/KernelExecInfoARM.gen.cs
new file mode 100644
index 0000000000..521fb8f241
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/KernelExecInfoARM.gen.cs
@@ -0,0 +1,20 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_kernel_exec_info_arm")]
+public enum KernelExecInfoARM : uint
+{
+ [NativeName("CL_KERNEL_EXEC_INFO_SVM_PTRS_ARM")]
+ Ptrs = 16568,
+
+ [NativeName("CL_KERNEL_EXEC_INFO_SVM_FINE_GRAIN_SYSTEM_ARM")]
+ FineGrainSystem = 16569,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/KernelInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/KernelInfo.gen.cs
new file mode 100644
index 0000000000..ddba28493a
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/KernelInfo.gen.cs
@@ -0,0 +1,35 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_kernel_info")]
+public enum KernelInfo : uint
+{
+ [NativeName("CL_KERNEL_FUNCTION_NAME")]
+ FunctionName = 4496,
+
+ [NativeName("CL_KERNEL_NUM_ARGS")]
+ NumArgs = 4497,
+
+ [NativeName("CL_KERNEL_REFERENCE_COUNT")]
+ ReferenceCount = 4498,
+
+ [NativeName("CL_KERNEL_CONTEXT")]
+ Context = 4499,
+
+ [NativeName("CL_KERNEL_PROGRAM")]
+ Program = 4500,
+
+ [NativeName("CL_KERNEL_ATTRIBUTES")]
+ Attributes = 4501,
+
+ [NativeName("CL_KERNEL_MAX_WARP_COUNT_ARM")]
+ MaxWarpCountARM = 16873,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/KernelSubGroupInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/KernelSubGroupInfo.gen.cs
new file mode 100644
index 0000000000..fe742d74fd
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/KernelSubGroupInfo.gen.cs
@@ -0,0 +1,38 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_kernel_sub_group_info")]
+public enum KernelSubGroupInfo : uint
+{
+ [NativeName("CL_KERNEL_MAX_SUB_GROUP_SIZE_FOR_NDRANGE")]
+ MaxSubGroupSizeForNdrange = 8243,
+
+ [NativeName("CL_KERNEL_SUB_GROUP_COUNT_FOR_NDRANGE")]
+ SubGroupCountForNdrange = 8244,
+
+ [NativeName("CL_KERNEL_LOCAL_SIZE_FOR_SUB_GROUP_COUNT")]
+ LocalSizeForSubGroupCount = 4536,
+
+ [NativeName("CL_KERNEL_MAX_NUM_SUB_GROUPS")]
+ MaxNumSubGroups = 4537,
+
+ [NativeName("CL_KERNEL_COMPILE_NUM_SUB_GROUPS")]
+ CompileNumSubGroups = 4538,
+
+ [NativeName("CL_KERNEL_MAX_SUB_GROUP_SIZE_FOR_NDRANGE_KHR")]
+ MaxSubGroupSizeForNdrangeKHR = 8243,
+
+ [NativeName("CL_KERNEL_SUB_GROUP_COUNT_FOR_NDRANGE_KHR")]
+ SubGroupCountForNdrangeKHR = 8244,
+
+ [NativeName("CL_KERNEL_COMPILE_SUB_GROUP_SIZE_INTEL")]
+ CompileSubGroupSizeINTEL = 16650,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/KernelWorkGroupInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/KernelWorkGroupInfo.gen.cs
new file mode 100644
index 0000000000..892cd69c34
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/KernelWorkGroupInfo.gen.cs
@@ -0,0 +1,35 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_kernel_work_group_info")]
+public enum KernelWorkGroupInfo : uint
+{
+ [NativeName("CL_KERNEL_WORK_GROUP_SIZE")]
+ WorkGroupSize = 4528,
+
+ [NativeName("CL_KERNEL_COMPILE_WORK_GROUP_SIZE")]
+ CompileWorkGroupSize = 4529,
+
+ [NativeName("CL_KERNEL_LOCAL_MEM_SIZE")]
+ LocalMemSize = 4530,
+
+ [NativeName("CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE")]
+ PreferredWorkGroupSizeMultiple = 4531,
+
+ [NativeName("CL_KERNEL_PRIVATE_MEM_SIZE")]
+ PrivateMemSize = 4532,
+
+ [NativeName("CL_KERNEL_GLOBAL_WORK_SIZE")]
+ GlobalWorkSize = 4533,
+
+ [NativeName("CL_KERNEL_SPILL_MEM_SIZE_INTEL")]
+ SpillMemSizeINTEL = 16649,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/KernelWorkgroupInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/KernelWorkgroupInfo.gen.cs
new file mode 100644
index 0000000000..af5b6016db
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/KernelWorkgroupInfo.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_kernel_workgroup_info")]
+public enum KernelWorkgroupInfo : uint
+{
+ [NativeName("CL_KERNEL_ALLOCATIONS_INFO_INTEL")]
+ AllocationsInfoINTEL = 16986,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/KhronosVendorId.gen.cs b/sources/OpenCL/OpenCL/Enums/KhronosVendorId.gen.cs
new file mode 100644
index 0000000000..678904a42d
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/KhronosVendorId.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_khronos_vendor_id")]
+public enum KhronosVendorId : uint
+{
+ [NativeName("CL_KHRONOS_VENDOR_ID_CODEPLAY")]
+ Codeplay = 65540,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/LayerInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/LayerInfo.gen.cs
new file mode 100644
index 0000000000..221f69a956
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/LayerInfo.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_layer_info")]
+public enum LayerInfo : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/LayerProperties.gen.cs b/sources/OpenCL/OpenCL/Enums/LayerProperties.gen.cs
new file mode 100644
index 0000000000..65b3707a23
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/LayerProperties.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_layer_properties")]
+public enum LayerProperties : ulong { }
diff --git a/sources/OpenCL/OpenCL/Enums/MapFlags.gen.cs b/sources/OpenCL/OpenCL/Enums/MapFlags.gen.cs
new file mode 100644
index 0000000000..42fc591039
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MapFlags.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_map_flags")]
+[Flags]
+public enum MapFlags : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_MAP_READ")]
+ Read = 0x1,
+
+ [NativeName("CL_MAP_WRITE")]
+ Write = 0x2,
+
+ [NativeName("CL_MAP_WRITE_INVALIDATE_REGION")]
+ WriteInvalidateRegion = 0x4,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MediaAdapterSetKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/MediaAdapterSetKHR.gen.cs
new file mode 100644
index 0000000000..e22c3ee147
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MediaAdapterSetKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_media_adapter_set_khr")]
+public enum MediaAdapterSetKHR : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/MediaAdapterTypeKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/MediaAdapterTypeKHR.gen.cs
new file mode 100644
index 0000000000..f2ef8ecdad
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MediaAdapterTypeKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_media_adapter_type_khr")]
+public enum MediaAdapterTypeKHR : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/MemAllocFlagsIMG.gen.cs b/sources/OpenCL/OpenCL/Enums/MemAllocFlagsIMG.gen.cs
new file mode 100644
index 0000000000..c287bcf1c6
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MemAllocFlagsIMG.gen.cs
@@ -0,0 +1,35 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_mem_alloc_flags_img")]
+[Flags]
+public enum MemAllocFlagsIMG : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_MEM_ALLOC_RELAX_REQUIREMENTS_IMG")]
+ RelaxRequirements = 0x1,
+
+ [NativeName("CL_MEM_ALLOC_GPU_WRITE_COMBINE_IMG")]
+ GpuWriteCombine = 0x2,
+
+ [NativeName("CL_MEM_ALLOC_GPU_CACHED_IMG")]
+ GpuCached = 0x4,
+
+ [NativeName("CL_MEM_ALLOC_CPU_LOCAL_IMG")]
+ CpuLocal = 0x8,
+
+ [NativeName("CL_MEM_ALLOC_GPU_LOCAL_IMG")]
+ GpuLocal = 0x10,
+
+ [NativeName("CL_MEM_ALLOC_GPU_PRIVATE_IMG")]
+ GpuPrivate = 0x20,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MemAllocFlagsINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/MemAllocFlagsINTEL.gen.cs
new file mode 100644
index 0000000000..5304ecf18b
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MemAllocFlagsINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_mem_alloc_flags_intel")]
+[Flags]
+public enum MemAllocFlagsINTEL : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_MEM_ALLOC_WRITE_COMBINED_INTEL")]
+ WriteCombined = 0x1,
+
+ [NativeName("CL_MEM_ALLOC_INITIAL_PLACEMENT_DEVICE_INTEL")]
+ InitialPlacementDevice = 0x2,
+
+ [NativeName("CL_MEM_ALLOC_INITIAL_PLACEMENT_HOST_INTEL")]
+ InitialPlacementHost = 0x4,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MemAllocInfoINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/MemAllocInfoINTEL.gen.cs
new file mode 100644
index 0000000000..89b3940c32
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MemAllocInfoINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_mem_alloc_info_intel")]
+public enum MemAllocInfoINTEL : uint
+{
+ [NativeName("CL_MEM_ALLOC_TYPE_INTEL")]
+ Type = 16794,
+
+ [NativeName("CL_MEM_ALLOC_BASE_PTR_INTEL")]
+ BasePtr = 16795,
+
+ [NativeName("CL_MEM_ALLOC_SIZE_INTEL")]
+ Size = 16796,
+
+ [NativeName("CL_MEM_ALLOC_DEVICE_INTEL")]
+ Device = 16797,
+
+ [NativeName("CL_MEM_ALLOC_BUFFER_LOCATION_INTEL")]
+ BufferLocation = 16798,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MemFlags.gen.cs b/sources/OpenCL/OpenCL/Enums/MemFlags.gen.cs
new file mode 100644
index 0000000000..8f7db9228b
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MemFlags.gen.cs
@@ -0,0 +1,80 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_mem_flags")]
+[Flags]
+public enum MemFlags : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_MEM_READ_WRITE")]
+ ReadWrite = 0x1,
+
+ [NativeName("CL_MEM_WRITE_ONLY")]
+ WriteOnly = 0x2,
+
+ [NativeName("CL_MEM_READ_ONLY")]
+ ReadOnly = 0x4,
+
+ [NativeName("CL_MEM_USE_HOST_PTR")]
+ UseHostPtr = 0x8,
+
+ [NativeName("CL_MEM_ALLOC_HOST_PTR")]
+ AllocHostPtr = 0x10,
+
+ [NativeName("CL_MEM_COPY_HOST_PTR")]
+ CopyHostPtr = 0x20,
+
+ [NativeName("CL_MEM_HOST_WRITE_ONLY")]
+ HostWriteOnly = 0x80,
+
+ [NativeName("CL_MEM_HOST_READ_ONLY")]
+ HostReadOnly = 0x100,
+
+ [NativeName("CL_MEM_HOST_NO_ACCESS")]
+ HostNoAccess = 0x200,
+
+ [NativeName("CL_MEM_SVM_FINE_GRAIN_BUFFER")]
+ SvmFineGrainBuffer = 0x400,
+
+ [NativeName("CL_MEM_SVM_ATOMICS")]
+ SvmAtomics = 0x800,
+
+ [NativeName("CL_MEM_KERNEL_READ_AND_WRITE")]
+ KernelReadAndWrite = 0x1000,
+
+ [NativeName("CL_MEM_EXT_HOST_PTR_QCOM")]
+ ExtHostPtrQCOM = 0x20000000,
+
+ [NativeName("CL_MEM_USE_UNCACHED_CPU_MEMORY_IMG")]
+ UseUncachedCpuMemoryIMG = 0x4000000,
+
+ [NativeName("CL_MEM_USE_CACHED_CPU_MEMORY_IMG")]
+ UseCachedCpuMemoryIMG = 0x8000000,
+
+ [NativeName("CL_MEM_USE_GRALLOC_PTR_IMG")]
+ UseGrallocPtrIMG = 0x10000000,
+
+ [NativeName("CL_MEM_PROTECTED_ALLOC_ARM")]
+ ProtectedAllocARM = 0x1000000000,
+
+ [NativeName("CL_MEM_NO_ACCESS_INTEL")]
+ NoAccessINTEL = 0x1000000,
+
+ [NativeName("CL_MEM_ACCESS_FLAGS_UNRESTRICTED_INTEL")]
+ AccessFlagsUnrestrictedINTEL = 0x2000000,
+
+ [NativeName("CL_MEM_FORCE_HOST_MEMORY_INTEL")]
+ ForceHostMemoryINTEL = 0x100000,
+
+ [NativeName("CL_MEM_IMMUTABLE_EXT")]
+ ImmutableEXT = 0x40,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MemInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/MemInfo.gen.cs
new file mode 100644
index 0000000000..b52816ae7c
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MemInfo.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_mem_info")]
+public enum MemInfo : uint
+{
+ [NativeName("CL_MEM_TYPE")]
+ Type = 4352,
+
+ [NativeName("CL_MEM_FLAGS")]
+ Flags = 4353,
+
+ [NativeName("CL_MEM_SIZE")]
+ Size = 4354,
+
+ [NativeName("CL_MEM_HOST_PTR")]
+ HostPtr = 4355,
+
+ [NativeName("CL_MEM_MAP_COUNT")]
+ MapCount = 4356,
+
+ [NativeName("CL_MEM_REFERENCE_COUNT")]
+ ReferenceCount = 4357,
+
+ [NativeName("CL_MEM_CONTEXT")]
+ Context = 4358,
+
+ [NativeName("CL_MEM_ASSOCIATED_MEMOBJECT")]
+ AssociatedMemobject = 4359,
+
+ [NativeName("CL_MEM_OFFSET")]
+ Offset = 4360,
+
+ [NativeName("CL_MEM_USES_SVM_POINTER")]
+ UsesSvmPointer = 4361,
+
+ [NativeName("CL_MEM_PROPERTIES")]
+ Properties = 4362,
+
+ [NativeName("CL_MEM_USES_SVM_POINTER_ARM")]
+ UsesSvmPointerARM = 16567,
+
+ [NativeName("CL_MEM_DEVICE_ADDRESS_EXT")]
+ DeviceAddressEXT = 20481,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MemMigrationFlags.gen.cs b/sources/OpenCL/OpenCL/Enums/MemMigrationFlags.gen.cs
new file mode 100644
index 0000000000..0301d8c6f9
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MemMigrationFlags.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_mem_migration_flags")]
+[Flags]
+public enum MemMigrationFlags : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_MIGRATE_MEM_OBJECT_HOST")]
+ Host = 0x1,
+
+ [NativeName("CL_MIGRATE_MEM_OBJECT_CONTENT_UNDEFINED")]
+ ContentUndefined = 0x2,
+
+ [NativeName("CL_MIGRATE_MEM_OBJECT_HOST_EXT")]
+ HostEXT = 0x1,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MemMigrationFlagsEXT.gen.cs b/sources/OpenCL/OpenCL/Enums/MemMigrationFlagsEXT.gen.cs
new file mode 100644
index 0000000000..863c49dfd8
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MemMigrationFlagsEXT.gen.cs
@@ -0,0 +1,20 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_mem_migration_flags_ext")]
+[Flags]
+public enum MemMigrationFlagsEXT : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_MIGRATE_MEM_OBJECT_HOST_EXT")]
+ MigrateMemObjectHost = 0x1,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MemObjectType.gen.cs b/sources/OpenCL/OpenCL/Enums/MemObjectType.gen.cs
new file mode 100644
index 0000000000..9af92474f7
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MemObjectType.gen.cs
@@ -0,0 +1,38 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_mem_object_type")]
+public enum MemObjectType : uint
+{
+ [NativeName("CL_MEM_OBJECT_BUFFER")]
+ Buffer = 4336,
+
+ [NativeName("CL_MEM_OBJECT_IMAGE2D")]
+ Image2D = 4337,
+
+ [NativeName("CL_MEM_OBJECT_IMAGE3D")]
+ Image3D = 4338,
+
+ [NativeName("CL_MEM_OBJECT_IMAGE2D_ARRAY")]
+ Image2DArray = 4339,
+
+ [NativeName("CL_MEM_OBJECT_IMAGE1D")]
+ Image1D = 4340,
+
+ [NativeName("CL_MEM_OBJECT_IMAGE1D_ARRAY")]
+ Image1DArray = 4341,
+
+ [NativeName("CL_MEM_OBJECT_IMAGE1D_BUFFER")]
+ Image1DBuffer = 4342,
+
+ [NativeName("CL_MEM_OBJECT_PIPE")]
+ Pipe = 4343,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MemProperties.gen.cs b/sources/OpenCL/OpenCL/Enums/MemProperties.gen.cs
new file mode 100644
index 0000000000..1bb223153e
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MemProperties.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_mem_properties")]
+public enum MemProperties : ulong
+{
+ [NativeName("CL_MEM_ALLOC_FLAGS_IMG")]
+ AllocFlagsIMG = 16599,
+
+ [NativeName("CL_MEM_DEVICE_HANDLE_LIST_KHR")]
+ DeviceHandleListKHR = 8273,
+
+ [NativeName("CL_MEM_LOCALLY_UNCACHED_RESOURCE_INTEL")]
+ LocallyUncachedResourceINTEL = 16920,
+
+ [NativeName("CL_MEM_DEVICE_ID_INTEL")]
+ DeviceIdINTEL = 16921,
+
+ [NativeName("CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT")]
+ DevicePrivateAddressEXT = 20480,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MemPropertiesINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/MemPropertiesINTEL.gen.cs
new file mode 100644
index 0000000000..aeede23527
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MemPropertiesINTEL.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_mem_properties_intel")]
+public enum MemPropertiesINTEL : ulong
+{
+ [NativeName("CL_MEM_ALLOC_FLAGS_INTEL")]
+ AllocFlags = 16789,
+
+ [NativeName("CL_MEM_ALLOC_BUFFER_LOCATION_INTEL")]
+ AllocBufferLocation = 16798,
+
+ [NativeName("CL_MEM_CHANNEL_INTEL")]
+ Channel = 16915,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MipmapFilterModeIMG.gen.cs b/sources/OpenCL/OpenCL/Enums/MipmapFilterModeIMG.gen.cs
new file mode 100644
index 0000000000..251c791acf
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MipmapFilterModeIMG.gen.cs
@@ -0,0 +1,20 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_mipmap_filter_mode_img")]
+public enum MipmapFilterModeIMG : uint
+{
+ [NativeName("CL_MIPMAP_FILTER_ANY_IMG")]
+ Any = 0,
+
+ [NativeName("CL_MIPMAP_FILTER_BOX_IMG")]
+ Box = 1,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MotionEstimationDescMbBlockTypeINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/MotionEstimationDescMbBlockTypeINTEL.gen.cs
new file mode 100644
index 0000000000..a979b4545f
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MotionEstimationDescMbBlockTypeINTEL.gen.cs
@@ -0,0 +1,24 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_motion_estimation_desc_intel.mb_block_type")]
+[Flags]
+public enum MotionEstimationDescMbBlockTypeINTEL : uint
+{
+ [NativeName("CL_ME_MB_TYPE_16x16_INTEL")]
+ Type16x16 = 0x0,
+
+ [NativeName("CL_ME_MB_TYPE_8x8_INTEL")]
+ Type8x8 = 0x1,
+
+ [NativeName("CL_ME_MB_TYPE_4x4_INTEL")]
+ Type4x4 = 0x2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MotionEstimationDescSadAdjustModeINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/MotionEstimationDescSadAdjustModeINTEL.gen.cs
new file mode 100644
index 0000000000..f5cbc2a9ae
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MotionEstimationDescSadAdjustModeINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_motion_estimation_desc_intel.sad_adjust_mode")]
+[Flags]
+public enum MotionEstimationDescSadAdjustModeINTEL : uint
+{
+ [NativeName("CL_ME_SAD_ADJUST_MODE_NONE_INTEL")]
+ None = 0x0,
+
+ [NativeName("CL_ME_SAD_ADJUST_MODE_HAAR_INTEL")]
+ Haar = 0x1,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MotionEstimationDescSearchPathTypeINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/MotionEstimationDescSearchPathTypeINTEL.gen.cs
new file mode 100644
index 0000000000..2f79ec7080
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MotionEstimationDescSearchPathTypeINTEL.gen.cs
@@ -0,0 +1,24 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_motion_estimation_desc_intel.search_path_type")]
+[Flags]
+public enum MotionEstimationDescSearchPathTypeINTEL : uint
+{
+ [NativeName("CL_ME_SEARCH_PATH_RADIUS_2_2_INTEL")]
+ Radius2x2 = 0x0,
+
+ [NativeName("CL_ME_SEARCH_PATH_RADIUS_4_4_INTEL")]
+ Radius4x4 = 0x1,
+
+ [NativeName("CL_ME_SEARCH_PATH_RADIUS_16_12_INTEL")]
+ Radius16x12 = 0x5,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MotionEstimationDescSubpixelModeINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/MotionEstimationDescSubpixelModeINTEL.gen.cs
new file mode 100644
index 0000000000..e3783bb456
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MotionEstimationDescSubpixelModeINTEL.gen.cs
@@ -0,0 +1,24 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_motion_estimation_desc_intel.subpixel_mode")]
+[Flags]
+public enum MotionEstimationDescSubpixelModeINTEL : uint
+{
+ [NativeName("CL_ME_SUBPIXEL_MODE_INTEGER_INTEL")]
+ Integer = 0x0,
+
+ [NativeName("CL_ME_SUBPIXEL_MODE_HPEL_INTEL")]
+ Hpel = 0x1,
+
+ [NativeName("CL_ME_SUBPIXEL_MODE_QPEL_INTEL")]
+ Qpel = 0x2,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MutableCommandInfoKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/MutableCommandInfoKHR.gen.cs
new file mode 100644
index 0000000000..a345be5648
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MutableCommandInfoKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_mutable_command_info_khr")]
+public enum MutableCommandInfoKHR : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/MutableDispatchAssertsKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/MutableDispatchAssertsKHR.gen.cs
new file mode 100644
index 0000000000..579c32e0a6
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MutableDispatchAssertsKHR.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_mutable_dispatch_asserts_khr")]
+[Flags]
+public enum MutableDispatchAssertsKHR : ulong
+{
+ None = 0x0,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/MutableDispatchFieldsKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/MutableDispatchFieldsKHR.gen.cs
new file mode 100644
index 0000000000..cd0d570235
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/MutableDispatchFieldsKHR.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_mutable_dispatch_fields_khr")]
+[Flags]
+public enum MutableDispatchFieldsKHR : ulong
+{
+ None = 0x0,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/PerfHintQCOM.gen.cs b/sources/OpenCL/OpenCL/Enums/PerfHintQCOM.gen.cs
new file mode 100644
index 0000000000..df81d95ec8
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/PerfHintQCOM.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_perf_hint_qcom")]
+public enum PerfHintQCOM : uint
+{
+ [NativeName("CL_PERF_HINT_HIGH_QCOM")]
+ High = 16579,
+
+ [NativeName("CL_PERF_HINT_NORMAL_QCOM")]
+ Normal = 16580,
+
+ [NativeName("CL_PERF_HINT_LOW_QCOM")]
+ Low = 16581,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/PipeInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/PipeInfo.gen.cs
new file mode 100644
index 0000000000..99406d7215
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/PipeInfo.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_pipe_info")]
+public enum PipeInfo : uint
+{
+ [NativeName("CL_PIPE_PACKET_SIZE")]
+ PacketSize = 4384,
+
+ [NativeName("CL_PIPE_MAX_PACKETS")]
+ MaxPackets = 4385,
+
+ [NativeName("CL_PIPE_PROPERTIES")]
+ Properties = 4386,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/PlatformCommandBufferCapabilitiesKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/PlatformCommandBufferCapabilitiesKHR.gen.cs
new file mode 100644
index 0000000000..1576a89b0b
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/PlatformCommandBufferCapabilitiesKHR.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_platform_command_buffer_capabilities_khr")]
+[Flags]
+public enum PlatformCommandBufferCapabilitiesKHR : ulong
+{
+ None = 0x0,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/PlatformInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/PlatformInfo.gen.cs
new file mode 100644
index 0000000000..65e6fc595f
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/PlatformInfo.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_platform_info")]
+public enum PlatformInfo : uint
+{
+ [NativeName("CL_PLATFORM_PROFILE")]
+ Profile = 2304,
+
+ [NativeName("CL_PLATFORM_VERSION")]
+ Version = 2305,
+
+ [NativeName("CL_PLATFORM_NAME")]
+ Name = 2306,
+
+ [NativeName("CL_PLATFORM_VENDOR")]
+ Vendor = 2307,
+
+ [NativeName("CL_PLATFORM_EXTENSIONS")]
+ Extensions = 2308,
+
+ [NativeName("CL_PLATFORM_HOST_TIMER_RESOLUTION")]
+ HostTimerResolution = 2309,
+
+ [NativeName("CL_PLATFORM_NUMERIC_VERSION")]
+ NumericVersion = 2310,
+
+ [NativeName("CL_PLATFORM_EXTENSIONS_WITH_VERSION")]
+ ExtensionsWithVersion = 2311,
+
+ [NativeName("CL_PLATFORM_ICD_SUFFIX_KHR")]
+ IcdSuffixKHR = 2336,
+
+ [NativeName("CL_PLATFORM_UNLOADABLE_KHR")]
+ UnloadableKHR = 2337,
+
+ [NativeName("CL_PLATFORM_NUMERIC_VERSION_KHR")]
+ NumericVersionKHR = 2310,
+
+ [NativeName("CL_PLATFORM_EXTENSIONS_WITH_VERSION_KHR")]
+ ExtensionsWithVersionKHR = 2311,
+
+ [NativeName("CL_PLATFORM_EXTERNAL_MEMORY_IMPORT_HANDLE_TYPES_KHR")]
+ ExternalMemoryImportHandleTypesKHR = 8260,
+
+ [NativeName("CL_PLATFORM_SEMAPHORE_IMPORT_HANDLE_TYPES_KHR")]
+ SemaphoreImportHandleTypesKHR = 8247,
+
+ [NativeName("CL_PLATFORM_SEMAPHORE_EXPORT_HANDLE_TYPES_KHR")]
+ SemaphoreExportHandleTypesKHR = 8248,
+
+ [NativeName("CL_PLATFORM_SEMAPHORE_TYPES_KHR")]
+ SemaphoreTypesKHR = 8246,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ProfilingInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/ProfilingInfo.gen.cs
new file mode 100644
index 0000000000..5d04e6c928
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ProfilingInfo.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_profiling_info")]
+public enum ProfilingInfo : uint
+{
+ [NativeName("CL_PROFILING_COMMAND_QUEUED")]
+ Queued = 4736,
+
+ [NativeName("CL_PROFILING_COMMAND_SUBMIT")]
+ Submit = 4737,
+
+ [NativeName("CL_PROFILING_COMMAND_START")]
+ Start = 4738,
+
+ [NativeName("CL_PROFILING_COMMAND_END")]
+ End = 4739,
+
+ [NativeName("CL_PROFILING_COMMAND_COMPLETE")]
+ Complete = 4740,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ProgramBinaryType.gen.cs b/sources/OpenCL/OpenCL/Enums/ProgramBinaryType.gen.cs
new file mode 100644
index 0000000000..c8e571f56b
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ProgramBinaryType.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_program_binary_type")]
+public enum ProgramBinaryType : uint
+{
+ [NativeName("CL_PROGRAM_BINARY_TYPE_NONE")]
+ None = 0,
+
+ [NativeName("CL_PROGRAM_BINARY_TYPE_COMPILED_OBJECT")]
+ CompiledObject = 1,
+
+ [NativeName("CL_PROGRAM_BINARY_TYPE_LIBRARY")]
+ Library = 2,
+
+ [NativeName("CL_PROGRAM_BINARY_TYPE_EXECUTABLE")]
+ Executable = 4,
+
+ [NativeName("CL_PROGRAM_BINARY_TYPE_INTERMEDIATE")]
+ Intermediate = 16609,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ProgramBuildInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/ProgramBuildInfo.gen.cs
new file mode 100644
index 0000000000..622ab82b8d
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ProgramBuildInfo.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_program_build_info")]
+public enum ProgramBuildInfo : uint
+{
+ [NativeName("CL_PROGRAM_BUILD_STATUS")]
+ BuildStatus = 4481,
+
+ [NativeName("CL_PROGRAM_BUILD_OPTIONS")]
+ BuildOptions = 4482,
+
+ [NativeName("CL_PROGRAM_BUILD_LOG")]
+ BuildLog = 4483,
+
+ [NativeName("CL_PROGRAM_BINARY_TYPE")]
+ BinaryType = 4484,
+
+ [NativeName("CL_PROGRAM_BUILD_GLOBAL_VARIABLE_TOTAL_SIZE")]
+ BuildGlobalVariableTotalSize = 4485,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/ProgramInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/ProgramInfo.gen.cs
new file mode 100644
index 0000000000..cdae3c4981
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/ProgramInfo.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_program_info")]
+public enum ProgramInfo : uint
+{
+ [NativeName("CL_PROGRAM_REFERENCE_COUNT")]
+ ReferenceCount = 4448,
+
+ [NativeName("CL_PROGRAM_CONTEXT")]
+ Context = 4449,
+
+ [NativeName("CL_PROGRAM_NUM_DEVICES")]
+ NumDevices = 4450,
+
+ [NativeName("CL_PROGRAM_DEVICES")]
+ Devices = 4451,
+
+ [NativeName("CL_PROGRAM_SOURCE")]
+ Source = 4452,
+
+ [NativeName("CL_PROGRAM_BINARY_SIZES")]
+ BinarySizes = 4453,
+
+ [NativeName("CL_PROGRAM_BINARIES")]
+ Binaries = 4454,
+
+ [NativeName("CL_PROGRAM_NUM_KERNELS")]
+ NumKernels = 4455,
+
+ [NativeName("CL_PROGRAM_KERNEL_NAMES")]
+ KernelNames = 4456,
+
+ [NativeName("CL_PROGRAM_IL")]
+ Il = 4457,
+
+ [NativeName("CL_PROGRAM_SCOPE_GLOBAL_CTORS_PRESENT")]
+ ScopeGlobalCtorsPresent = 4458,
+
+ [NativeName("CL_PROGRAM_SCOPE_GLOBAL_DTORS_PRESENT")]
+ ScopeGlobalDtorsPresent = 4459,
+
+ [NativeName("CL_PROGRAM_IL_KHR")]
+ IlKHR = 4457,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/QueuePriorityKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/QueuePriorityKHR.gen.cs
new file mode 100644
index 0000000000..5399b89368
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/QueuePriorityKHR.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_queue_priority_khr")]
+[Flags]
+public enum QueuePriorityKHR : uint
+{
+ None = 0x0,
+
+ [NativeName("CL_QUEUE_PRIORITY_HIGH_KHR")]
+ High = 0x1,
+
+ [NativeName("CL_QUEUE_PRIORITY_MED_KHR")]
+ Med = 0x2,
+
+ [NativeName("CL_QUEUE_PRIORITY_LOW_KHR")]
+ Low = 0x4,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/QueueProperties.gen.cs b/sources/OpenCL/OpenCL/Enums/QueueProperties.gen.cs
new file mode 100644
index 0000000000..20e4fdf181
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/QueueProperties.gen.cs
@@ -0,0 +1,38 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_queue_properties")]
+public enum QueueProperties : ulong
+{
+ [NativeName("CL_QUEUE_PRIORITY_KHR")]
+ PriorityKHR = 4246,
+
+ [NativeName("CL_QUEUE_THROTTLE_KHR")]
+ ThrottleKHR = 4247,
+
+ [NativeName("CL_QUEUE_JOB_SLOT_ARM")]
+ JobSlotARM = 16865,
+
+ [NativeName("CL_QUEUE_KERNEL_BATCHING_ARM")]
+ KernelBatchingARM = 16871,
+
+ [NativeName("CL_QUEUE_DEFERRED_FLUSH_ARM")]
+ DeferredFlushARM = 16876,
+
+ [NativeName("CL_QUEUE_COMPUTE_UNIT_LIMIT_ARM")]
+ ComputeUnitLimitARM = 16883,
+
+ [NativeName("CL_QUEUE_FAMILY_INTEL")]
+ FamilyINTEL = 16780,
+
+ [NativeName("CL_QUEUE_INDEX_INTEL")]
+ IndexINTEL = 16781,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/QueuePropertiesKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/QueuePropertiesKHR.gen.cs
new file mode 100644
index 0000000000..4e2804de34
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/QueuePropertiesKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_queue_properties_khr")]
+public enum QueuePropertiesKHR : ulong { }
diff --git a/sources/OpenCL/OpenCL/Enums/QueueThrottleKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/QueueThrottleKHR.gen.cs
new file mode 100644
index 0000000000..e2daddd52a
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/QueueThrottleKHR.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_queue_throttle_khr")]
+[Flags]
+public enum QueueThrottleKHR : uint
+{
+ None = 0x0,
+
+ [NativeName("CL_QUEUE_THROTTLE_HIGH_KHR")]
+ High = 0x1,
+
+ [NativeName("CL_QUEUE_THROTTLE_MED_KHR")]
+ Med = 0x2,
+
+ [NativeName("CL_QUEUE_THROTTLE_LOW_KHR")]
+ Low = 0x4,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/SamplerInfo.gen.cs b/sources/OpenCL/OpenCL/Enums/SamplerInfo.gen.cs
new file mode 100644
index 0000000000..d514072829
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SamplerInfo.gen.cs
@@ -0,0 +1,41 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_sampler_info")]
+public enum SamplerInfo : uint
+{
+ [NativeName("CL_SAMPLER_REFERENCE_COUNT")]
+ ReferenceCount = 4432,
+
+ [NativeName("CL_SAMPLER_CONTEXT")]
+ Context = 4433,
+
+ [NativeName("CL_SAMPLER_NORMALIZED_COORDS")]
+ NormalizedCoords = 4434,
+
+ [NativeName("CL_SAMPLER_ADDRESSING_MODE")]
+ AddressingMode = 4435,
+
+ [NativeName("CL_SAMPLER_FILTER_MODE")]
+ FilterMode = 4436,
+
+ [NativeName("CL_SAMPLER_MIP_FILTER_MODE")]
+ MipFilterMode = 4437,
+
+ [NativeName("CL_SAMPLER_LOD_MIN")]
+ LodMin = 4438,
+
+ [NativeName("CL_SAMPLER_LOD_MAX")]
+ LodMax = 4439,
+
+ [NativeName("CL_SAMPLER_PROPERTIES")]
+ Properties = 4440,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/SamplerProperties.gen.cs b/sources/OpenCL/OpenCL/Enums/SamplerProperties.gen.cs
new file mode 100644
index 0000000000..499e7bb6c5
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SamplerProperties.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_sampler_properties")]
+public enum SamplerProperties : ulong
+{
+ [NativeName("CL_SAMPLER_MIP_FILTER_MODE_KHR")]
+ MipFilterModeKHR = 4437,
+
+ [NativeName("CL_SAMPLER_LOD_MIN_KHR")]
+ LodMinKHR = 4438,
+
+ [NativeName("CL_SAMPLER_LOD_MAX_KHR")]
+ LodMaxKHR = 4439,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/SemaphoreInfoKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/SemaphoreInfoKHR.gen.cs
new file mode 100644
index 0000000000..184f27e583
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SemaphoreInfoKHR.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_semaphore_info_khr")]
+public enum SemaphoreInfoKHR : uint
+{
+ [NativeName("CL_SEMAPHORE_EXPORTABLE_KHR")]
+ Exportable = 8276,
+
+ [NativeName("CL_SEMAPHORE_CONTEXT_KHR")]
+ Context = 8249,
+
+ [NativeName("CL_SEMAPHORE_REFERENCE_COUNT_KHR")]
+ ReferenceCount = 8250,
+
+ [NativeName("CL_SEMAPHORE_PROPERTIES_KHR")]
+ Properties = 8251,
+
+ [NativeName("CL_SEMAPHORE_PAYLOAD_KHR")]
+ Payload = 8252,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/SemaphorePropertiesKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/SemaphorePropertiesKHR.gen.cs
new file mode 100644
index 0000000000..2f8c4f8033
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SemaphorePropertiesKHR.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_semaphore_properties_khr")]
+public enum SemaphorePropertiesKHR : ulong
+{
+ [NativeName("CL_SEMAPHORE_EXPORT_HANDLE_TYPES_KHR")]
+ ExportHandleTypes = 8255,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/SemaphoreReimportPropertiesKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/SemaphoreReimportPropertiesKHR.gen.cs
new file mode 100644
index 0000000000..5ee4f38f37
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SemaphoreReimportPropertiesKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_semaphore_reimport_properties_khr")]
+public enum SemaphoreReimportPropertiesKHR : ulong { }
diff --git a/sources/OpenCL/OpenCL/Enums/SemaphoreType.gen.cs b/sources/OpenCL/OpenCL/Enums/SemaphoreType.gen.cs
new file mode 100644
index 0000000000..d1ff3ed58f
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SemaphoreType.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_semaphore_type")]
+public enum SemaphoreType : uint
+{
+ [NativeName("CL_SEMAPHORE_TYPE_BINARY_KHR")]
+ BinaryKHR = 1,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/SemaphoreTypeKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/SemaphoreTypeKHR.gen.cs
new file mode 100644
index 0000000000..d0c564bcb4
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SemaphoreTypeKHR.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_semaphore_type_khr")]
+public enum SemaphoreTypeKHR : uint
+{
+ [NativeName("CL_SEMAPHORE_TYPE_BINARY_KHR")]
+ Binary = 1,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/SvmAllocAccessFlagsKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/SvmAllocAccessFlagsKHR.gen.cs
new file mode 100644
index 0000000000..e3ecda5cf7
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SvmAllocAccessFlagsKHR.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_svm_alloc_access_flags_khr")]
+[Flags]
+public enum SvmAllocAccessFlagsKHR : ulong
+{
+ None = 0x0,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/SvmAllocFlagsARM.gen.cs b/sources/OpenCL/OpenCL/Enums/SvmAllocFlagsARM.gen.cs
new file mode 100644
index 0000000000..523f175107
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SvmAllocFlagsARM.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_arm_svm_alloc.flags")]
+[Flags]
+public enum SvmAllocFlagsARM : uint
+{
+ None = 0x0,
+
+ [NativeName("CL_MEM_SVM_FINE_GRAIN_BUFFER_ARM")]
+ FineGrainBuffer = 0x400,
+
+ [NativeName("CL_MEM_SVM_ATOMICS_ARM")]
+ Atomics = 0x800,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/SvmAllocPropertiesKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/SvmAllocPropertiesKHR.gen.cs
new file mode 100644
index 0000000000..0e0eb3a4ec
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SvmAllocPropertiesKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_svm_alloc_properties_khr")]
+public enum SvmAllocPropertiesKHR : ulong { }
diff --git a/sources/OpenCL/OpenCL/Enums/SvmCapabilitiesKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/SvmCapabilitiesKHR.gen.cs
new file mode 100644
index 0000000000..9a505c8c4c
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SvmCapabilitiesKHR.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_svm_capabilities_khr")]
+[Flags]
+public enum SvmCapabilitiesKHR : ulong
+{
+ None = 0x0,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/SvmFreeFlagsKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/SvmFreeFlagsKHR.gen.cs
new file mode 100644
index 0000000000..218d16c232
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SvmFreeFlagsKHR.gen.cs
@@ -0,0 +1,17 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_svm_free_flags_khr")]
+[Flags]
+public enum SvmFreeFlagsKHR : ulong
+{
+ None = 0x0,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/SvmFreePropertiesKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/SvmFreePropertiesKHR.gen.cs
new file mode 100644
index 0000000000..46ceab45b3
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SvmFreePropertiesKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_svm_free_properties_khr")]
+public enum SvmFreePropertiesKHR : ulong { }
diff --git a/sources/OpenCL/OpenCL/Enums/SvmMemFlags.gen.cs b/sources/OpenCL/OpenCL/Enums/SvmMemFlags.gen.cs
new file mode 100644
index 0000000000..5c76703e77
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SvmMemFlags.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_svm_mem_flags")]
+[Flags]
+public enum SvmMemFlags : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_MEM_READ_WRITE")]
+ ReadWrite = 0x1,
+
+ [NativeName("CL_MEM_WRITE_ONLY")]
+ WriteOnly = 0x2,
+
+ [NativeName("CL_MEM_READ_ONLY")]
+ ReadOnly = 0x4,
+
+ [NativeName("CL_MEM_USE_HOST_PTR")]
+ UseHostPtr = 0x8,
+
+ [NativeName("CL_MEM_ALLOC_HOST_PTR")]
+ AllocHostPtr = 0x10,
+
+ [NativeName("CL_MEM_COPY_HOST_PTR")]
+ CopyHostPtr = 0x20,
+
+ [NativeName("CL_MEM_HOST_WRITE_ONLY")]
+ HostWriteOnly = 0x80,
+
+ [NativeName("CL_MEM_HOST_READ_ONLY")]
+ HostReadOnly = 0x100,
+
+ [NativeName("CL_MEM_HOST_NO_ACCESS")]
+ HostNoAccess = 0x200,
+
+ [NativeName("CL_MEM_SVM_FINE_GRAIN_BUFFER")]
+ SvmFineGrainBuffer = 0x400,
+
+ [NativeName("CL_MEM_SVM_ATOMICS")]
+ SvmAtomics = 0x800,
+
+ [NativeName("CL_MEM_KERNEL_READ_AND_WRITE")]
+ KernelReadAndWrite = 0x1000,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/SvmMemFlagsARM.gen.cs b/sources/OpenCL/OpenCL/Enums/SvmMemFlagsARM.gen.cs
new file mode 100644
index 0000000000..61019dcccd
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SvmMemFlagsARM.gen.cs
@@ -0,0 +1,23 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_svm_mem_flags_arm")]
+[Flags]
+public enum SvmMemFlagsARM : ulong
+{
+ None = 0x0,
+
+ [NativeName("CL_MEM_SVM_FINE_GRAIN_BUFFER_ARM")]
+ FineGrainBuffer = 0x400,
+
+ [NativeName("CL_MEM_SVM_ATOMICS_ARM")]
+ Atomics = 0x800,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/SvmPointerInfoKHR.gen.cs b/sources/OpenCL/OpenCL/Enums/SvmPointerInfoKHR.gen.cs
new file mode 100644
index 0000000000..904424331e
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/SvmPointerInfoKHR.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_svm_pointer_info_khr")]
+public enum SvmPointerInfoKHR : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/UnifiedSharedMemoryCapabilitiesINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/UnifiedSharedMemoryCapabilitiesINTEL.gen.cs
new file mode 100644
index 0000000000..6241ed2123
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/UnifiedSharedMemoryCapabilitiesINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_unified_shared_memory_capabilities_intel")]
+[Flags]
+public enum UnifiedSharedMemoryCapabilitiesINTEL : uint
+{
+ None = 0x0,
+
+ [NativeName("CL_UNIFIED_SHARED_MEMORY_ACCESS_INTEL")]
+ Access = 0x1,
+
+ [NativeName("CL_UNIFIED_SHARED_MEMORY_ATOMIC_ACCESS_INTEL")]
+ AtomicAccess = 0x2,
+
+ [NativeName("CL_UNIFIED_SHARED_MEMORY_CONCURRENT_ACCESS_INTEL")]
+ ConcurrentAccess = 0x4,
+
+ [NativeName("CL_UNIFIED_SHARED_MEMORY_CONCURRENT_ATOMIC_ACCESS_INTEL")]
+ ConcurrentAtomicAccess = 0x8,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/UnifiedSharedMemoryTypeINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/UnifiedSharedMemoryTypeINTEL.gen.cs
new file mode 100644
index 0000000000..bb8b263f19
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/UnifiedSharedMemoryTypeINTEL.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_unified_shared_memory_type_intel")]
+public enum UnifiedSharedMemoryTypeINTEL : uint
+{
+ [NativeName("CL_MEM_TYPE_UNKNOWN_INTEL")]
+ Unknown = 16790,
+
+ [NativeName("CL_MEM_TYPE_HOST_INTEL")]
+ Host = 16791,
+
+ [NativeName("CL_MEM_TYPE_DEVICE_INTEL")]
+ Device = 16792,
+
+ [NativeName("CL_MEM_TYPE_SHARED_INTEL")]
+ Shared = 16793,
+}
diff --git a/sources/OpenCL/OpenCL/Enums/VaApiDeviceSetINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/VaApiDeviceSetINTEL.gen.cs
new file mode 100644
index 0000000000..510b9f7e06
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/VaApiDeviceSetINTEL.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_va_api_device_set_intel")]
+public enum VaApiDeviceSetINTEL : uint { }
diff --git a/sources/OpenCL/OpenCL/Enums/VaApiDeviceSourceINTEL.gen.cs b/sources/OpenCL/OpenCL/Enums/VaApiDeviceSourceINTEL.gen.cs
new file mode 100644
index 0000000000..3eddcddc11
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Enums/VaApiDeviceSourceINTEL.gen.cs
@@ -0,0 +1,13 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_va_api_device_source_intel")]
+public enum VaApiDeviceSourceINTEL : uint { }
diff --git a/sources/OpenCL/OpenCL/Handles/AcceleratorHandleINTEL.gen.cs b/sources/OpenCL/OpenCL/Handles/AcceleratorHandleINTEL.gen.cs
new file mode 100644
index 0000000000..9ea846dde0
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Handles/AcceleratorHandleINTEL.gen.cs
@@ -0,0 +1,44 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("_cl_accelerator_intel")]
+public readonly unsafe partial struct AcceleratorHandleINTEL : IEquatable
+{
+ public readonly void* Handle;
+
+ public AcceleratorHandleINTEL(void* handle)
+ {
+ Handle = handle;
+ }
+
+ public bool Equals(AcceleratorHandleINTEL other) => Handle == other.Handle;
+
+ public override bool Equals(object? obj) =>
+ obj is AcceleratorHandleINTEL other && Equals(other);
+
+ public override int GetHashCode() => HashCode.Combine((nuint)Handle);
+
+ public static bool operator ==(AcceleratorHandleINTEL left, AcceleratorHandleINTEL right) =>
+ left.Equals(right);
+
+ public static bool operator !=(AcceleratorHandleINTEL left, AcceleratorHandleINTEL right) =>
+ !left.Equals(right);
+
+ public bool Equals(NullPtr _) => Handle is null;
+
+ public static bool operator ==(AcceleratorHandleINTEL left, NullPtr right) =>
+ left.Equals(right);
+
+ public static bool operator !=(AcceleratorHandleINTEL left, NullPtr right) =>
+ !left.Equals(right);
+
+ public static implicit operator AcceleratorHandleINTEL(NullPtr _) => default;
+}
diff --git a/sources/OpenCL/OpenCL/Handles/CommandQueueHandle.gen.cs b/sources/OpenCL/OpenCL/Handles/CommandQueueHandle.gen.cs
new file mode 100644
index 0000000000..c3c40c7d32
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Handles/CommandQueueHandle.gen.cs
@@ -0,0 +1,41 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_command_queue")]
+public readonly unsafe partial struct CommandQueueHandle : IEquatable
+{
+ public readonly void* Handle;
+
+ public CommandQueueHandle(void* handle)
+ {
+ Handle = handle;
+ }
+
+ public bool Equals(CommandQueueHandle other) => Handle == other.Handle;
+
+ public override bool Equals(object? obj) => obj is CommandQueueHandle other && Equals(other);
+
+ public override int GetHashCode() => HashCode.Combine((nuint)Handle);
+
+ public static bool operator ==(CommandQueueHandle left, CommandQueueHandle right) =>
+ left.Equals(right);
+
+ public static bool operator !=(CommandQueueHandle left, CommandQueueHandle right) =>
+ !left.Equals(right);
+
+ public bool Equals(NullPtr _) => Handle is null;
+
+ public static bool operator ==(CommandQueueHandle left, NullPtr right) => left.Equals(right);
+
+ public static bool operator !=(CommandQueueHandle left, NullPtr right) => !left.Equals(right);
+
+ public static implicit operator CommandQueueHandle(NullPtr _) => default;
+}
diff --git a/sources/OpenCL/OpenCL/Handles/ContextHandle.gen.cs b/sources/OpenCL/OpenCL/Handles/ContextHandle.gen.cs
new file mode 100644
index 0000000000..af1a66425e
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Handles/ContextHandle.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_context")]
+public readonly unsafe partial struct ContextHandle : IEquatable
+{
+ public readonly void* Handle;
+
+ public ContextHandle(void* handle)
+ {
+ Handle = handle;
+ }
+
+ public bool Equals(ContextHandle other) => Handle == other.Handle;
+
+ public override bool Equals(object? obj) => obj is ContextHandle other && Equals(other);
+
+ public override int GetHashCode() => HashCode.Combine((nuint)Handle);
+
+ public static bool operator ==(ContextHandle left, ContextHandle right) => left.Equals(right);
+
+ public static bool operator !=(ContextHandle left, ContextHandle right) => !left.Equals(right);
+
+ public bool Equals(NullPtr _) => Handle is null;
+
+ public static bool operator ==(ContextHandle left, NullPtr right) => left.Equals(right);
+
+ public static bool operator !=(ContextHandle left, NullPtr right) => !left.Equals(right);
+
+ public static implicit operator ContextHandle(NullPtr _) => default;
+}
diff --git a/sources/OpenCL/OpenCL/Handles/DeviceIdHandle.gen.cs b/sources/OpenCL/OpenCL/Handles/DeviceIdHandle.gen.cs
new file mode 100644
index 0000000000..853674f7fc
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Handles/DeviceIdHandle.gen.cs
@@ -0,0 +1,40 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_device_id")]
+public readonly unsafe partial struct DeviceIdHandle : IEquatable
+{
+ public readonly void* Handle;
+
+ public DeviceIdHandle(void* handle)
+ {
+ Handle = handle;
+ }
+
+ public bool Equals(DeviceIdHandle other) => Handle == other.Handle;
+
+ public override bool Equals(object? obj) => obj is DeviceIdHandle other && Equals(other);
+
+ public override int GetHashCode() => HashCode.Combine((nuint)Handle);
+
+ public static bool operator ==(DeviceIdHandle left, DeviceIdHandle right) => left.Equals(right);
+
+ public static bool operator !=(DeviceIdHandle left, DeviceIdHandle right) =>
+ !left.Equals(right);
+
+ public bool Equals(NullPtr _) => Handle is null;
+
+ public static bool operator ==(DeviceIdHandle left, NullPtr right) => left.Equals(right);
+
+ public static bool operator !=(DeviceIdHandle left, NullPtr right) => !left.Equals(right);
+
+ public static implicit operator DeviceIdHandle(NullPtr _) => default;
+}
diff --git a/sources/OpenCL/OpenCL/Handles/EventHandle.gen.cs b/sources/OpenCL/OpenCL/Handles/EventHandle.gen.cs
new file mode 100644
index 0000000000..db342b172f
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Handles/EventHandle.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_event")]
+public readonly unsafe partial struct EventHandle : IEquatable
+{
+ public readonly void* Handle;
+
+ public EventHandle(void* handle)
+ {
+ Handle = handle;
+ }
+
+ public bool Equals(EventHandle other) => Handle == other.Handle;
+
+ public override bool Equals(object? obj) => obj is EventHandle other && Equals(other);
+
+ public override int GetHashCode() => HashCode.Combine((nuint)Handle);
+
+ public static bool operator ==(EventHandle left, EventHandle right) => left.Equals(right);
+
+ public static bool operator !=(EventHandle left, EventHandle right) => !left.Equals(right);
+
+ public bool Equals(NullPtr _) => Handle is null;
+
+ public static bool operator ==(EventHandle left, NullPtr right) => left.Equals(right);
+
+ public static bool operator !=(EventHandle left, NullPtr right) => !left.Equals(right);
+
+ public static implicit operator EventHandle(NullPtr _) => default;
+}
diff --git a/sources/OpenCL/OpenCL/Handles/KernelHandle.gen.cs b/sources/OpenCL/OpenCL/Handles/KernelHandle.gen.cs
new file mode 100644
index 0000000000..b378db5b1f
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Handles/KernelHandle.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_kernel")]
+public readonly unsafe partial struct KernelHandle : IEquatable
+{
+ public readonly void* Handle;
+
+ public KernelHandle(void* handle)
+ {
+ Handle = handle;
+ }
+
+ public bool Equals(KernelHandle other) => Handle == other.Handle;
+
+ public override bool Equals(object? obj) => obj is KernelHandle other && Equals(other);
+
+ public override int GetHashCode() => HashCode.Combine((nuint)Handle);
+
+ public static bool operator ==(KernelHandle left, KernelHandle right) => left.Equals(right);
+
+ public static bool operator !=(KernelHandle left, KernelHandle right) => !left.Equals(right);
+
+ public bool Equals(NullPtr _) => Handle is null;
+
+ public static bool operator ==(KernelHandle left, NullPtr right) => left.Equals(right);
+
+ public static bool operator !=(KernelHandle left, NullPtr right) => !left.Equals(right);
+
+ public static implicit operator KernelHandle(NullPtr _) => default;
+}
diff --git a/sources/OpenCL/OpenCL/Handles/MemHandle.gen.cs b/sources/OpenCL/OpenCL/Handles/MemHandle.gen.cs
new file mode 100644
index 0000000000..ff8de95f18
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Handles/MemHandle.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_mem")]
+public readonly unsafe partial struct MemHandle : IEquatable
+{
+ public readonly void* Handle;
+
+ public MemHandle(void* handle)
+ {
+ Handle = handle;
+ }
+
+ public bool Equals(MemHandle other) => Handle == other.Handle;
+
+ public override bool Equals(object? obj) => obj is MemHandle other && Equals(other);
+
+ public override int GetHashCode() => HashCode.Combine((nuint)Handle);
+
+ public static bool operator ==(MemHandle left, MemHandle right) => left.Equals(right);
+
+ public static bool operator !=(MemHandle left, MemHandle right) => !left.Equals(right);
+
+ public bool Equals(NullPtr _) => Handle is null;
+
+ public static bool operator ==(MemHandle left, NullPtr right) => left.Equals(right);
+
+ public static bool operator !=(MemHandle left, NullPtr right) => !left.Equals(right);
+
+ public static implicit operator MemHandle(NullPtr _) => default;
+}
diff --git a/sources/OpenCL/OpenCL/Handles/PlatformIdHandle.gen.cs b/sources/OpenCL/OpenCL/Handles/PlatformIdHandle.gen.cs
new file mode 100644
index 0000000000..5a4d7cef87
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Handles/PlatformIdHandle.gen.cs
@@ -0,0 +1,41 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_platform_id")]
+public readonly unsafe partial struct PlatformIdHandle : IEquatable
+{
+ public readonly void* Handle;
+
+ public PlatformIdHandle(void* handle)
+ {
+ Handle = handle;
+ }
+
+ public bool Equals(PlatformIdHandle other) => Handle == other.Handle;
+
+ public override bool Equals(object? obj) => obj is PlatformIdHandle other && Equals(other);
+
+ public override int GetHashCode() => HashCode.Combine((nuint)Handle);
+
+ public static bool operator ==(PlatformIdHandle left, PlatformIdHandle right) =>
+ left.Equals(right);
+
+ public static bool operator !=(PlatformIdHandle left, PlatformIdHandle right) =>
+ !left.Equals(right);
+
+ public bool Equals(NullPtr _) => Handle is null;
+
+ public static bool operator ==(PlatformIdHandle left, NullPtr right) => left.Equals(right);
+
+ public static bool operator !=(PlatformIdHandle left, NullPtr right) => !left.Equals(right);
+
+ public static implicit operator PlatformIdHandle(NullPtr _) => default;
+}
diff --git a/sources/OpenCL/OpenCL/Handles/ProgramHandle.gen.cs b/sources/OpenCL/OpenCL/Handles/ProgramHandle.gen.cs
new file mode 100644
index 0000000000..6e136110ba
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Handles/ProgramHandle.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_program")]
+public readonly unsafe partial struct ProgramHandle : IEquatable
+{
+ public readonly void* Handle;
+
+ public ProgramHandle(void* handle)
+ {
+ Handle = handle;
+ }
+
+ public bool Equals(ProgramHandle other) => Handle == other.Handle;
+
+ public override bool Equals(object? obj) => obj is ProgramHandle other && Equals(other);
+
+ public override int GetHashCode() => HashCode.Combine((nuint)Handle);
+
+ public static bool operator ==(ProgramHandle left, ProgramHandle right) => left.Equals(right);
+
+ public static bool operator !=(ProgramHandle left, ProgramHandle right) => !left.Equals(right);
+
+ public bool Equals(NullPtr _) => Handle is null;
+
+ public static bool operator ==(ProgramHandle left, NullPtr right) => left.Equals(right);
+
+ public static bool operator !=(ProgramHandle left, NullPtr right) => !left.Equals(right);
+
+ public static implicit operator ProgramHandle(NullPtr _) => default;
+}
diff --git a/sources/OpenCL/OpenCL/Handles/SamplerHandle.gen.cs b/sources/OpenCL/OpenCL/Handles/SamplerHandle.gen.cs
new file mode 100644
index 0000000000..3ad61da800
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Handles/SamplerHandle.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.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("cl_sampler")]
+public readonly unsafe partial struct SamplerHandle : IEquatable
+{
+ public readonly void* Handle;
+
+ public SamplerHandle(void* handle)
+ {
+ Handle = handle;
+ }
+
+ public bool Equals(SamplerHandle other) => Handle == other.Handle;
+
+ public override bool Equals(object? obj) => obj is SamplerHandle other && Equals(other);
+
+ public override int GetHashCode() => HashCode.Combine((nuint)Handle);
+
+ public static bool operator ==(SamplerHandle left, SamplerHandle right) => left.Equals(right);
+
+ public static bool operator !=(SamplerHandle left, SamplerHandle right) => !left.Equals(right);
+
+ public bool Equals(NullPtr _) => Handle is null;
+
+ public static bool operator ==(SamplerHandle left, NullPtr right) => left.Equals(right);
+
+ public static bool operator !=(SamplerHandle left, NullPtr right) => !left.Equals(right);
+
+ public static implicit operator SamplerHandle(NullPtr _) => default;
+}
diff --git a/sources/OpenCL/OpenCL/Handles/SemaphoreHandleKHR.gen.cs b/sources/OpenCL/OpenCL/Handles/SemaphoreHandleKHR.gen.cs
new file mode 100644
index 0000000000..1690faf235
--- /dev/null
+++ b/sources/OpenCL/OpenCL/Handles/SemaphoreHandleKHR.gen.cs
@@ -0,0 +1,41 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+[NativeName("_cl_semaphore_khr")]
+public readonly unsafe partial struct SemaphoreHandleKHR : IEquatable
+{
+ public readonly void* Handle;
+
+ public SemaphoreHandleKHR(void* handle)
+ {
+ Handle = handle;
+ }
+
+ public bool Equals(SemaphoreHandleKHR other) => Handle == other.Handle;
+
+ public override bool Equals(object? obj) => obj is SemaphoreHandleKHR other && Equals(other);
+
+ public override int GetHashCode() => HashCode.Combine((nuint)Handle);
+
+ public static bool operator ==(SemaphoreHandleKHR left, SemaphoreHandleKHR right) =>
+ left.Equals(right);
+
+ public static bool operator !=(SemaphoreHandleKHR left, SemaphoreHandleKHR right) =>
+ !left.Equals(right);
+
+ public bool Equals(NullPtr _) => Handle is null;
+
+ public static bool operator ==(SemaphoreHandleKHR left, NullPtr right) => left.Equals(right);
+
+ public static bool operator !=(SemaphoreHandleKHR left, NullPtr right) => !left.Equals(right);
+
+ public static implicit operator SemaphoreHandleKHR(NullPtr _) => default;
+}
diff --git a/sources/OpenCL/OpenCL/OpenCL/BufferRegion.gen.cs b/sources/OpenCL/OpenCL/OpenCL/BufferRegion.gen.cs
new file mode 100644
index 0000000000..28d8d7434c
--- /dev/null
+++ b/sources/OpenCL/OpenCL/OpenCL/BufferRegion.gen.cs
@@ -0,0 +1,15 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+namespace Silk.NET.OpenCL;
+
+[NativeName("_cl_buffer_region")]
+public partial struct BufferRegion
+{
+ [NativeName("origin")]
+ public nuint Origin;
+
+ [NativeName("size")]
+ public nuint Size;
+}
diff --git a/sources/OpenCL/OpenCL/OpenCL/Cl.gen.cs b/sources/OpenCL/OpenCL/OpenCL/Cl.gen.cs
new file mode 100644
index 0000000000..34b8b549be
--- /dev/null
+++ b/sources/OpenCL/OpenCL/OpenCL/Cl.gen.cs
@@ -0,0 +1,46148 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// Ported from the OpenCL headers and corresponding dependencies.
+// Original source is Copyright 2013-2026 The Khronos Group Inc. Licensed under the Apache 2.0 license.
+using System;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+namespace Silk.NET.OpenCL;
+
+public unsafe partial class Cl : ICl, ICl.Static
+{
+ public partial class DllImport : ICl.Static
+ {
+ [NativeName("clBuildProgram")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clBuildProgram")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern int BuildProgram(
+ ProgramHandle program,
+ uint num_devices,
+ DeviceIdHandle* device_list,
+ sbyte* options,
+ delegate* unmanaged pfn_notify,
+ void* user_data
+ );
+
+ [NativeName("clBuildProgram")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clBuildProgram")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int BuildProgram(
+ ProgramHandle program,
+ uint num_devices,
+ Ref device_list,
+ Ref options,
+ delegate* unmanaged pfn_notify,
+ Ref user_data
+ )
+ {
+ fixed (void* __dsl_user_data = user_data)
+ fixed (sbyte* __dsl_options = options)
+ fixed (DeviceIdHandle* __dsl_device_list = device_list)
+ {
+ return (int)BuildProgram(
+ program,
+ num_devices,
+ __dsl_device_list,
+ __dsl_options,
+ pfn_notify,
+ __dsl_user_data
+ );
+ }
+ }
+
+ [NativeName("clCancelCommandsIMG")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCancelCommandsIMG")]
+ [SupportedApiProfile("opencl", ["cl_img_cancel_command"])]
+ public static extern int CancelCommandsIMG(
+ EventHandle* event_list,
+ nuint num_events_in_list
+ );
+
+ [NativeName("clCancelCommandsIMG")]
+ [SupportedApiProfile("opencl", ["cl_img_cancel_command"])]
+ [NativeFunction("opencl", EntryPoint = "clCancelCommandsIMG")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int CancelCommandsIMG(Ref event_list, nuint num_events_in_list)
+ {
+ fixed (EventHandle* __dsl_event_list = event_list)
+ {
+ return (int)CancelCommandsIMG(__dsl_event_list, num_events_in_list);
+ }
+ }
+
+ [NativeName("clCloneKernel")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCloneKernel")]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_1", "CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.1"
+ )]
+ public static extern KernelHandle CloneKernel(KernelHandle source_kernel, int* errcode_ret);
+
+ [NativeName("clCloneKernel")]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_1", "CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.1"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCloneKernel")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static KernelHandle CloneKernel(KernelHandle source_kernel, Ref errcode_ret)
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ {
+ return (KernelHandle)CloneKernel(source_kernel, __dsl_errcode_ret);
+ }
+ }
+
+ [NativeName("clCompileProgram")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCompileProgram")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ public static extern int CompileProgram(
+ ProgramHandle program,
+ uint num_devices,
+ DeviceIdHandle* device_list,
+ sbyte* options,
+ uint num_input_headers,
+ ProgramHandle* input_headers,
+ sbyte** header_include_names,
+ delegate* unmanaged pfn_notify,
+ void* user_data
+ );
+
+ [NativeName("clCompileProgram")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCompileProgram")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int CompileProgram(
+ ProgramHandle program,
+ uint num_devices,
+ Ref device_list,
+ Ref options,
+ uint num_input_headers,
+ Ref input_headers,
+ Ref2D header_include_names,
+ delegate* unmanaged pfn_notify,
+ Ref user_data
+ )
+ {
+ fixed (void* __dsl_user_data = user_data)
+ fixed (sbyte** __dsl_header_include_names = header_include_names)
+ fixed (ProgramHandle* __dsl_input_headers = input_headers)
+ fixed (sbyte* __dsl_options = options)
+ fixed (DeviceIdHandle* __dsl_device_list = device_list)
+ {
+ return (int)CompileProgram(
+ program,
+ num_devices,
+ __dsl_device_list,
+ __dsl_options,
+ num_input_headers,
+ __dsl_input_headers,
+ __dsl_header_include_names,
+ pfn_notify,
+ __dsl_user_data
+ );
+ }
+ }
+
+ [NativeName("clCreateAcceleratorINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateAcceleratorINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_accelerator"])]
+ public static extern AcceleratorHandleINTEL CreateAcceleratorINTEL(
+ ContextHandle context,
+ uint accelerator_type,
+ nuint descriptor_size,
+ void* descriptor,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateAcceleratorINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_accelerator"])]
+ [NativeFunction("opencl", EntryPoint = "clCreateAcceleratorINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static AcceleratorHandleINTEL CreateAcceleratorINTEL(
+ ContextHandle context,
+ uint accelerator_type,
+ nuint descriptor_size,
+ Ref descriptor,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_descriptor = descriptor)
+ {
+ return (AcceleratorHandleINTEL)CreateAcceleratorINTEL(
+ context,
+ accelerator_type,
+ descriptor_size,
+ __dsl_descriptor,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateBuffer")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateBuffer")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern MemHandle CreateBuffer(
+ ContextHandle context,
+ ulong flags,
+ nuint size,
+ void* host_ptr,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateBuffer")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateBuffer")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static MemHandle CreateBuffer(
+ ContextHandle context,
+ ulong flags,
+ nuint size,
+ Ref host_ptr,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_host_ptr = host_ptr)
+ {
+ return (MemHandle)CreateBuffer(
+ context,
+ flags,
+ size,
+ __dsl_host_ptr,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateBufferWithProperties")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateBufferWithProperties")]
+ [SupportedApiProfile("opencl", ["CL_VERSION_3_0", "CL_VERSION_3_1"], MinVersion = "3.0")]
+ public static extern MemHandle CreateBufferWithProperties(
+ ContextHandle context,
+ ulong* properties,
+ ulong flags,
+ nuint size,
+ void* host_ptr,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateBufferWithProperties")]
+ [SupportedApiProfile("opencl", ["CL_VERSION_3_0", "CL_VERSION_3_1"], MinVersion = "3.0")]
+ [NativeFunction("opencl", EntryPoint = "clCreateBufferWithProperties")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static MemHandle CreateBufferWithProperties(
+ ContextHandle context,
+ Ref properties,
+ ulong flags,
+ nuint size,
+ Ref host_ptr,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_host_ptr = host_ptr)
+ fixed (ulong* __dsl_properties = properties)
+ {
+ return (MemHandle)CreateBufferWithProperties(
+ context,
+ __dsl_properties,
+ flags,
+ size,
+ __dsl_host_ptr,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateBufferWithPropertiesINTEL")]
+ [DllImport(
+ "opencl",
+ ExactSpelling = true,
+ EntryPoint = "clCreateBufferWithPropertiesINTEL"
+ )]
+ [SupportedApiProfile("opencl", ["cl_intel_create_buffer_with_properties"])]
+ public static extern MemHandle CreateBufferWithPropertiesINTEL(
+ ContextHandle context,
+ ulong* properties,
+ ulong flags,
+ nuint size,
+ void* host_ptr,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateBufferWithPropertiesINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_create_buffer_with_properties"])]
+ [NativeFunction("opencl", EntryPoint = "clCreateBufferWithPropertiesINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static MemHandle CreateBufferWithPropertiesINTEL(
+ ContextHandle context,
+ Ref properties,
+ ulong flags,
+ nuint size,
+ Ref host_ptr,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_host_ptr = host_ptr)
+ fixed (ulong* __dsl_properties = properties)
+ {
+ return (MemHandle)CreateBufferWithPropertiesINTEL(
+ context,
+ __dsl_properties,
+ flags,
+ size,
+ __dsl_host_ptr,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateCommandQueue")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateCommandQueue")]
+ [Obsolete]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern CommandQueueHandle CreateCommandQueue(
+ ContextHandle context,
+ DeviceIdHandle device,
+ ulong properties,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateCommandQueue")]
+ [Obsolete]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateCommandQueue")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static CommandQueueHandle CreateCommandQueue(
+ ContextHandle context,
+ DeviceIdHandle device,
+ ulong properties,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ {
+ return (CommandQueueHandle)CreateCommandQueue(
+ context,
+ device,
+ properties,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateCommandQueueWithProperties")]
+ [DllImport(
+ "opencl",
+ ExactSpelling = true,
+ EntryPoint = "clCreateCommandQueueWithProperties"
+ )]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "2.0"
+ )]
+ public static extern CommandQueueHandle CreateCommandQueueWithProperties(
+ ContextHandle context,
+ DeviceIdHandle device,
+ ulong* properties,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateCommandQueueWithProperties")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "2.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateCommandQueueWithProperties")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static CommandQueueHandle CreateCommandQueueWithProperties(
+ ContextHandle context,
+ DeviceIdHandle device,
+ Ref properties,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (ulong* __dsl_properties = properties)
+ {
+ return (CommandQueueHandle)CreateCommandQueueWithProperties(
+ context,
+ device,
+ __dsl_properties,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateCommandQueueWithPropertiesKHR")]
+ [DllImport(
+ "opencl",
+ ExactSpelling = true,
+ EntryPoint = "clCreateCommandQueueWithPropertiesKHR"
+ )]
+ [SupportedApiProfile("opencl", ["cl_khr_create_command_queue"])]
+ public static extern CommandQueueHandle CreateCommandQueueWithPropertiesKHR(
+ ContextHandle context,
+ DeviceIdHandle device,
+ ulong* properties,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateCommandQueueWithPropertiesKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_create_command_queue"])]
+ [NativeFunction("opencl", EntryPoint = "clCreateCommandQueueWithPropertiesKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static CommandQueueHandle CreateCommandQueueWithPropertiesKHR(
+ ContextHandle context,
+ DeviceIdHandle device,
+ Ref properties,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (ulong* __dsl_properties = properties)
+ {
+ return (CommandQueueHandle)CreateCommandQueueWithPropertiesKHR(
+ context,
+ device,
+ __dsl_properties,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateContext")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateContext")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern ContextHandle CreateContext(
+ nint* properties,
+ uint num_devices,
+ DeviceIdHandle* devices,
+ delegate* unmanaged pfn_notify,
+ void* user_data,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateContext")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateContext")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static ContextHandle CreateContext(
+ Ref properties,
+ uint num_devices,
+ Ref devices,
+ delegate* unmanaged pfn_notify,
+ Ref user_data,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_user_data = user_data)
+ fixed (DeviceIdHandle* __dsl_devices = devices)
+ fixed (nint* __dsl_properties = properties)
+ {
+ return (ContextHandle)CreateContext(
+ __dsl_properties,
+ num_devices,
+ __dsl_devices,
+ pfn_notify,
+ __dsl_user_data,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateContextFromType")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateContextFromType")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern ContextHandle CreateContextFromType(
+ nint* properties,
+ ulong device_type,
+ delegate* unmanaged pfn_notify,
+ void* user_data,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateContextFromType")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateContextFromType")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static ContextHandle CreateContextFromType(
+ Ref properties,
+ ulong device_type,
+ delegate* unmanaged pfn_notify,
+ Ref user_data,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_user_data = user_data)
+ fixed (nint* __dsl_properties = properties)
+ {
+ return (ContextHandle)CreateContextFromType(
+ __dsl_properties,
+ device_type,
+ pfn_notify,
+ __dsl_user_data,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateImage")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateImage")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ public static extern MemHandle CreateImage(
+ ContextHandle context,
+ ulong flags,
+ ImageFormat* image_format,
+ ImageDesc* image_desc,
+ void* host_ptr,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateImage")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateImage")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static MemHandle CreateImage(
+ ContextHandle context,
+ ulong flags,
+ Ref image_format,
+ Ref image_desc,
+ Ref host_ptr,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_host_ptr = host_ptr)
+ fixed (ImageDesc* __dsl_image_desc = image_desc)
+ fixed (ImageFormat* __dsl_image_format = image_format)
+ {
+ return (MemHandle)CreateImage(
+ context,
+ flags,
+ __dsl_image_format,
+ __dsl_image_desc,
+ __dsl_host_ptr,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateImage2D")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateImage2D")]
+ [Obsolete]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern MemHandle CreateImage2D(
+ ContextHandle context,
+ ulong flags,
+ ImageFormat* image_format,
+ nuint image_width,
+ nuint image_height,
+ nuint image_row_pitch,
+ void* host_ptr,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateImage2D")]
+ [Obsolete]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateImage2D")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static MemHandle CreateImage2D(
+ ContextHandle context,
+ ulong flags,
+ Ref image_format,
+ nuint image_width,
+ nuint image_height,
+ nuint image_row_pitch,
+ Ref host_ptr,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_host_ptr = host_ptr)
+ fixed (ImageFormat* __dsl_image_format = image_format)
+ {
+ return (MemHandle)CreateImage2D(
+ context,
+ flags,
+ __dsl_image_format,
+ image_width,
+ image_height,
+ image_row_pitch,
+ __dsl_host_ptr,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateImage3D")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateImage3D")]
+ [Obsolete]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern MemHandle CreateImage3D(
+ ContextHandle context,
+ ulong flags,
+ ImageFormat* image_format,
+ nuint image_width,
+ nuint image_height,
+ nuint image_depth,
+ nuint image_row_pitch,
+ nuint image_slice_pitch,
+ void* host_ptr,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateImage3D")]
+ [Obsolete]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateImage3D")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static MemHandle CreateImage3D(
+ ContextHandle context,
+ ulong flags,
+ Ref image_format,
+ nuint image_width,
+ nuint image_height,
+ nuint image_depth,
+ nuint image_row_pitch,
+ nuint image_slice_pitch,
+ Ref host_ptr,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_host_ptr = host_ptr)
+ fixed (ImageFormat* __dsl_image_format = image_format)
+ {
+ return (MemHandle)CreateImage3D(
+ context,
+ flags,
+ __dsl_image_format,
+ image_width,
+ image_height,
+ image_depth,
+ image_row_pitch,
+ image_slice_pitch,
+ __dsl_host_ptr,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateImageWithProperties")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateImageWithProperties")]
+ [SupportedApiProfile("opencl", ["CL_VERSION_3_0", "CL_VERSION_3_1"], MinVersion = "3.0")]
+ public static extern MemHandle CreateImageWithProperties(
+ ContextHandle context,
+ ulong* properties,
+ ulong flags,
+ ImageFormat* image_format,
+ ImageDesc* image_desc,
+ void* host_ptr,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateImageWithProperties")]
+ [SupportedApiProfile("opencl", ["CL_VERSION_3_0", "CL_VERSION_3_1"], MinVersion = "3.0")]
+ [NativeFunction("opencl", EntryPoint = "clCreateImageWithProperties")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static MemHandle CreateImageWithProperties(
+ ContextHandle context,
+ Ref properties,
+ ulong flags,
+ Ref image_format,
+ Ref image_desc,
+ Ref host_ptr,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_host_ptr = host_ptr)
+ fixed (ImageDesc* __dsl_image_desc = image_desc)
+ fixed (ImageFormat* __dsl_image_format = image_format)
+ fixed (ulong* __dsl_properties = properties)
+ {
+ return (MemHandle)CreateImageWithProperties(
+ context,
+ __dsl_properties,
+ flags,
+ __dsl_image_format,
+ __dsl_image_desc,
+ __dsl_host_ptr,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateKernel")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateKernel")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern KernelHandle CreateKernel(
+ ProgramHandle program,
+ sbyte* kernel_name,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateKernel")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateKernel")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static KernelHandle CreateKernel(
+ ProgramHandle program,
+ Ref kernel_name,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (sbyte* __dsl_kernel_name = kernel_name)
+ {
+ return (KernelHandle)CreateKernel(program, __dsl_kernel_name, __dsl_errcode_ret);
+ }
+ }
+
+ [NativeName("clCreateKernelsInProgram")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateKernelsInProgram")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern int CreateKernelsInProgram(
+ ProgramHandle program,
+ uint num_kernels,
+ KernelHandle* kernels,
+ uint* num_kernels_ret
+ );
+
+ [NativeName("clCreateKernelsInProgram")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateKernelsInProgram")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int CreateKernelsInProgram(
+ ProgramHandle program,
+ uint num_kernels,
+ Ref kernels,
+ Ref num_kernels_ret
+ )
+ {
+ fixed (uint* __dsl_num_kernels_ret = num_kernels_ret)
+ fixed (KernelHandle* __dsl_kernels = kernels)
+ {
+ return (int)CreateKernelsInProgram(
+ program,
+ num_kernels,
+ __dsl_kernels,
+ __dsl_num_kernels_ret
+ );
+ }
+ }
+
+ [NativeName("clCreatePipe")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreatePipe")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "2.0"
+ )]
+ public static extern MemHandle CreatePipe(
+ ContextHandle context,
+ ulong flags,
+ uint pipe_packet_size,
+ uint pipe_max_packets,
+ nint* properties,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreatePipe")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "2.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreatePipe")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static MemHandle CreatePipe(
+ ContextHandle context,
+ ulong flags,
+ uint pipe_packet_size,
+ uint pipe_max_packets,
+ Ref properties,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (nint* __dsl_properties = properties)
+ {
+ return (MemHandle)CreatePipe(
+ context,
+ flags,
+ pipe_packet_size,
+ pipe_max_packets,
+ __dsl_properties,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateProgramWithBinary")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateProgramWithBinary")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern ProgramHandle CreateProgramWithBinary(
+ ContextHandle context,
+ uint num_devices,
+ DeviceIdHandle* device_list,
+ nuint* lengths,
+ byte** binaries,
+ int* binary_status,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateProgramWithBinary")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateProgramWithBinary")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static ProgramHandle CreateProgramWithBinary(
+ ContextHandle context,
+ uint num_devices,
+ Ref device_list,
+ Ref lengths,
+ Ref2D binaries,
+ Ref binary_status,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (int* __dsl_binary_status = binary_status)
+ fixed (byte** __dsl_binaries = binaries)
+ fixed (nuint* __dsl_lengths = lengths)
+ fixed (DeviceIdHandle* __dsl_device_list = device_list)
+ {
+ return (ProgramHandle)CreateProgramWithBinary(
+ context,
+ num_devices,
+ __dsl_device_list,
+ __dsl_lengths,
+ __dsl_binaries,
+ __dsl_binary_status,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateProgramWithBuiltInKernels")]
+ [DllImport(
+ "opencl",
+ ExactSpelling = true,
+ EntryPoint = "clCreateProgramWithBuiltInKernels"
+ )]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ public static extern ProgramHandle CreateProgramWithBuiltInKernels(
+ ContextHandle context,
+ uint num_devices,
+ DeviceIdHandle* device_list,
+ sbyte* kernel_names,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateProgramWithBuiltInKernels")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateProgramWithBuiltInKernels")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static ProgramHandle CreateProgramWithBuiltInKernels(
+ ContextHandle context,
+ uint num_devices,
+ Ref device_list,
+ Ref kernel_names,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (sbyte* __dsl_kernel_names = kernel_names)
+ fixed (DeviceIdHandle* __dsl_device_list = device_list)
+ {
+ return (ProgramHandle)CreateProgramWithBuiltInKernels(
+ context,
+ num_devices,
+ __dsl_device_list,
+ __dsl_kernel_names,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateProgramWithIL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateProgramWithIL")]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_1", "CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.1"
+ )]
+ public static extern ProgramHandle CreateProgramWithIL(
+ ContextHandle context,
+ void* il,
+ nuint length,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateProgramWithIL")]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_1", "CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.1"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateProgramWithIL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static ProgramHandle CreateProgramWithIL(
+ ContextHandle context,
+ Ref il,
+ nuint length,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_il = il)
+ {
+ return (ProgramHandle)CreateProgramWithIL(
+ context,
+ __dsl_il,
+ length,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateProgramWithILKHR")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateProgramWithILKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_il_program"])]
+ public static extern ProgramHandle CreateProgramWithILKHR(
+ ContextHandle context,
+ void* il,
+ nuint length,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateProgramWithILKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_il_program"])]
+ [NativeFunction("opencl", EntryPoint = "clCreateProgramWithILKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static ProgramHandle CreateProgramWithILKHR(
+ ContextHandle context,
+ Ref il,
+ nuint length,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_il = il)
+ {
+ return (ProgramHandle)CreateProgramWithILKHR(
+ context,
+ __dsl_il,
+ length,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateProgramWithSource")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateProgramWithSource")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern ProgramHandle CreateProgramWithSource(
+ ContextHandle context,
+ uint count,
+ sbyte** strings,
+ nuint* lengths,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateProgramWithSource")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateProgramWithSource")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static ProgramHandle CreateProgramWithSource(
+ ContextHandle context,
+ uint count,
+ Ref2D strings,
+ Ref lengths,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (nuint* __dsl_lengths = lengths)
+ fixed (sbyte** __dsl_strings = strings)
+ {
+ return (ProgramHandle)CreateProgramWithSource(
+ context,
+ count,
+ __dsl_strings,
+ __dsl_lengths,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateSampler")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateSampler")]
+ [Obsolete]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern SamplerHandle CreateSampler(
+ ContextHandle context,
+ uint normalized_coords,
+ uint addressing_mode,
+ uint filter_mode,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateSampler")]
+ [Obsolete]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateSampler")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static SamplerHandle CreateSampler(
+ ContextHandle context,
+ MaybeBool normalized_coords,
+ uint addressing_mode,
+ uint filter_mode,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ {
+ return (SamplerHandle)CreateSampler(
+ context,
+ (uint)normalized_coords,
+ addressing_mode,
+ filter_mode,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateSamplerWithProperties")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateSamplerWithProperties")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "2.0"
+ )]
+ public static extern SamplerHandle CreateSamplerWithProperties(
+ ContextHandle context,
+ ulong* sampler_properties,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateSamplerWithProperties")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "2.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateSamplerWithProperties")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static SamplerHandle CreateSamplerWithProperties(
+ ContextHandle context,
+ Ref sampler_properties,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (ulong* __dsl_sampler_properties = sampler_properties)
+ {
+ return (SamplerHandle)CreateSamplerWithProperties(
+ context,
+ __dsl_sampler_properties,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateSemaphoreWithPropertiesKHR")]
+ [DllImport(
+ "opencl",
+ ExactSpelling = true,
+ EntryPoint = "clCreateSemaphoreWithPropertiesKHR"
+ )]
+ [SupportedApiProfile("opencl", ["cl_khr_semaphore"], ImpliesSets = ["CL_VERSION_1_2"])]
+ public static extern SemaphoreHandleKHR CreateSemaphoreWithPropertiesKHR(
+ ContextHandle context,
+ ulong* sema_props,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateSemaphoreWithPropertiesKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_semaphore"], ImpliesSets = ["CL_VERSION_1_2"])]
+ [NativeFunction("opencl", EntryPoint = "clCreateSemaphoreWithPropertiesKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static SemaphoreHandleKHR CreateSemaphoreWithPropertiesKHR(
+ ContextHandle context,
+ Ref sema_props,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (ulong* __dsl_sema_props = sema_props)
+ {
+ return (SemaphoreHandleKHR)CreateSemaphoreWithPropertiesKHR(
+ context,
+ __dsl_sema_props,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateSubBuffer")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateSubBuffer")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.1"
+ )]
+ public static extern MemHandle CreateSubBuffer(
+ MemHandle buffer,
+ ulong flags,
+ uint buffer_create_type,
+ void* buffer_create_info,
+ int* errcode_ret
+ );
+
+ [NativeName("clCreateSubBuffer")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.1"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateSubBuffer")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static MemHandle CreateSubBuffer(
+ MemHandle buffer,
+ ulong flags,
+ uint buffer_create_type,
+ Ref buffer_create_info,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_buffer_create_info = buffer_create_info)
+ {
+ return (MemHandle)CreateSubBuffer(
+ buffer,
+ flags,
+ buffer_create_type,
+ __dsl_buffer_create_info,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateSubDevices")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateSubDevices")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ public static extern int CreateSubDevices(
+ DeviceIdHandle in_device,
+ nint* properties,
+ uint num_devices,
+ DeviceIdHandle* out_devices,
+ uint* num_devices_ret
+ );
+
+ [NativeName("clCreateSubDevices")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateSubDevices")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int CreateSubDevices(
+ DeviceIdHandle in_device,
+ Ref properties,
+ uint num_devices,
+ Ref out_devices,
+ Ref num_devices_ret
+ )
+ {
+ fixed (uint* __dsl_num_devices_ret = num_devices_ret)
+ fixed (DeviceIdHandle* __dsl_out_devices = out_devices)
+ fixed (nint* __dsl_properties = properties)
+ {
+ return (int)CreateSubDevices(
+ in_device,
+ __dsl_properties,
+ num_devices,
+ __dsl_out_devices,
+ __dsl_num_devices_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateSubDevicesEXT")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateSubDevicesEXT")]
+ [SupportedApiProfile("opencl", ["cl_ext_device_fission"])]
+ public static extern int CreateSubDevicesEXT(
+ DeviceIdHandle in_device,
+ ulong* properties,
+ uint num_entries,
+ DeviceIdHandle* out_devices,
+ uint* num_devices
+ );
+
+ [NativeName("clCreateSubDevicesEXT")]
+ [SupportedApiProfile("opencl", ["cl_ext_device_fission"])]
+ [NativeFunction("opencl", EntryPoint = "clCreateSubDevicesEXT")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int CreateSubDevicesEXT(
+ DeviceIdHandle in_device,
+ Ref properties,
+ uint num_entries,
+ Ref out_devices,
+ Ref num_devices
+ )
+ {
+ fixed (uint* __dsl_num_devices = num_devices)
+ fixed (DeviceIdHandle* __dsl_out_devices = out_devices)
+ fixed (ulong* __dsl_properties = properties)
+ {
+ return (int)CreateSubDevicesEXT(
+ in_device,
+ __dsl_properties,
+ num_entries,
+ __dsl_out_devices,
+ __dsl_num_devices
+ );
+ }
+ }
+
+ [NativeName("clCreateUserEvent")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateUserEvent")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.1"
+ )]
+ public static extern EventHandle CreateUserEvent(ContextHandle context, int* errcode_ret);
+
+ [NativeName("clCreateUserEvent")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.1"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clCreateUserEvent")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static EventHandle CreateUserEvent(ContextHandle context, Ref errcode_ret)
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ {
+ return (EventHandle)CreateUserEvent(context, __dsl_errcode_ret);
+ }
+ }
+
+ [NativeName("clDeviceMemAllocINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clDeviceMemAllocINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ public static extern void* DeviceMemAllocINTEL(
+ ContextHandle context,
+ DeviceIdHandle device,
+ ulong* properties,
+ nuint size,
+ uint alignment,
+ int* errcode_ret
+ );
+
+ [NativeName("clDeviceMemAllocINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clDeviceMemAllocINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static Ptr DeviceMemAllocINTEL(
+ ContextHandle context,
+ DeviceIdHandle device,
+ Ref properties,
+ nuint size,
+ uint alignment,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (ulong* __dsl_properties = properties)
+ {
+ return (void*)DeviceMemAllocINTEL(
+ context,
+ device,
+ __dsl_properties,
+ size,
+ alignment,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clEnqueueAcquireExternalMemObjectsKHR")]
+ [DllImport(
+ "opencl",
+ ExactSpelling = true,
+ EntryPoint = "clEnqueueAcquireExternalMemObjectsKHR"
+ )]
+ [SupportedApiProfile(
+ "opencl",
+ ["cl_khr_external_memory"],
+ ImpliesSets = ["CL_VERSION_3_0"]
+ )]
+ public static extern int EnqueueAcquireExternalMemObjectsKHR(
+ CommandQueueHandle command_queue,
+ uint num_mem_objects,
+ MemHandle* mem_objects,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueAcquireExternalMemObjectsKHR")]
+ [SupportedApiProfile(
+ "opencl",
+ ["cl_khr_external_memory"],
+ ImpliesSets = ["CL_VERSION_3_0"]
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueAcquireExternalMemObjectsKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueAcquireExternalMemObjectsKHR(
+ CommandQueueHandle command_queue,
+ uint num_mem_objects,
+ Ref mem_objects,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (MemHandle* __dsl_mem_objects = mem_objects)
+ {
+ return (int)EnqueueAcquireExternalMemObjectsKHR(
+ command_queue,
+ num_mem_objects,
+ __dsl_mem_objects,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueAcquireGrallocObjectsIMG")]
+ [DllImport(
+ "opencl",
+ ExactSpelling = true,
+ EntryPoint = "clEnqueueAcquireGrallocObjectsIMG"
+ )]
+ [SupportedApiProfile("opencl", ["cl_img_use_gralloc_ptr"])]
+ public static extern int EnqueueAcquireGrallocObjectsIMG(
+ CommandQueueHandle command_queue,
+ uint num_objects,
+ MemHandle* mem_objects,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueAcquireGrallocObjectsIMG")]
+ [SupportedApiProfile("opencl", ["cl_img_use_gralloc_ptr"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueAcquireGrallocObjectsIMG")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueAcquireGrallocObjectsIMG(
+ CommandQueueHandle command_queue,
+ uint num_objects,
+ Ref mem_objects,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (MemHandle* __dsl_mem_objects = mem_objects)
+ {
+ return (int)EnqueueAcquireGrallocObjectsIMG(
+ command_queue,
+ num_objects,
+ __dsl_mem_objects,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueBarrier")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueBarrier")]
+ [Obsolete]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern int EnqueueBarrier(CommandQueueHandle command_queue);
+
+ [NativeName("clEnqueueBarrierWithWaitList")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueBarrierWithWaitList")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ public static extern int EnqueueBarrierWithWaitList(
+ CommandQueueHandle command_queue,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueBarrierWithWaitList")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueBarrierWithWaitList")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueBarrierWithWaitList(
+ CommandQueueHandle command_queue,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ {
+ return (int)EnqueueBarrierWithWaitList(
+ command_queue,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueCopyBuffer")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueCopyBuffer")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern int EnqueueCopyBuffer(
+ CommandQueueHandle command_queue,
+ MemHandle src_buffer,
+ MemHandle dst_buffer,
+ nuint src_offset,
+ nuint dst_offset,
+ nuint size,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueCopyBuffer")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueCopyBuffer")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueCopyBuffer(
+ CommandQueueHandle command_queue,
+ MemHandle src_buffer,
+ MemHandle dst_buffer,
+ nuint src_offset,
+ nuint dst_offset,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ {
+ return (int)EnqueueCopyBuffer(
+ command_queue,
+ src_buffer,
+ dst_buffer,
+ src_offset,
+ dst_offset,
+ size,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueCopyBufferRect")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueCopyBufferRect")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.1"
+ )]
+ public static extern int EnqueueCopyBufferRect(
+ CommandQueueHandle command_queue,
+ MemHandle src_buffer,
+ MemHandle dst_buffer,
+ nuint* src_origin,
+ nuint* dst_origin,
+ nuint* region,
+ nuint src_row_pitch,
+ nuint src_slice_pitch,
+ nuint dst_row_pitch,
+ nuint dst_slice_pitch,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueCopyBufferRect")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.1"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueCopyBufferRect")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueCopyBufferRect(
+ CommandQueueHandle command_queue,
+ MemHandle src_buffer,
+ MemHandle dst_buffer,
+ Ref src_origin,
+ Ref dst_origin,
+ Ref region,
+ nuint src_row_pitch,
+ nuint src_slice_pitch,
+ nuint dst_row_pitch,
+ nuint dst_slice_pitch,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (nuint* __dsl_region = region)
+ fixed (nuint* __dsl_dst_origin = dst_origin)
+ fixed (nuint* __dsl_src_origin = src_origin)
+ {
+ return (int)EnqueueCopyBufferRect(
+ command_queue,
+ src_buffer,
+ dst_buffer,
+ __dsl_src_origin,
+ __dsl_dst_origin,
+ __dsl_region,
+ src_row_pitch,
+ src_slice_pitch,
+ dst_row_pitch,
+ dst_slice_pitch,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueCopyBufferToImage")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueCopyBufferToImage")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern int EnqueueCopyBufferToImage(
+ CommandQueueHandle command_queue,
+ MemHandle src_buffer,
+ MemHandle dst_image,
+ nuint src_offset,
+ nuint* dst_origin,
+ nuint* region,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueCopyBufferToImage")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueCopyBufferToImage")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueCopyBufferToImage(
+ CommandQueueHandle command_queue,
+ MemHandle src_buffer,
+ MemHandle dst_image,
+ nuint src_offset,
+ Ref dst_origin,
+ Ref region,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (nuint* __dsl_region = region)
+ fixed (nuint* __dsl_dst_origin = dst_origin)
+ {
+ return (int)EnqueueCopyBufferToImage(
+ command_queue,
+ src_buffer,
+ dst_image,
+ src_offset,
+ __dsl_dst_origin,
+ __dsl_region,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueCopyImage")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueCopyImage")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern int EnqueueCopyImage(
+ CommandQueueHandle command_queue,
+ MemHandle src_image,
+ MemHandle dst_image,
+ nuint* src_origin,
+ nuint* dst_origin,
+ nuint* region,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueCopyImage")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueCopyImage")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueCopyImage(
+ CommandQueueHandle command_queue,
+ MemHandle src_image,
+ MemHandle dst_image,
+ Ref src_origin,
+ Ref dst_origin,
+ Ref region,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (nuint* __dsl_region = region)
+ fixed (nuint* __dsl_dst_origin = dst_origin)
+ fixed (nuint* __dsl_src_origin = src_origin)
+ {
+ return (int)EnqueueCopyImage(
+ command_queue,
+ src_image,
+ dst_image,
+ __dsl_src_origin,
+ __dsl_dst_origin,
+ __dsl_region,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueCopyImageToBuffer")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueCopyImageToBuffer")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern int EnqueueCopyImageToBuffer(
+ CommandQueueHandle command_queue,
+ MemHandle src_image,
+ MemHandle dst_buffer,
+ nuint* src_origin,
+ nuint* region,
+ nuint dst_offset,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueCopyImageToBuffer")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueCopyImageToBuffer")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueCopyImageToBuffer(
+ CommandQueueHandle command_queue,
+ MemHandle src_image,
+ MemHandle dst_buffer,
+ Ref src_origin,
+ Ref region,
+ nuint dst_offset,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (nuint* __dsl_region = region)
+ fixed (nuint* __dsl_src_origin = src_origin)
+ {
+ return (int)EnqueueCopyImageToBuffer(
+ command_queue,
+ src_image,
+ dst_buffer,
+ __dsl_src_origin,
+ __dsl_region,
+ dst_offset,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueFillBuffer")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueFillBuffer")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ public static extern int EnqueueFillBuffer(
+ CommandQueueHandle command_queue,
+ MemHandle buffer,
+ void* pattern,
+ nuint pattern_size,
+ nuint offset,
+ nuint size,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueFillBuffer")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueFillBuffer")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueFillBuffer(
+ CommandQueueHandle command_queue,
+ MemHandle buffer,
+ Ref pattern,
+ nuint pattern_size,
+ nuint offset,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_pattern = pattern)
+ {
+ return (int)EnqueueFillBuffer(
+ command_queue,
+ buffer,
+ __dsl_pattern,
+ pattern_size,
+ offset,
+ size,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueFillImage")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueFillImage")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ public static extern int EnqueueFillImage(
+ CommandQueueHandle command_queue,
+ MemHandle image,
+ void* fill_color,
+ nuint* origin,
+ nuint* region,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueFillImage")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueFillImage")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueFillImage(
+ CommandQueueHandle command_queue,
+ MemHandle image,
+ Ref fill_color,
+ Ref origin,
+ Ref region,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (nuint* __dsl_region = region)
+ fixed (nuint* __dsl_origin = origin)
+ fixed (void* __dsl_fill_color = fill_color)
+ {
+ return (int)EnqueueFillImage(
+ command_queue,
+ image,
+ __dsl_fill_color,
+ __dsl_origin,
+ __dsl_region,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueGenerateMipmapIMG")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueGenerateMipmapIMG")]
+ [SupportedApiProfile("opencl", ["cl_img_generate_mipmap"])]
+ public static extern int EnqueueGenerateMipmapIMG(
+ CommandQueueHandle command_queue,
+ MemHandle src_image,
+ MemHandle dst_image,
+ uint mipmap_filter_mode,
+ nuint* array_region,
+ nuint* mip_region,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueGenerateMipmapIMG")]
+ [SupportedApiProfile("opencl", ["cl_img_generate_mipmap"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueGenerateMipmapIMG")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueGenerateMipmapIMG(
+ CommandQueueHandle command_queue,
+ MemHandle src_image,
+ MemHandle dst_image,
+ uint mipmap_filter_mode,
+ Ref array_region,
+ Ref mip_region,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (nuint* __dsl_mip_region = mip_region)
+ fixed (nuint* __dsl_array_region = array_region)
+ {
+ return (int)EnqueueGenerateMipmapIMG(
+ command_queue,
+ src_image,
+ dst_image,
+ mipmap_filter_mode,
+ __dsl_array_region,
+ __dsl_mip_region,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueMapBuffer")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueMapBuffer")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern void* EnqueueMapBuffer(
+ CommandQueueHandle command_queue,
+ MemHandle buffer,
+ uint blocking_map,
+ ulong map_flags,
+ nuint offset,
+ nuint size,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event,
+ int* errcode_ret
+ );
+
+ [NativeName("clEnqueueMapBuffer")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMapBuffer")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static Ptr EnqueueMapBuffer(
+ CommandQueueHandle command_queue,
+ MemHandle buffer,
+ MaybeBool blocking_map,
+ ulong map_flags,
+ nuint offset,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ {
+ return (void*)EnqueueMapBuffer(
+ command_queue,
+ buffer,
+ (uint)blocking_map,
+ map_flags,
+ offset,
+ size,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clEnqueueMapImage")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueMapImage")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern void* EnqueueMapImage(
+ CommandQueueHandle command_queue,
+ MemHandle image,
+ uint blocking_map,
+ ulong map_flags,
+ nuint* origin,
+ nuint* region,
+ nuint* image_row_pitch,
+ nuint* image_slice_pitch,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event,
+ int* errcode_ret
+ );
+
+ [NativeName("clEnqueueMapImage")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMapImage")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static Ptr EnqueueMapImage(
+ CommandQueueHandle command_queue,
+ MemHandle image,
+ MaybeBool blocking_map,
+ ulong map_flags,
+ Ref origin,
+ Ref region,
+ Ref image_row_pitch,
+ Ref image_slice_pitch,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (nuint* __dsl_image_slice_pitch = image_slice_pitch)
+ fixed (nuint* __dsl_image_row_pitch = image_row_pitch)
+ fixed (nuint* __dsl_region = region)
+ fixed (nuint* __dsl_origin = origin)
+ {
+ return (void*)EnqueueMapImage(
+ command_queue,
+ image,
+ (uint)blocking_map,
+ map_flags,
+ __dsl_origin,
+ __dsl_region,
+ __dsl_image_row_pitch,
+ __dsl_image_slice_pitch,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clEnqueueMarker")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueMarker")]
+ [Obsolete]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern int EnqueueMarker(
+ CommandQueueHandle command_queue,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueMarker")]
+ [Obsolete]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMarker")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueMarker(CommandQueueHandle command_queue, Ref @event)
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ {
+ return (int)EnqueueMarker(command_queue, __dsl_event);
+ }
+ }
+
+ [NativeName("clEnqueueMarkerWithWaitList")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueMarkerWithWaitList")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ public static extern int EnqueueMarkerWithWaitList(
+ CommandQueueHandle command_queue,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueMarkerWithWaitList")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMarkerWithWaitList")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueMarkerWithWaitList(
+ CommandQueueHandle command_queue,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ {
+ return (int)EnqueueMarkerWithWaitList(
+ command_queue,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueMemAdviseINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueMemAdviseINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ public static extern int EnqueueMemAdviseINTEL(
+ CommandQueueHandle command_queue,
+ void* ptr,
+ nuint size,
+ uint advice,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueMemAdviseINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMemAdviseINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueMemAdviseINTEL(
+ CommandQueueHandle command_queue,
+ Ref ptr,
+ nuint size,
+ uint advice,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_ptr = ptr)
+ {
+ return (int)EnqueueMemAdviseINTEL(
+ command_queue,
+ __dsl_ptr,
+ size,
+ advice,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueMemcpyINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueMemcpyINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ public static extern int EnqueueMemcpyINTEL(
+ CommandQueueHandle command_queue,
+ uint blocking,
+ void* dst_ptr,
+ void* src_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueMemcpyINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMemcpyINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueMemcpyINTEL(
+ CommandQueueHandle command_queue,
+ MaybeBool blocking,
+ Ref dst_ptr,
+ Ref src_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_src_ptr = src_ptr)
+ fixed (void* __dsl_dst_ptr = dst_ptr)
+ {
+ return (int)EnqueueMemcpyINTEL(
+ command_queue,
+ (uint)blocking,
+ __dsl_dst_ptr,
+ __dsl_src_ptr,
+ size,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueMemFillINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueMemFillINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ public static extern int EnqueueMemFillINTEL(
+ CommandQueueHandle command_queue,
+ void* dst_ptr,
+ void* pattern,
+ nuint pattern_size,
+ nuint size,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueMemFillINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMemFillINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueMemFillINTEL(
+ CommandQueueHandle command_queue,
+ Ref dst_ptr,
+ Ref pattern,
+ nuint pattern_size,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_pattern = pattern)
+ fixed (void* __dsl_dst_ptr = dst_ptr)
+ {
+ return (int)EnqueueMemFillINTEL(
+ command_queue,
+ __dsl_dst_ptr,
+ __dsl_pattern,
+ pattern_size,
+ size,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueMemsetINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueMemsetINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ public static extern int EnqueueMemsetINTEL(
+ CommandQueueHandle command_queue,
+ void* dst_ptr,
+ int value,
+ nuint size,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueMemsetINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMemsetINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueMemsetINTEL(
+ CommandQueueHandle command_queue,
+ Ref dst_ptr,
+ int value,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_dst_ptr = dst_ptr)
+ {
+ return (int)EnqueueMemsetINTEL(
+ command_queue,
+ __dsl_dst_ptr,
+ value,
+ size,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueMigrateMemINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueMigrateMemINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ public static extern int EnqueueMigrateMemINTEL(
+ CommandQueueHandle command_queue,
+ void* ptr,
+ nuint size,
+ ulong flags,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueMigrateMemINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMigrateMemINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueMigrateMemINTEL(
+ CommandQueueHandle command_queue,
+ Ref ptr,
+ nuint size,
+ ulong flags,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_ptr = ptr)
+ {
+ return (int)EnqueueMigrateMemINTEL(
+ command_queue,
+ __dsl_ptr,
+ size,
+ flags,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueMigrateMemObjectEXT")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueMigrateMemObjectEXT")]
+ [SupportedApiProfile("opencl", ["cl_ext_migrate_memobject"])]
+ public static extern int EnqueueMigrateMemObjectEXT(
+ CommandQueueHandle command_queue,
+ uint num_mem_objects,
+ MemHandle* mem_objects,
+ ulong flags,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueMigrateMemObjectEXT")]
+ [SupportedApiProfile("opencl", ["cl_ext_migrate_memobject"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMigrateMemObjectEXT")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueMigrateMemObjectEXT(
+ CommandQueueHandle command_queue,
+ uint num_mem_objects,
+ Ref mem_objects,
+ ulong flags,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (MemHandle* __dsl_mem_objects = mem_objects)
+ {
+ return (int)EnqueueMigrateMemObjectEXT(
+ command_queue,
+ num_mem_objects,
+ __dsl_mem_objects,
+ flags,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueMigrateMemObjects")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueMigrateMemObjects")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ public static extern int EnqueueMigrateMemObjects(
+ CommandQueueHandle command_queue,
+ uint num_mem_objects,
+ MemHandle* mem_objects,
+ ulong flags,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueMigrateMemObjects")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.2"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMigrateMemObjects")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueMigrateMemObjects(
+ CommandQueueHandle command_queue,
+ uint num_mem_objects,
+ Ref mem_objects,
+ ulong flags,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (MemHandle* __dsl_mem_objects = mem_objects)
+ {
+ return (int)EnqueueMigrateMemObjects(
+ command_queue,
+ num_mem_objects,
+ __dsl_mem_objects,
+ flags,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueNativeKernel")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueNativeKernel")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern int EnqueueNativeKernel(
+ CommandQueueHandle command_queue,
+ delegate* unmanaged user_func,
+ void* args,
+ nuint cb_args,
+ uint num_mem_objects,
+ MemHandle* mem_list,
+ void** args_mem_loc,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueNativeKernel")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueNativeKernel")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueNativeKernel(
+ CommandQueueHandle command_queue,
+ delegate* unmanaged user_func,
+ Ref args,
+ nuint cb_args,
+ uint num_mem_objects,
+ Ref mem_list,
+ Ref2D args_mem_loc,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void** __dsl_args_mem_loc = args_mem_loc)
+ fixed (MemHandle* __dsl_mem_list = mem_list)
+ fixed (void* __dsl_args = args)
+ {
+ return (int)EnqueueNativeKernel(
+ command_queue,
+ user_func,
+ __dsl_args,
+ cb_args,
+ num_mem_objects,
+ __dsl_mem_list,
+ __dsl_args_mem_loc,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueNDRangeKernel")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueNDRangeKernel")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern int EnqueueNDRangeKernel(
+ CommandQueueHandle command_queue,
+ KernelHandle kernel,
+ uint work_dim,
+ nuint* global_work_offset,
+ nuint* global_work_size,
+ nuint* local_work_size,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueNDRangeKernel")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueNDRangeKernel")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueNDRangeKernel(
+ CommandQueueHandle command_queue,
+ KernelHandle kernel,
+ uint work_dim,
+ Ref global_work_offset,
+ Ref global_work_size,
+ Ref local_work_size,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (nuint* __dsl_local_work_size = local_work_size)
+ fixed (nuint* __dsl_global_work_size = global_work_size)
+ fixed (nuint* __dsl_global_work_offset = global_work_offset)
+ {
+ return (int)EnqueueNDRangeKernel(
+ command_queue,
+ kernel,
+ work_dim,
+ __dsl_global_work_offset,
+ __dsl_global_work_size,
+ __dsl_local_work_size,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueReadBuffer")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueReadBuffer")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern int EnqueueReadBuffer(
+ CommandQueueHandle command_queue,
+ MemHandle buffer,
+ uint blocking_read,
+ nuint offset,
+ nuint size,
+ void* ptr,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueReadBuffer")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueReadBuffer")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueReadBuffer(
+ CommandQueueHandle command_queue,
+ MemHandle buffer,
+ MaybeBool blocking_read,
+ nuint offset,
+ nuint size,
+ Ref ptr,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_ptr = ptr)
+ {
+ return (int)EnqueueReadBuffer(
+ command_queue,
+ buffer,
+ (uint)blocking_read,
+ offset,
+ size,
+ __dsl_ptr,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueReadBufferRect")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueReadBufferRect")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.1"
+ )]
+ public static extern int EnqueueReadBufferRect(
+ CommandQueueHandle command_queue,
+ MemHandle buffer,
+ uint blocking_read,
+ nuint* buffer_origin,
+ nuint* host_origin,
+ nuint* region,
+ nuint buffer_row_pitch,
+ nuint buffer_slice_pitch,
+ nuint host_row_pitch,
+ nuint host_slice_pitch,
+ void* ptr,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueReadBufferRect")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.1"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueReadBufferRect")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueReadBufferRect(
+ CommandQueueHandle command_queue,
+ MemHandle buffer,
+ MaybeBool blocking_read,
+ Ref buffer_origin,
+ Ref host_origin,
+ Ref region,
+ nuint buffer_row_pitch,
+ nuint buffer_slice_pitch,
+ nuint host_row_pitch,
+ nuint host_slice_pitch,
+ Ref ptr,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_ptr = ptr)
+ fixed (nuint* __dsl_region = region)
+ fixed (nuint* __dsl_host_origin = host_origin)
+ fixed (nuint* __dsl_buffer_origin = buffer_origin)
+ {
+ return (int)EnqueueReadBufferRect(
+ command_queue,
+ buffer,
+ (uint)blocking_read,
+ __dsl_buffer_origin,
+ __dsl_host_origin,
+ __dsl_region,
+ buffer_row_pitch,
+ buffer_slice_pitch,
+ host_row_pitch,
+ host_slice_pitch,
+ __dsl_ptr,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueReadHostPipeINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueReadHostPipeINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_program_scope_host_pipe"])]
+ public static extern int EnqueueReadHostPipeINTEL(
+ CommandQueueHandle command_queue,
+ ProgramHandle program,
+ sbyte* pipe_symbol,
+ uint blocking_read,
+ void* ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueReadHostPipeINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_program_scope_host_pipe"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueReadHostPipeINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueReadHostPipeINTEL(
+ CommandQueueHandle command_queue,
+ ProgramHandle program,
+ Ref pipe_symbol,
+ MaybeBool blocking_read,
+ Ref ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_ptr = ptr)
+ fixed (sbyte* __dsl_pipe_symbol = pipe_symbol)
+ {
+ return (int)EnqueueReadHostPipeINTEL(
+ command_queue,
+ program,
+ __dsl_pipe_symbol,
+ (uint)blocking_read,
+ __dsl_ptr,
+ size,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueReadImage")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueReadImage")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ public static extern int EnqueueReadImage(
+ CommandQueueHandle command_queue,
+ MemHandle image,
+ uint blocking_read,
+ nuint* origin,
+ nuint* region,
+ nuint row_pitch,
+ nuint slice_pitch,
+ void* ptr,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueReadImage")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_1_0",
+ "CL_VERSION_1_1",
+ "CL_VERSION_1_2",
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "1.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueReadImage")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueReadImage(
+ CommandQueueHandle command_queue,
+ MemHandle image,
+ MaybeBool blocking_read,
+ Ref origin,
+ Ref region,
+ nuint row_pitch,
+ nuint slice_pitch,
+ Ref ptr,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_ptr = ptr)
+ fixed (nuint* __dsl_region = region)
+ fixed (nuint* __dsl_origin = origin)
+ {
+ return (int)EnqueueReadImage(
+ command_queue,
+ image,
+ (uint)blocking_read,
+ __dsl_origin,
+ __dsl_region,
+ row_pitch,
+ slice_pitch,
+ __dsl_ptr,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueReleaseExternalMemObjectsKHR")]
+ [DllImport(
+ "opencl",
+ ExactSpelling = true,
+ EntryPoint = "clEnqueueReleaseExternalMemObjectsKHR"
+ )]
+ [SupportedApiProfile(
+ "opencl",
+ ["cl_khr_external_memory"],
+ ImpliesSets = ["CL_VERSION_3_0"]
+ )]
+ public static extern int EnqueueReleaseExternalMemObjectsKHR(
+ CommandQueueHandle command_queue,
+ uint num_mem_objects,
+ MemHandle* mem_objects,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueReleaseExternalMemObjectsKHR")]
+ [SupportedApiProfile(
+ "opencl",
+ ["cl_khr_external_memory"],
+ ImpliesSets = ["CL_VERSION_3_0"]
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueReleaseExternalMemObjectsKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueReleaseExternalMemObjectsKHR(
+ CommandQueueHandle command_queue,
+ uint num_mem_objects,
+ Ref mem_objects,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (MemHandle* __dsl_mem_objects = mem_objects)
+ {
+ return (int)EnqueueReleaseExternalMemObjectsKHR(
+ command_queue,
+ num_mem_objects,
+ __dsl_mem_objects,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueReleaseGrallocObjectsIMG")]
+ [DllImport(
+ "opencl",
+ ExactSpelling = true,
+ EntryPoint = "clEnqueueReleaseGrallocObjectsIMG"
+ )]
+ [SupportedApiProfile("opencl", ["cl_img_use_gralloc_ptr"])]
+ public static extern int EnqueueReleaseGrallocObjectsIMG(
+ CommandQueueHandle command_queue,
+ uint num_objects,
+ MemHandle* mem_objects,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueReleaseGrallocObjectsIMG")]
+ [SupportedApiProfile("opencl", ["cl_img_use_gralloc_ptr"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueReleaseGrallocObjectsIMG")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueReleaseGrallocObjectsIMG(
+ CommandQueueHandle command_queue,
+ uint num_objects,
+ Ref mem_objects,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (MemHandle* __dsl_mem_objects = mem_objects)
+ {
+ return (int)EnqueueReleaseGrallocObjectsIMG(
+ command_queue,
+ num_objects,
+ __dsl_mem_objects,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueSignalSemaphoresKHR")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueSignalSemaphoresKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_semaphore"], ImpliesSets = ["CL_VERSION_1_2"])]
+ public static extern int EnqueueSignalSemaphoresKHR(
+ CommandQueueHandle command_queue,
+ uint num_sema_objects,
+ SemaphoreHandleKHR* sema_objects,
+ ulong* sema_payload_list,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueSignalSemaphoresKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_semaphore"], ImpliesSets = ["CL_VERSION_1_2"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueSignalSemaphoresKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueSignalSemaphoresKHR(
+ CommandQueueHandle command_queue,
+ uint num_sema_objects,
+ Ref sema_objects,
+ Ref sema_payload_list,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (ulong* __dsl_sema_payload_list = sema_payload_list)
+ fixed (SemaphoreHandleKHR* __dsl_sema_objects = sema_objects)
+ {
+ return (int)EnqueueSignalSemaphoresKHR(
+ command_queue,
+ num_sema_objects,
+ __dsl_sema_objects,
+ __dsl_sema_payload_list,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueSVMFree")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueSVMFree")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "2.0"
+ )]
+ public static extern int EnqueueSvmFree(
+ CommandQueueHandle command_queue,
+ uint num_svm_pointers,
+ void** svm_pointers,
+ delegate* unmanaged pfn_free_func,
+ void* user_data,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueSVMFree")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "2.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueSVMFree")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueSvmFree(
+ CommandQueueHandle command_queue,
+ uint num_svm_pointers,
+ Ref2D svm_pointers,
+ delegate* unmanaged pfn_free_func,
+ Ref user_data,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_user_data = user_data)
+ fixed (void** __dsl_svm_pointers = svm_pointers)
+ {
+ return (int)EnqueueSvmFree(
+ command_queue,
+ num_svm_pointers,
+ __dsl_svm_pointers,
+ pfn_free_func,
+ __dsl_user_data,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueSVMFreeARM")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueSVMFreeARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ public static extern int EnqueueSvmFreeARM(
+ CommandQueueHandle command_queue,
+ uint num_svm_pointers,
+ void** svm_pointers,
+ delegate* unmanaged pfn_free_func,
+ void* user_data,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueSVMFreeARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueSVMFreeARM")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueSvmFreeARM(
+ CommandQueueHandle command_queue,
+ uint num_svm_pointers,
+ Ref2D svm_pointers,
+ delegate* unmanaged pfn_free_func,
+ Ref user_data,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_user_data = user_data)
+ fixed (void** __dsl_svm_pointers = svm_pointers)
+ {
+ return (int)EnqueueSvmFreeARM(
+ command_queue,
+ num_svm_pointers,
+ __dsl_svm_pointers,
+ pfn_free_func,
+ __dsl_user_data,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueSVMMap")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueSVMMap")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "2.0"
+ )]
+ public static extern int EnqueueSvmMap(
+ CommandQueueHandle command_queue,
+ uint blocking_map,
+ ulong flags,
+ void* svm_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueSVMMap")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "2.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueSVMMap")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueSvmMap(
+ CommandQueueHandle command_queue,
+ MaybeBool blocking_map,
+ ulong flags,
+ Ref svm_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_svm_ptr = svm_ptr)
+ {
+ return (int)EnqueueSvmMap(
+ command_queue,
+ (uint)blocking_map,
+ flags,
+ __dsl_svm_ptr,
+ size,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueSVMMapARM")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueSVMMapARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ public static extern int EnqueueSvmMapARM(
+ CommandQueueHandle command_queue,
+ uint blocking_map,
+ ulong flags,
+ void* svm_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueSVMMapARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueSVMMapARM")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueSvmMapARM(
+ CommandQueueHandle command_queue,
+ MaybeBool blocking_map,
+ ulong flags,
+ Ref svm_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_svm_ptr = svm_ptr)
+ {
+ return (int)EnqueueSvmMapARM(
+ command_queue,
+ (uint)blocking_map,
+ flags,
+ __dsl_svm_ptr,
+ size,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueSVMMemcpy")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueSVMMemcpy")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "2.0"
+ )]
+ public static extern int EnqueueSvmMemcpy(
+ CommandQueueHandle command_queue,
+ uint blocking_copy,
+ void* dst_ptr,
+ void* src_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueSVMMemcpy")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "2.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueSVMMemcpy")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueSvmMemcpy(
+ CommandQueueHandle command_queue,
+ MaybeBool blocking_copy,
+ Ref dst_ptr,
+ Ref src_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_src_ptr = src_ptr)
+ fixed (void* __dsl_dst_ptr = dst_ptr)
+ {
+ return (int)EnqueueSvmMemcpy(
+ command_queue,
+ (uint)blocking_copy,
+ __dsl_dst_ptr,
+ __dsl_src_ptr,
+ size,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueSVMMemcpyARM")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueSVMMemcpyARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ public static extern int EnqueueSvmMemcpyARM(
+ CommandQueueHandle command_queue,
+ uint blocking_copy,
+ void* dst_ptr,
+ void* src_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueSVMMemcpyARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueSVMMemcpyARM")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueSvmMemcpyARM(
+ CommandQueueHandle command_queue,
+ MaybeBool blocking_copy,
+ Ref dst_ptr,
+ Ref src_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref event_wait_list,
+ Ref @event
+ )
+ {
+ fixed (EventHandle* __dsl_event = @event)
+ fixed (EventHandle* __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_src_ptr = src_ptr)
+ fixed (void* __dsl_dst_ptr = dst_ptr)
+ {
+ return (int)EnqueueSvmMemcpyARM(
+ command_queue,
+ (uint)blocking_copy,
+ __dsl_dst_ptr,
+ __dsl_src_ptr,
+ size,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueSVMMemFill")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueSVMMemFill")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "2.0"
+ )]
+ public static extern int EnqueueSvmMemFill(
+ CommandQueueHandle command_queue,
+ void* svm_ptr,
+ void* pattern,
+ nuint pattern_size,
+ nuint size,
+ uint num_events_in_wait_list,
+ EventHandle* event_wait_list,
+ EventHandle* @event
+ );
+
+ [NativeName("clEnqueueSVMMemFill")]
+ [SupportedApiProfile(
+ "opencl",
+ [
+ "CL_VERSION_2_0",
+ "CL_VERSION_2_1",
+ "CL_VERSION_2_2",
+ "CL_VERSION_3_0",
+ "CL_VERSION_3_1",
+ ],
+ MinVersion = "2.0"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueSVMMemFill")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueSvmMemFill(
+ CommandQueueHandle command_queue,
+ Ref svm_ptr,
+ Ref pattern,
+ nuint pattern_size,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref