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/.nuke/parameters.json b/.nuke/parameters.json
index 4533bc3268..a8d75e818c 100644
--- a/.nuke/parameters.json
+++ b/.nuke/parameters.json
@@ -1,4 +1,4 @@
{
"$schema": "build.schema.json",
- "Solution": "Silk.NET.sln"
+ "Solution": "Silk.NET.slnx"
}
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/Directory.Packages.props b/Directory.Packages.props
index 385845b466..73853120e8 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -1,50 +1,51 @@
-
-
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
-
-
-
+
+
+
+
+
diff --git a/Silk.NET.sln b/Silk.NET.sln
deleted file mode 100644
index 1e617f5c78..0000000000
--- a/Silk.NET.sln
+++ /dev/null
@@ -1,259 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.28922.388
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{60A10DB9-C4D6-48CD-8982-7F02345D7ADF}"
- ProjectSection(SolutionItems) = preProject
- .editorconfig = .editorconfig
- .gitattributes = .gitattributes
- .gitignore = .gitignore
- Directory.Build.props = Directory.Build.props
- Directory.Build.targets = Directory.Build.targets
- LICENSE.md = LICENSE.md
- generator.json = generator.json
- Silk.NET.sln.DotSettings = Silk.NET.sln.DotSettings
- Directory.Packages.props = Directory.Packages.props
- EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docs", "docs", "{9DB0EA3E-7216-4F9C-98F5-8A7483E9F083}"
- ProjectSection(SolutionItems) = preProject
- docs\CODE_OF_CONDUCT.md = docs\CODE_OF_CONDUCT.md
- docs\CODEOWNERS = docs\CODEOWNERS
- docs\CONTRIBUTING.md = docs\CONTRIBUTING.md
- docs\README.md = docs\README.md
- docs\CHANGELOG.md = docs\CHANGELOG.md
- EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "scripts", "scripts", "{CFFDBEEC-B112-4844-B65B-56A1029CC130}"
- ProjectSection(SolutionItems) = preProject
- scripts\azure-pipelines.yml = scripts\azure-pipelines.yml
- scripts\build.ps1 = scripts\build.ps1
- scripts\build.sh = scripts\build.sh
- scripts\cibuild.cmd = scripts\cibuild.cmd
- scripts\cibuild.sh = scripts\cibuild.sh
- EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "sources", "sources", "{DD29EA8F-B1A6-45AA-8D2E-B38DA56D9EF6}"
- ProjectSection(SolutionItems) = preProject
- sources\Directory.Build.props = sources\Directory.Build.props
- sources\Directory.Build.targets = sources\Directory.Build.targets
- EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{A5578D12-9E77-4647-8C22-0DBD17760BFF}"
- ProjectSection(SolutionItems) = preProject
- tests\Directory.Build.props = tests\Directory.Build.props
- tests\Directory.Build.targets = tests\Directory.Build.targets
- EndProjectSection
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.SilkTouch", "sources\SilkTouch\SilkTouch\Silk.NET.SilkTouch.csproj", "{76F747A6-D971-4162-BF35-A226177FCA08}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Silk.NET.SilkTouch.UnitTests", "tests\SilkTouch\SilkTouch\Silk.NET.SilkTouch.UnitTests.csproj", "{600D712C-4ABF-44C4-96C3-B1DEE1F38298}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "eng", "eng", "{475AEF7B-0154-4989-AF82-97E3A95A96AF}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.Core", "sources\Core\Core\Silk.NET.Core.csproj", "{131C09C1-BF4D-47C1-AF13-4A7E30866B1E}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Playground", "sources\Playground\Playground.csproj", "{48F43535-3AFC-45E7-A98D-C2609B3B9757}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.Core.UnitTests", "tests\Core\Core\Silk.NET.Core.UnitTests.csproj", "{A87E1861-07E4-4B7A-9173-0853370A7D4E}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.Maths", "sources\Maths\Maths\Silk.NET.Maths.csproj", "{1B21D783-71C3-48D3-91F5-0EEA90FB0DB2}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.Maths.Tests", "tests\Maths\Maths\Silk.NET.Maths.Tests.csproj", "{01683C11-4721-43AB-B53C-15EBE935B48F}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "benchmarks", "benchmarks", "{B681E21A-47A2-4635-96EE-60D8D63FBEA9}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.Maths.Benchmarks", "eng\benchmarks\Silk.NET.Maths.Benchmarks\Silk.NET.Maths.Benchmarks.csproj", "{AF6C70ED-D6A8-4C57-8DB3-EAFF94396049}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.OpenGL", "sources\OpenGL\OpenGL\Silk.NET.OpenGL.csproj", "{9625C977-25BE-48F3-9B6F-BC94B8B799A6}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.SDL", "sources\SDL\SDL\Silk.NET.SDL.csproj", "{19B05730-F97E-43D4-B922-DF4697E5CE5F}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.SDL.UnitTests", "tests\SDL\SDL\Silk.NET.SDL.UnitTests.csproj", "{D2B9C43F-A80D-4C9A-9643-BC1AC1B4E807}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Core", "Core", "{5CD096DB-6C44-48F1-9093-AD4C84B6B7EC}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Maths", "Maths", "{2452CED9-5211-4A19-BA44-230EC28F409E}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "OpenGL", "OpenGL", "{FA31E483-AD35-4E44-B10A-B33C4539DBCB}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SilkTouch", "SilkTouch", "{24BD769C-7379-400C-A67F-00C34756DA32}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SDL", "SDL", "{EC4D7B06-D277-4411-BD7B-71A6D37683F0}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Core", "Core", "{D9ACA4E5-712F-4F15-B8B8-50C85D23D1D5}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Maths", "Maths", "{FCD75AA5-1536-433E-BA9B-3D698C2255EB}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SDL", "SDL", "{49D426BF-A009-43D5-A9E2-EFAAAA7196FC}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SilkTouch", "SilkTouch", "{AB25C482-DA9D-4335-8E26-2F29C3700152}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.NUKE", "eng\build\Silk.NET.NUKE.csproj", "{3CADD95A-179F-4ECF-A49D-4B753832C63C}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET", "sources\Core\Silk.NET\Silk.NET.csproj", "{6FA628B8-9696-4847-89F9-E58F470AF4FB}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Win32", "Win32", "{6E739132-EEAB-43A5-83C7-EB58C50D03A1}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.SDL.Native", "sources\SDL\Native\Silk.NET.SDL.Native.csproj", "{F16C0AB9-DE7E-4C09-9EE9-DAA8B8E935A6}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Windowing", "Windowing", "{FE4414F8-5370-445D-9F24-C3AD3223F299}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.Windowing", "sources\Windowing\Windowing\Silk.NET.Windowing.csproj", "{EF07CBB5-D253-4CA9-A5DA-8B3DF2B0DF8E}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Vulkan", "Vulkan", "{5E20252F-E2A0-46C9-BBEF-4CE5C96D0E07}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.Vulkan", "sources\Vulkan\Vulkan\Silk.NET.Vulkan.csproj", "{E5E8FFBF-1319-4D33-B084-E732656E8A04}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "OpenAL", "OpenAL", "{AF13F7C9-4EE2-403E-B3D2-C4C2E45D9EF3}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.OpenAL", "sources\OpenAL\OpenAL\Silk.NET.OpenAL.csproj", "{1FFFDD72-D023-441C-AF49-F1EA78FF7DE9}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "examples", "examples", "{6077EDD4-F16F-4CA4-B72E-E4627D64B104}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CSharp", "CSharp", "{12B4D1CB-8938-4EC4-8895-79C4E6ABD1E8}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "OpenAL", "OpenAL", "{662A1AEC-91F2-48FA-AA29-6F27038D30F2}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenAL.Tutorial001.HelloSound", "examples\CSharp\OpenAL\Tutorial001.HelloSound\OpenAL.Tutorial001.HelloSound.csproj", "{946C912C-5BBB-446A-A566-0D1696D19F59}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SDL.Tutorial001.HelloWindow", "examples\CSharp\SDL\Tutorial001.HelloWindow\SDL.Tutorial001.HelloWindow.csproj", "{3444151F-2DE3-41BC-B5E0-EFBF0091C087}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SDL", "SDL", "{96567E92-4A89-4AC8-9F20-C2A3FE644D10}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.OpenAL.Soft.Native", "sources\OpenAL\Soft.Native\Silk.NET.OpenAL.Soft.Native.csproj", "{72256365-2C76-4E60-9CF0-A4FFF6F3843F}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Release|Any CPU = Release|Any CPU
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {76F747A6-D971-4162-BF35-A226177FCA08}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {76F747A6-D971-4162-BF35-A226177FCA08}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {76F747A6-D971-4162-BF35-A226177FCA08}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {76F747A6-D971-4162-BF35-A226177FCA08}.Release|Any CPU.Build.0 = Release|Any CPU
- {600D712C-4ABF-44C4-96C3-B1DEE1F38298}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {600D712C-4ABF-44C4-96C3-B1DEE1F38298}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {600D712C-4ABF-44C4-96C3-B1DEE1F38298}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {600D712C-4ABF-44C4-96C3-B1DEE1F38298}.Release|Any CPU.Build.0 = Release|Any CPU
- {131C09C1-BF4D-47C1-AF13-4A7E30866B1E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {131C09C1-BF4D-47C1-AF13-4A7E30866B1E}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {131C09C1-BF4D-47C1-AF13-4A7E30866B1E}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {131C09C1-BF4D-47C1-AF13-4A7E30866B1E}.Release|Any CPU.Build.0 = Release|Any CPU
- {48F43535-3AFC-45E7-A98D-C2609B3B9757}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {48F43535-3AFC-45E7-A98D-C2609B3B9757}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {48F43535-3AFC-45E7-A98D-C2609B3B9757}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {48F43535-3AFC-45E7-A98D-C2609B3B9757}.Release|Any CPU.Build.0 = Release|Any CPU
- {A87E1861-07E4-4B7A-9173-0853370A7D4E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {A87E1861-07E4-4B7A-9173-0853370A7D4E}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {A87E1861-07E4-4B7A-9173-0853370A7D4E}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {A87E1861-07E4-4B7A-9173-0853370A7D4E}.Release|Any CPU.Build.0 = Release|Any CPU
- {1B21D783-71C3-48D3-91F5-0EEA90FB0DB2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {1B21D783-71C3-48D3-91F5-0EEA90FB0DB2}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {1B21D783-71C3-48D3-91F5-0EEA90FB0DB2}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {1B21D783-71C3-48D3-91F5-0EEA90FB0DB2}.Release|Any CPU.Build.0 = Release|Any CPU
- {01683C11-4721-43AB-B53C-15EBE935B48F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {01683C11-4721-43AB-B53C-15EBE935B48F}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {01683C11-4721-43AB-B53C-15EBE935B48F}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {01683C11-4721-43AB-B53C-15EBE935B48F}.Release|Any CPU.Build.0 = Release|Any CPU
- {AF6C70ED-D6A8-4C57-8DB3-EAFF94396049}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {AF6C70ED-D6A8-4C57-8DB3-EAFF94396049}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {AF6C70ED-D6A8-4C57-8DB3-EAFF94396049}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {AF6C70ED-D6A8-4C57-8DB3-EAFF94396049}.Release|Any CPU.Build.0 = Release|Any CPU
- {9625C977-25BE-48F3-9B6F-BC94B8B799A6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {9625C977-25BE-48F3-9B6F-BC94B8B799A6}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {9625C977-25BE-48F3-9B6F-BC94B8B799A6}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {9625C977-25BE-48F3-9B6F-BC94B8B799A6}.Release|Any CPU.Build.0 = Release|Any CPU
- {19B05730-F97E-43D4-B922-DF4697E5CE5F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {19B05730-F97E-43D4-B922-DF4697E5CE5F}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {19B05730-F97E-43D4-B922-DF4697E5CE5F}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {19B05730-F97E-43D4-B922-DF4697E5CE5F}.Release|Any CPU.Build.0 = Release|Any CPU
- {D2B9C43F-A80D-4C9A-9643-BC1AC1B4E807}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {D2B9C43F-A80D-4C9A-9643-BC1AC1B4E807}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {D2B9C43F-A80D-4C9A-9643-BC1AC1B4E807}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {D2B9C43F-A80D-4C9A-9643-BC1AC1B4E807}.Release|Any CPU.Build.0 = Release|Any CPU
- {3CADD95A-179F-4ECF-A49D-4B753832C63C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {3CADD95A-179F-4ECF-A49D-4B753832C63C}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {3CADD95A-179F-4ECF-A49D-4B753832C63C}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {3CADD95A-179F-4ECF-A49D-4B753832C63C}.Release|Any CPU.Build.0 = Release|Any CPU
- {6FA628B8-9696-4847-89F9-E58F470AF4FB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {6FA628B8-9696-4847-89F9-E58F470AF4FB}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {6FA628B8-9696-4847-89F9-E58F470AF4FB}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {6FA628B8-9696-4847-89F9-E58F470AF4FB}.Release|Any CPU.Build.0 = Release|Any CPU
- {F16C0AB9-DE7E-4C09-9EE9-DAA8B8E935A6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {F16C0AB9-DE7E-4C09-9EE9-DAA8B8E935A6}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {F16C0AB9-DE7E-4C09-9EE9-DAA8B8E935A6}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {F16C0AB9-DE7E-4C09-9EE9-DAA8B8E935A6}.Release|Any CPU.Build.0 = Release|Any CPU
- {EF07CBB5-D253-4CA9-A5DA-8B3DF2B0DF8E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {EF07CBB5-D253-4CA9-A5DA-8B3DF2B0DF8E}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {EF07CBB5-D253-4CA9-A5DA-8B3DF2B0DF8E}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {EF07CBB5-D253-4CA9-A5DA-8B3DF2B0DF8E}.Release|Any CPU.Build.0 = Release|Any CPU
- {E5E8FFBF-1319-4D33-B084-E732656E8A04}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {E5E8FFBF-1319-4D33-B084-E732656E8A04}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {E5E8FFBF-1319-4D33-B084-E732656E8A04}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {E5E8FFBF-1319-4D33-B084-E732656E8A04}.Release|Any CPU.Build.0 = Release|Any CPU
- {1FFFDD72-D023-441C-AF49-F1EA78FF7DE9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {1FFFDD72-D023-441C-AF49-F1EA78FF7DE9}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {1FFFDD72-D023-441C-AF49-F1EA78FF7DE9}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {1FFFDD72-D023-441C-AF49-F1EA78FF7DE9}.Release|Any CPU.Build.0 = Release|Any CPU
- {946C912C-5BBB-446A-A566-0D1696D19F59}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {946C912C-5BBB-446A-A566-0D1696D19F59}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {946C912C-5BBB-446A-A566-0D1696D19F59}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {946C912C-5BBB-446A-A566-0D1696D19F59}.Release|Any CPU.Build.0 = Release|Any CPU
- {3444151F-2DE3-41BC-B5E0-EFBF0091C087}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {3444151F-2DE3-41BC-B5E0-EFBF0091C087}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {3444151F-2DE3-41BC-B5E0-EFBF0091C087}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {3444151F-2DE3-41BC-B5E0-EFBF0091C087}.Release|Any CPU.Build.0 = Release|Any CPU
- {72256365-2C76-4E60-9CF0-A4FFF6F3843F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {72256365-2C76-4E60-9CF0-A4FFF6F3843F}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {72256365-2C76-4E60-9CF0-A4FFF6F3843F}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {72256365-2C76-4E60-9CF0-A4FFF6F3843F}.Release|Any CPU.Build.0 = Release|Any CPU
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
- GlobalSection(NestedProjects) = preSolution
- {48F43535-3AFC-45E7-A98D-C2609B3B9757} = {DD29EA8F-B1A6-45AA-8D2E-B38DA56D9EF6}
- {B681E21A-47A2-4635-96EE-60D8D63FBEA9} = {475AEF7B-0154-4989-AF82-97E3A95A96AF}
- {AF6C70ED-D6A8-4C57-8DB3-EAFF94396049} = {B681E21A-47A2-4635-96EE-60D8D63FBEA9}
- {5CD096DB-6C44-48F1-9093-AD4C84B6B7EC} = {DD29EA8F-B1A6-45AA-8D2E-B38DA56D9EF6}
- {131C09C1-BF4D-47C1-AF13-4A7E30866B1E} = {5CD096DB-6C44-48F1-9093-AD4C84B6B7EC}
- {2452CED9-5211-4A19-BA44-230EC28F409E} = {DD29EA8F-B1A6-45AA-8D2E-B38DA56D9EF6}
- {FA31E483-AD35-4E44-B10A-B33C4539DBCB} = {DD29EA8F-B1A6-45AA-8D2E-B38DA56D9EF6}
- {24BD769C-7379-400C-A67F-00C34756DA32} = {DD29EA8F-B1A6-45AA-8D2E-B38DA56D9EF6}
- {EC4D7B06-D277-4411-BD7B-71A6D37683F0} = {DD29EA8F-B1A6-45AA-8D2E-B38DA56D9EF6}
- {19B05730-F97E-43D4-B922-DF4697E5CE5F} = {EC4D7B06-D277-4411-BD7B-71A6D37683F0}
- {76F747A6-D971-4162-BF35-A226177FCA08} = {24BD769C-7379-400C-A67F-00C34756DA32}
- {1B21D783-71C3-48D3-91F5-0EEA90FB0DB2} = {2452CED9-5211-4A19-BA44-230EC28F409E}
- {9625C977-25BE-48F3-9B6F-BC94B8B799A6} = {FA31E483-AD35-4E44-B10A-B33C4539DBCB}
- {D9ACA4E5-712F-4F15-B8B8-50C85D23D1D5} = {A5578D12-9E77-4647-8C22-0DBD17760BFF}
- {FCD75AA5-1536-433E-BA9B-3D698C2255EB} = {A5578D12-9E77-4647-8C22-0DBD17760BFF}
- {49D426BF-A009-43D5-A9E2-EFAAAA7196FC} = {A5578D12-9E77-4647-8C22-0DBD17760BFF}
- {AB25C482-DA9D-4335-8E26-2F29C3700152} = {A5578D12-9E77-4647-8C22-0DBD17760BFF}
- {A87E1861-07E4-4B7A-9173-0853370A7D4E} = {D9ACA4E5-712F-4F15-B8B8-50C85D23D1D5}
- {01683C11-4721-43AB-B53C-15EBE935B48F} = {FCD75AA5-1536-433E-BA9B-3D698C2255EB}
- {D2B9C43F-A80D-4C9A-9643-BC1AC1B4E807} = {49D426BF-A009-43D5-A9E2-EFAAAA7196FC}
- {600D712C-4ABF-44C4-96C3-B1DEE1F38298} = {AB25C482-DA9D-4335-8E26-2F29C3700152}
- {3CADD95A-179F-4ECF-A49D-4B753832C63C} = {475AEF7B-0154-4989-AF82-97E3A95A96AF}
- {6FA628B8-9696-4847-89F9-E58F470AF4FB} = {5CD096DB-6C44-48F1-9093-AD4C84B6B7EC}
- {6E739132-EEAB-43A5-83C7-EB58C50D03A1} = {DD29EA8F-B1A6-45AA-8D2E-B38DA56D9EF6}
- {F16C0AB9-DE7E-4C09-9EE9-DAA8B8E935A6} = {EC4D7B06-D277-4411-BD7B-71A6D37683F0}
- {FE4414F8-5370-445D-9F24-C3AD3223F299} = {DD29EA8F-B1A6-45AA-8D2E-B38DA56D9EF6}
- {EF07CBB5-D253-4CA9-A5DA-8B3DF2B0DF8E} = {FE4414F8-5370-445D-9F24-C3AD3223F299}
- {AF13F7C9-4EE2-403E-B3D2-C4C2E45D9EF3} = {DD29EA8F-B1A6-45AA-8D2E-B38DA56D9EF6}
- {1FFFDD72-D023-441C-AF49-F1EA78FF7DE9} = {AF13F7C9-4EE2-403E-B3D2-C4C2E45D9EF3}
- {12B4D1CB-8938-4EC4-8895-79C4E6ABD1E8} = {6077EDD4-F16F-4CA4-B72E-E4627D64B104}
- {662A1AEC-91F2-48FA-AA29-6F27038D30F2} = {12B4D1CB-8938-4EC4-8895-79C4E6ABD1E8}
- {946C912C-5BBB-446A-A566-0D1696D19F59} = {662A1AEC-91F2-48FA-AA29-6F27038D30F2}
- {5E20252F-E2A0-46C9-BBEF-4CE5C96D0E07} = {DD29EA8F-B1A6-45AA-8D2E-B38DA56D9EF6}
- {E5E8FFBF-1319-4D33-B084-E732656E8A04} = {5E20252F-E2A0-46C9-BBEF-4CE5C96D0E07}
- {96567E92-4A89-4AC8-9F20-C2A3FE644D10} = {12B4D1CB-8938-4EC4-8895-79C4E6ABD1E8}
- {3444151F-2DE3-41BC-B5E0-EFBF0091C087} = {96567E92-4A89-4AC8-9F20-C2A3FE644D10}
- {72256365-2C76-4E60-9CF0-A4FFF6F3843F} = {AF13F7C9-4EE2-403E-B3D2-C4C2E45D9EF3}
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- SolutionGuid = {78D2CF6A-60A1-43E3-837B-00B73C9DA384}
- EndGlobalSection
-EndGlobal
diff --git a/Silk.NET.slnx b/Silk.NET.slnx
new file mode 100644
index 0000000000..f768881a80
--- /dev/null
+++ b/Silk.NET.slnx
@@ -0,0 +1,93 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/for-contributors/Generator/api-specific-notes.md b/docs/for-contributors/Generator/api-specific-notes.md
index 3d3c4175a4..c918ab1152 100644
--- a/docs/for-contributors/Generator/api-specific-notes.md
+++ b/docs/for-contributors/Generator/api-specific-notes.md
@@ -1,23 +1,62 @@
# 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-like Bindings
-Currently empty.
+These are APIs managed either by Khronos or APIs managed in a similar way to the official Khronos APIs.
+
+### 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..52ef1de83b 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
@@ -211,14 +214,37 @@ 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.
+
### 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/eng/build/Silk.NET.NUKE.csproj b/eng/build/Silk.NET.NUKE.csproj
index b6071aa7bd..d6063a6cab 100644
--- a/eng/build/Silk.NET.NUKE.csproj
+++ b/eng/build/Silk.NET.NUKE.csproj
@@ -12,11 +12,11 @@
-
-
-
-
-
-
+
+
+
+
+
+
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..183bb5fb2a
--- /dev/null
+++ b/eng/silktouch/opencl/remap.rsp
@@ -0,0 +1 @@
+@../../remap-stdint.rsp
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..b7f27587fa
--- /dev/null
+++ b/eng/silktouch/openxr/openxr/generate.rsp
@@ -0,0 +1,14 @@
+@../settings.rsp
+@../remap.rsp
+--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/silktouch/vulkan/header.txt b/eng/silktouch/vulkan/header.txt
index 450ff9e71a..cf0b8079ff 100644
--- a/eng/silktouch/vulkan/header.txt
+++ b/eng/silktouch/vulkan/header.txt
@@ -2,4 +2,4 @@
// The .NET Foundation licenses this file to you under the MIT license.
// Ported from the Vulkan headers and corresponding dependencies.
-// Original source is Copyright 2015-2025 The Khronos Group Inc. Licensed under the MIT license.
+// Original source is Copyright 2015-2026 The Khronos Group Inc. Licensed under the MIT license.
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..9f68efb5d8
--- /dev/null
+++ b/eng/submodules/opencl-docs
@@ -0,0 +1 @@
+Subproject commit 9f68efb5d80e77a4e437c5b8ee67d581666d044c
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 e1144f47d7..f6799bf2e1 100644
--- a/generator.json
+++ b/generator.json
@@ -1,7 +1,7 @@
{
"Jobs": {
"Microsoft": {
- "Solution": "Silk.NET.sln",
+ "Solution": "Silk.NET.slnx",
"SourceProject": "sources/Win32/Win32/Silk.NET.Win32.csproj",
"TestProject": "tests/Win32/Win32/Silk.NET.Win32.UnitTests.csproj",
"DefaultLicenseHeader": "eng/silktouch/header.txt",
@@ -36,7 +36,7 @@
"SDL": {
"SourceProject": "sources/SDL/SDL/Silk.NET.SDL.csproj",
"TestProject": "tests/SDL/SDL/Silk.NET.SDL.UnitTests.csproj",
- "Solution": "Silk.NET.sln",
+ "Solution": "Silk.NET.slnx",
"DefaultLicenseHeader": "eng/silktouch/header.txt",
"Mods": [
"AddIncludes",
@@ -99,7 +99,7 @@
},
"OpenGL": {
"SourceProject": "sources/OpenGL/OpenGL/Silk.NET.OpenGL.csproj",
- "Solution": "Silk.NET.sln",
+ "Solution": "Silk.NET.slnx",
"DefaultLicenseHeader": "eng/silktouch/header.txt",
"Mods": [
"AddIncludes",
@@ -160,7 +160,7 @@
]
},
"MixKhronosData": {
- "SpecPath": "eng/submodules/opengl/xml/gl.xml",
+ "SpecPath": "eng/submodules/opengl-registry/xml/gl.xml",
"Namespace": "Silk.NET.OpenGL",
"TypeMap": {
"GLenum": "uint",
@@ -244,9 +244,108 @@
]
}
},
+ "OpenCL": {
+ "SourceProject": "sources/OpenCL/OpenCL/Silk.NET.OpenCL.csproj",
+ "Solution": "Silk.NET.slnx",
+ "DefaultLicenseHeader": "eng/silktouch/header.txt",
+ "Mods": [
+ "AddIncludes",
+ "ClangScraper",
+ "MarkNativeNames",
+ "AddApiProfiles",
+ "MixKhronosData",
+ "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"
+ },
+ "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
+ },
+ "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.sln",
+ "Solution": "Silk.NET.slnx",
"DefaultLicenseHeader": "eng/silktouch/header.txt",
"Mods": [
"AddIncludes",
@@ -294,9 +393,6 @@
"LOKI",
"EXT"
],
- "ExcludeVendorSuffixIdentification": [
- "ALC_INVALID_CONTEXT"
- ],
"NonVendorSuffixes": [
"Direct"
],
@@ -392,9 +488,136 @@
]
}
},
+ "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.sln",
+ "Solution": "Silk.NET.slnx",
"DefaultLicenseHeader": "eng/silktouch/header.txt",
"Mods": [
"AddIncludes",
@@ -432,7 +655,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 +693,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/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/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/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/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/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..3cb588f40a
--- /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 : intptr_t
+{
+ [NativeName("CL_CONTEXT_PLATFORM")]
+ ContextPlatform = unchecked((intptr_t)0x1084),
+
+ [NativeName("CL_CONTEXT_INTEROP_USER_SYNC")]
+ ContextInteropUserSync = unchecked((intptr_t)0x1085),
+
+ [NativeName("CL_CONTEXT_MEMORY_INITIALIZE_KHR")]
+ ContextMemoryInitializeKHR = unchecked((intptr_t)0x2030),
+
+ [NativeName("CL_CONTEXT_TERMINATE_KHR")]
+ ContextTerminateKHR = unchecked((intptr_t)0x2032),
+
+ [NativeName("CL_PRINTF_CALLBACK_ARM")]
+ PrintfCallbackARM = unchecked((intptr_t)0x40B0),
+
+ [NativeName("CL_PRINTF_BUFFERSIZE_ARM")]
+ PrintfBuffersizeARM = unchecked((intptr_t)0x40B1),
+
+ [NativeName("CL_CONTEXT_SHOW_DIAGNOSTICS_INTEL")]
+ ContextShowDiagnosticsINTEL = unchecked((intptr_t)0x4106),
+
+ [NativeName("CL_CONTEXT_SAFETY_PROPERTIES_IMG")]
+ ContextSafetyPropertiesIMG = unchecked((intptr_t)0x40D9),
+}
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..ed3f5fe1b8
--- /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 : intptr_t
+{
+ [NativeName("CL_DEVICE_PARTITION_EQUALLY")]
+ Equally = unchecked((intptr_t)0x1086),
+
+ [NativeName("CL_DEVICE_PARTITION_BY_COUNTS")]
+ ByCounts = unchecked((intptr_t)0x1087),
+
+ [NativeName("CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN")]
+ ByAffinityDomain = unchecked((intptr_t)0x1088),
+}
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/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/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..aad1887fab
--- /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 : intptr_t
+{
+ [NativeName("CL_EGL_YUV_PLANE_INTEL")]
+ YuvPlaneINTEL = unchecked((intptr_t)0x4107),
+}
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/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..48df02921e
--- /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 : intptr_t
+{
+ [NativeName("CL_IMPORT_TYPE_ARM")]
+ Type = unchecked((intptr_t)0x40B2),
+
+ [NativeName("CL_IMPORT_TYPE_HOST_ARM")]
+ TypeHost = unchecked((intptr_t)0x40B3),
+
+ [NativeName("CL_IMPORT_TYPE_DMA_BUF_ARM")]
+ TypeDmaBuf = unchecked((intptr_t)0x40B4),
+
+ [NativeName("CL_IMPORT_TYPE_PROTECTED_ARM")]
+ TypeProtected = unchecked((intptr_t)0x40B5),
+
+ [NativeName("CL_IMPORT_TYPE_ANDROID_HARDWARE_BUFFER_ARM")]
+ TypeAndroidHardwareBuffer = unchecked((intptr_t)0x41E2),
+
+ [NativeName("CL_IMPORT_DMA_BUF_DATA_CONSISTENCY_WITH_HOST_ARM")]
+ DmaBufDataConsistencyWithHost = unchecked((intptr_t)0x41E3),
+
+ [NativeName("CL_IMPORT_ANDROID_HARDWARE_BUFFER_PLANE_INDEX_ARM")]
+ AndroidHardwareBufferPlaneIndex = unchecked((intptr_t)0x41EF),
+
+ [NativeName("CL_IMPORT_ANDROID_HARDWARE_BUFFER_LAYER_INDEX_ARM")]
+ AndroidHardwareBufferLayerIndex = unchecked((intptr_t)0x41F0),
+}
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/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/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/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/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/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/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/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/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..9270f83336
--- /dev/null
+++ b/sources/OpenCL/OpenCL/OpenCL/Cl.gen.cs
@@ -0,0 +1,49967 @@
+// 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(
+ _cl_program* program,
+ uint num_devices,
+ _cl_device_id** device_list,
+ sbyte* options,
+ delegate* unmanaged<_cl_program*, void*, void> 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(
+ Ref<_cl_program> program,
+ uint num_devices,
+ Ref2D<_cl_device_id> device_list,
+ Ref options,
+ delegate* unmanaged<_cl_program*, void*, void> pfn_notify,
+ Ref user_data
+ )
+ {
+ fixed (void* __dsl_user_data = user_data)
+ fixed (sbyte* __dsl_options = options)
+ fixed (_cl_device_id** __dsl_device_list = device_list)
+ fixed (_cl_program* __dsl_program = program)
+ {
+ return (int)BuildProgram(
+ __dsl_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(
+ _cl_event** 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(Ref2D<_cl_event> event_list, nuint num_events_in_list)
+ {
+ fixed (_cl_event** __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 _cl_kernel* CloneKernel(_cl_kernel* 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 Ptr<_cl_kernel> CloneKernel(
+ Ref<_cl_kernel> source_kernel,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (_cl_kernel* __dsl_source_kernel = source_kernel)
+ {
+ return (_cl_kernel*)CloneKernel(__dsl_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(
+ _cl_program* program,
+ uint num_devices,
+ _cl_device_id** device_list,
+ sbyte* options,
+ uint num_input_headers,
+ _cl_program** input_headers,
+ sbyte** header_include_names,
+ delegate* unmanaged<_cl_program*, void*, void> 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(
+ Ref<_cl_program> program,
+ uint num_devices,
+ Ref2D<_cl_device_id> device_list,
+ Ref options,
+ uint num_input_headers,
+ Ref2D<_cl_program> input_headers,
+ Ref2D header_include_names,
+ delegate* unmanaged<_cl_program*, void*, void> pfn_notify,
+ Ref user_data
+ )
+ {
+ fixed (void* __dsl_user_data = user_data)
+ fixed (sbyte** __dsl_header_include_names = header_include_names)
+ fixed (_cl_program** __dsl_input_headers = input_headers)
+ fixed (sbyte* __dsl_options = options)
+ fixed (_cl_device_id** __dsl_device_list = device_list)
+ fixed (_cl_program* __dsl_program = program)
+ {
+ return (int)CompileProgram(
+ __dsl_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 _cl_accelerator_intel* CreateAcceleratorINTEL(
+ _cl_context* 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 Ptr<_cl_accelerator_intel> CreateAcceleratorINTEL(
+ Ref<_cl_context> context,
+ uint accelerator_type,
+ nuint descriptor_size,
+ Ref descriptor,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_descriptor = descriptor)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_accelerator_intel*)CreateAcceleratorINTEL(
+ __dsl_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 _cl_mem* CreateBuffer(
+ _cl_context* 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 Ptr<_cl_mem> CreateBuffer(
+ Ref<_cl_context> 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)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_mem*)CreateBuffer(
+ __dsl_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 _cl_mem* CreateBufferWithProperties(
+ _cl_context* 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 Ptr<_cl_mem> CreateBufferWithProperties(
+ Ref<_cl_context> 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)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_mem*)CreateBufferWithProperties(
+ __dsl_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 _cl_mem* CreateBufferWithPropertiesINTEL(
+ _cl_context* 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 Ptr<_cl_mem> CreateBufferWithPropertiesINTEL(
+ Ref<_cl_context> 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)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_mem*)CreateBufferWithPropertiesINTEL(
+ __dsl_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 _cl_command_queue* CreateCommandQueue(
+ _cl_context* context,
+ _cl_device_id* 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 Ptr<_cl_command_queue> CreateCommandQueue(
+ Ref<_cl_context> context,
+ Ref<_cl_device_id> device,
+ ulong properties,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (_cl_device_id* __dsl_device = device)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_command_queue*)CreateCommandQueue(
+ __dsl_context,
+ __dsl_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 _cl_command_queue* CreateCommandQueueWithProperties(
+ _cl_context* context,
+ _cl_device_id* 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 Ptr<_cl_command_queue> CreateCommandQueueWithProperties(
+ Ref<_cl_context> context,
+ Ref<_cl_device_id> device,
+ Ref properties,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (ulong* __dsl_properties = properties)
+ fixed (_cl_device_id* __dsl_device = device)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_command_queue*)CreateCommandQueueWithProperties(
+ __dsl_context,
+ __dsl_device,
+ __dsl_properties,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateCommandQueueWithPropertiesKHR")]
+ [DllImport(
+ "opencl",
+ ExactSpelling = true,
+ EntryPoint = "clCreateCommandQueueWithPropertiesKHR"
+ )]
+ [SupportedApiProfile("opencl", ["cl_khr_create_command_queue"])]
+ public static extern _cl_command_queue* CreateCommandQueueWithPropertiesKHR(
+ _cl_context* context,
+ _cl_device_id* 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 Ptr<_cl_command_queue> CreateCommandQueueWithPropertiesKHR(
+ Ref<_cl_context> context,
+ Ref<_cl_device_id> device,
+ Ref properties,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (ulong* __dsl_properties = properties)
+ fixed (_cl_device_id* __dsl_device = device)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_command_queue*)CreateCommandQueueWithPropertiesKHR(
+ __dsl_context,
+ __dsl_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 _cl_context* CreateContext(
+ nint* properties,
+ uint num_devices,
+ _cl_device_id** 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 Ptr<_cl_context> CreateContext(
+ Ref properties,
+ uint num_devices,
+ Ref2D<_cl_device_id> 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 (_cl_device_id** __dsl_devices = devices)
+ fixed (nint* __dsl_properties = properties)
+ {
+ return (_cl_context*)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 _cl_context* 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 Ptr<_cl_context> 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 (_cl_context*)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 _cl_mem* CreateImage(
+ _cl_context* 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 Ptr<_cl_mem> CreateImage(
+ Ref<_cl_context> 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)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_mem*)CreateImage(
+ __dsl_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 _cl_mem* CreateImage2D(
+ _cl_context* 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 Ptr<_cl_mem> CreateImage2D(
+ Ref<_cl_context> 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)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_mem*)CreateImage2D(
+ __dsl_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 _cl_mem* CreateImage3D(
+ _cl_context* 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 Ptr<_cl_mem> CreateImage3D(
+ Ref<_cl_context> 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)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_mem*)CreateImage3D(
+ __dsl_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 _cl_mem* CreateImageWithProperties(
+ _cl_context* 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 Ptr<_cl_mem> CreateImageWithProperties(
+ Ref<_cl_context> 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)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_mem*)CreateImageWithProperties(
+ __dsl_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 _cl_kernel* CreateKernel(
+ _cl_program* 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 Ptr<_cl_kernel> CreateKernel(
+ Ref<_cl_program> program,
+ Ref kernel_name,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (sbyte* __dsl_kernel_name = kernel_name)
+ fixed (_cl_program* __dsl_program = program)
+ {
+ return (_cl_kernel*)CreateKernel(
+ __dsl_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(
+ _cl_program* program,
+ uint num_kernels,
+ _cl_kernel** 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(
+ Ref<_cl_program> program,
+ uint num_kernels,
+ Ref2D<_cl_kernel> kernels,
+ Ref num_kernels_ret
+ )
+ {
+ fixed (uint* __dsl_num_kernels_ret = num_kernels_ret)
+ fixed (_cl_kernel** __dsl_kernels = kernels)
+ fixed (_cl_program* __dsl_program = program)
+ {
+ return (int)CreateKernelsInProgram(
+ __dsl_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 _cl_mem* CreatePipe(
+ _cl_context* 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 Ptr<_cl_mem> CreatePipe(
+ Ref<_cl_context> 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)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_mem*)CreatePipe(
+ __dsl_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 _cl_program* CreateProgramWithBinary(
+ _cl_context* context,
+ uint num_devices,
+ _cl_device_id** 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 Ptr<_cl_program> CreateProgramWithBinary(
+ Ref<_cl_context> context,
+ uint num_devices,
+ Ref2D<_cl_device_id> 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 (_cl_device_id** __dsl_device_list = device_list)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_program*)CreateProgramWithBinary(
+ __dsl_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 _cl_program* CreateProgramWithBuiltInKernels(
+ _cl_context* context,
+ uint num_devices,
+ _cl_device_id** 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 Ptr<_cl_program> CreateProgramWithBuiltInKernels(
+ Ref<_cl_context> context,
+ uint num_devices,
+ Ref2D<_cl_device_id> device_list,
+ Ref kernel_names,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (sbyte* __dsl_kernel_names = kernel_names)
+ fixed (_cl_device_id** __dsl_device_list = device_list)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_program*)CreateProgramWithBuiltInKernels(
+ __dsl_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 _cl_program* CreateProgramWithIL(
+ _cl_context* 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 Ptr<_cl_program> CreateProgramWithIL(
+ Ref<_cl_context> context,
+ Ref il,
+ nuint length,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_il = il)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_program*)CreateProgramWithIL(
+ __dsl_context,
+ __dsl_il,
+ length,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clCreateProgramWithILKHR")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clCreateProgramWithILKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_il_program"])]
+ public static extern _cl_program* CreateProgramWithILKHR(
+ _cl_context* 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 Ptr<_cl_program> CreateProgramWithILKHR(
+ Ref<_cl_context> context,
+ Ref il,
+ nuint length,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_il = il)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_program*)CreateProgramWithILKHR(
+ __dsl_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 _cl_program* CreateProgramWithSource(
+ _cl_context* 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 Ptr<_cl_program> CreateProgramWithSource(
+ Ref<_cl_context> 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)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_program*)CreateProgramWithSource(
+ __dsl_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 _cl_sampler* CreateSampler(
+ _cl_context* 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 Ptr<_cl_sampler> CreateSampler(
+ Ref<_cl_context> context,
+ MaybeBool normalized_coords,
+ uint addressing_mode,
+ uint filter_mode,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_sampler*)CreateSampler(
+ __dsl_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 _cl_sampler* CreateSamplerWithProperties(
+ _cl_context* 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 Ptr<_cl_sampler> CreateSamplerWithProperties(
+ Ref<_cl_context> context,
+ Ref sampler_properties,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (ulong* __dsl_sampler_properties = sampler_properties)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_sampler*)CreateSamplerWithProperties(
+ __dsl_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 _cl_semaphore_khr* CreateSemaphoreWithPropertiesKHR(
+ _cl_context* 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 Ptr<_cl_semaphore_khr> CreateSemaphoreWithPropertiesKHR(
+ Ref<_cl_context> context,
+ Ref sema_props,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (ulong* __dsl_sema_props = sema_props)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_semaphore_khr*)CreateSemaphoreWithPropertiesKHR(
+ __dsl_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 _cl_mem* CreateSubBuffer(
+ _cl_mem* 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 Ptr<_cl_mem> CreateSubBuffer(
+ Ref<_cl_mem> 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)
+ fixed (_cl_mem* __dsl_buffer = buffer)
+ {
+ return (_cl_mem*)CreateSubBuffer(
+ __dsl_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(
+ _cl_device_id* in_device,
+ nint* properties,
+ uint num_devices,
+ _cl_device_id** 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(
+ Ref<_cl_device_id> in_device,
+ Ref properties,
+ uint num_devices,
+ Ref2D<_cl_device_id> out_devices,
+ Ref num_devices_ret
+ )
+ {
+ fixed (uint* __dsl_num_devices_ret = num_devices_ret)
+ fixed (_cl_device_id** __dsl_out_devices = out_devices)
+ fixed (nint* __dsl_properties = properties)
+ fixed (_cl_device_id* __dsl_in_device = in_device)
+ {
+ return (int)CreateSubDevices(
+ __dsl_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(
+ _cl_device_id* in_device,
+ ulong* properties,
+ uint num_entries,
+ _cl_device_id** 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(
+ Ref<_cl_device_id> in_device,
+ Ref properties,
+ uint num_entries,
+ Ref2D<_cl_device_id> out_devices,
+ Ref num_devices
+ )
+ {
+ fixed (uint* __dsl_num_devices = num_devices)
+ fixed (_cl_device_id** __dsl_out_devices = out_devices)
+ fixed (ulong* __dsl_properties = properties)
+ fixed (_cl_device_id* __dsl_in_device = in_device)
+ {
+ return (int)CreateSubDevicesEXT(
+ __dsl_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 _cl_event* CreateUserEvent(_cl_context* 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 Ptr<_cl_event> CreateUserEvent(Ref<_cl_context> context, Ref errcode_ret)
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_event*)CreateUserEvent(__dsl_context, __dsl_errcode_ret);
+ }
+ }
+
+ [NativeName("clDeviceMemAllocINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clDeviceMemAllocINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ public static extern void* DeviceMemAllocINTEL(
+ _cl_context* context,
+ _cl_device_id* 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(
+ Ref<_cl_context> context,
+ Ref<_cl_device_id> device,
+ Ref properties,
+ nuint size,
+ uint alignment,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (ulong* __dsl_properties = properties)
+ fixed (_cl_device_id* __dsl_device = device)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (void*)DeviceMemAllocINTEL(
+ __dsl_context,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ uint num_mem_objects,
+ _cl_mem** mem_objects,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ uint num_mem_objects,
+ Ref2D<_cl_mem> mem_objects,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (_cl_mem** __dsl_mem_objects = mem_objects)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueAcquireExternalMemObjectsKHR(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ uint num_objects,
+ _cl_mem** mem_objects,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueAcquireGrallocObjectsIMG")]
+ [SupportedApiProfile("opencl", ["cl_img_use_gralloc_ptr"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueAcquireGrallocObjectsIMG")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueAcquireGrallocObjectsIMG(
+ Ref<_cl_command_queue> command_queue,
+ uint num_objects,
+ Ref2D<_cl_mem> mem_objects,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (_cl_mem** __dsl_mem_objects = mem_objects)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueAcquireGrallocObjectsIMG(
+ __dsl_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(_cl_command_queue* command_queue);
+
+ [NativeName("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"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueBarrier")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueBarrier(Ref<_cl_command_queue> command_queue)
+ {
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueBarrier(__dsl_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(
+ _cl_command_queue* command_queue,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueBarrierWithWaitList(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_mem* src_buffer,
+ _cl_mem* dst_buffer,
+ nuint src_offset,
+ nuint dst_offset,
+ nuint size,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> src_buffer,
+ Ref<_cl_mem> dst_buffer,
+ nuint src_offset,
+ nuint dst_offset,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (_cl_mem* __dsl_dst_buffer = dst_buffer)
+ fixed (_cl_mem* __dsl_src_buffer = src_buffer)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueCopyBuffer(
+ __dsl_command_queue,
+ __dsl_src_buffer,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_mem* src_buffer,
+ _cl_mem* 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,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> src_buffer,
+ Ref<_cl_mem> 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,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __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)
+ fixed (_cl_mem* __dsl_dst_buffer = dst_buffer)
+ fixed (_cl_mem* __dsl_src_buffer = src_buffer)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueCopyBufferRect(
+ __dsl_command_queue,
+ __dsl_src_buffer,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_mem* src_buffer,
+ _cl_mem* dst_image,
+ nuint src_offset,
+ nuint* dst_origin,
+ nuint* region,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> src_buffer,
+ Ref<_cl_mem> dst_image,
+ nuint src_offset,
+ Ref dst_origin,
+ Ref region,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (nuint* __dsl_region = region)
+ fixed (nuint* __dsl_dst_origin = dst_origin)
+ fixed (_cl_mem* __dsl_dst_image = dst_image)
+ fixed (_cl_mem* __dsl_src_buffer = src_buffer)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueCopyBufferToImage(
+ __dsl_command_queue,
+ __dsl_src_buffer,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_mem* src_image,
+ _cl_mem* dst_image,
+ nuint* src_origin,
+ nuint* dst_origin,
+ nuint* region,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> src_image,
+ Ref<_cl_mem> dst_image,
+ Ref src_origin,
+ Ref dst_origin,
+ Ref region,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __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)
+ fixed (_cl_mem* __dsl_dst_image = dst_image)
+ fixed (_cl_mem* __dsl_src_image = src_image)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueCopyImage(
+ __dsl_command_queue,
+ __dsl_src_image,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_mem* src_image,
+ _cl_mem* dst_buffer,
+ nuint* src_origin,
+ nuint* region,
+ nuint dst_offset,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> src_image,
+ Ref<_cl_mem> dst_buffer,
+ Ref src_origin,
+ Ref region,
+ nuint dst_offset,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (nuint* __dsl_region = region)
+ fixed (nuint* __dsl_src_origin = src_origin)
+ fixed (_cl_mem* __dsl_dst_buffer = dst_buffer)
+ fixed (_cl_mem* __dsl_src_image = src_image)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueCopyImageToBuffer(
+ __dsl_command_queue,
+ __dsl_src_image,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_mem* buffer,
+ void* pattern,
+ nuint pattern_size,
+ nuint offset,
+ nuint size,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> buffer,
+ Ref pattern,
+ nuint pattern_size,
+ nuint offset,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_pattern = pattern)
+ fixed (_cl_mem* __dsl_buffer = buffer)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueFillBuffer(
+ __dsl_command_queue,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_mem* image,
+ void* fill_color,
+ nuint* origin,
+ nuint* region,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> image,
+ Ref fill_color,
+ Ref origin,
+ Ref region,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (nuint* __dsl_region = region)
+ fixed (nuint* __dsl_origin = origin)
+ fixed (void* __dsl_fill_color = fill_color)
+ fixed (_cl_mem* __dsl_image = image)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueFillImage(
+ __dsl_command_queue,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_mem* src_image,
+ _cl_mem* dst_image,
+ uint mipmap_filter_mode,
+ nuint* array_region,
+ nuint* mip_region,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueGenerateMipmapIMG")]
+ [SupportedApiProfile("opencl", ["cl_img_generate_mipmap"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueGenerateMipmapIMG")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueGenerateMipmapIMG(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> src_image,
+ Ref<_cl_mem> dst_image,
+ uint mipmap_filter_mode,
+ Ref array_region,
+ Ref mip_region,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (nuint* __dsl_mip_region = mip_region)
+ fixed (nuint* __dsl_array_region = array_region)
+ fixed (_cl_mem* __dsl_dst_image = dst_image)
+ fixed (_cl_mem* __dsl_src_image = src_image)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueGenerateMipmapIMG(
+ __dsl_command_queue,
+ __dsl_src_image,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_mem* buffer,
+ uint blocking_map,
+ ulong map_flags,
+ nuint offset,
+ nuint size,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> buffer,
+ MaybeBool blocking_map,
+ ulong map_flags,
+ nuint offset,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (_cl_mem* __dsl_buffer = buffer)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (void*)EnqueueMapBuffer(
+ __dsl_command_queue,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_mem* 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,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> 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,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __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)
+ fixed (_cl_mem* __dsl_image = image)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (void*)EnqueueMapImage(
+ __dsl_command_queue,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueMarker(__dsl_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(
+ _cl_command_queue* command_queue,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueMarkerWithWaitList(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ void* ptr,
+ nuint size,
+ uint advice,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueMemAdviseINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMemAdviseINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueMemAdviseINTEL(
+ Ref<_cl_command_queue> command_queue,
+ Ref ptr,
+ nuint size,
+ uint advice,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_ptr = ptr)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueMemAdviseINTEL(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ uint blocking,
+ void* dst_ptr,
+ void* src_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueMemcpyINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMemcpyINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueMemcpyINTEL(
+ Ref<_cl_command_queue> command_queue,
+ MaybeBool blocking,
+ Ref dst_ptr,
+ Ref src_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_src_ptr = src_ptr)
+ fixed (void* __dsl_dst_ptr = dst_ptr)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueMemcpyINTEL(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ void* dst_ptr,
+ void* pattern,
+ nuint pattern_size,
+ nuint size,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueMemFillINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMemFillINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueMemFillINTEL(
+ Ref<_cl_command_queue> command_queue,
+ Ref dst_ptr,
+ Ref pattern,
+ nuint pattern_size,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_pattern = pattern)
+ fixed (void* __dsl_dst_ptr = dst_ptr)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueMemFillINTEL(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ void* dst_ptr,
+ int value,
+ nuint size,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueMemsetINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMemsetINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueMemsetINTEL(
+ Ref<_cl_command_queue> command_queue,
+ Ref dst_ptr,
+ int value,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_dst_ptr = dst_ptr)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueMemsetINTEL(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ void* ptr,
+ nuint size,
+ ulong flags,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueMigrateMemINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMigrateMemINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueMigrateMemINTEL(
+ Ref<_cl_command_queue> command_queue,
+ Ref ptr,
+ nuint size,
+ ulong flags,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_ptr = ptr)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueMigrateMemINTEL(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ uint num_mem_objects,
+ _cl_mem** mem_objects,
+ ulong flags,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueMigrateMemObjectEXT")]
+ [SupportedApiProfile("opencl", ["cl_ext_migrate_memobject"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueMigrateMemObjectEXT")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueMigrateMemObjectEXT(
+ Ref<_cl_command_queue> command_queue,
+ uint num_mem_objects,
+ Ref2D<_cl_mem> mem_objects,
+ ulong flags,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (_cl_mem** __dsl_mem_objects = mem_objects)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueMigrateMemObjectEXT(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ uint num_mem_objects,
+ _cl_mem** mem_objects,
+ ulong flags,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ uint num_mem_objects,
+ Ref2D<_cl_mem> mem_objects,
+ ulong flags,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (_cl_mem** __dsl_mem_objects = mem_objects)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueMigrateMemObjects(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ delegate* unmanaged user_func,
+ void* args,
+ nuint cb_args,
+ uint num_mem_objects,
+ _cl_mem** mem_list,
+ void** args_mem_loc,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ delegate* unmanaged user_func,
+ Ref args,
+ nuint cb_args,
+ uint num_mem_objects,
+ Ref2D<_cl_mem> mem_list,
+ Ref2D args_mem_loc,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void** __dsl_args_mem_loc = args_mem_loc)
+ fixed (_cl_mem** __dsl_mem_list = mem_list)
+ fixed (void* __dsl_args = args)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueNativeKernel(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_kernel* kernel,
+ uint work_dim,
+ nuint* global_work_offset,
+ nuint* global_work_size,
+ nuint* local_work_size,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_kernel> kernel,
+ uint work_dim,
+ Ref global_work_offset,
+ Ref global_work_size,
+ Ref local_work_size,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __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)
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueNDRangeKernel(
+ __dsl_command_queue,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_mem* buffer,
+ uint blocking_read,
+ nuint offset,
+ nuint size,
+ void* ptr,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> buffer,
+ MaybeBool blocking_read,
+ nuint offset,
+ nuint size,
+ Ref ptr,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_ptr = ptr)
+ fixed (_cl_mem* __dsl_buffer = buffer)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueReadBuffer(
+ __dsl_command_queue,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_mem* 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,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> 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,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __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)
+ fixed (_cl_mem* __dsl_buffer = buffer)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueReadBufferRect(
+ __dsl_command_queue,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_program* program,
+ sbyte* pipe_symbol,
+ uint blocking_read,
+ void* ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueReadHostPipeINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_program_scope_host_pipe"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueReadHostPipeINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueReadHostPipeINTEL(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_program> program,
+ Ref pipe_symbol,
+ MaybeBool blocking_read,
+ Ref ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_ptr = ptr)
+ fixed (sbyte* __dsl_pipe_symbol = pipe_symbol)
+ fixed (_cl_program* __dsl_program = program)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueReadHostPipeINTEL(
+ __dsl_command_queue,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ _cl_mem* image,
+ uint blocking_read,
+ nuint* origin,
+ nuint* region,
+ nuint row_pitch,
+ nuint slice_pitch,
+ void* ptr,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> image,
+ MaybeBool blocking_read,
+ Ref origin,
+ Ref region,
+ nuint row_pitch,
+ nuint slice_pitch,
+ Ref ptr,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_ptr = ptr)
+ fixed (nuint* __dsl_region = region)
+ fixed (nuint* __dsl_origin = origin)
+ fixed (_cl_mem* __dsl_image = image)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueReadImage(
+ __dsl_command_queue,
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ uint num_mem_objects,
+ _cl_mem** mem_objects,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ uint num_mem_objects,
+ Ref2D<_cl_mem> mem_objects,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (_cl_mem** __dsl_mem_objects = mem_objects)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueReleaseExternalMemObjectsKHR(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ uint num_objects,
+ _cl_mem** mem_objects,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueReleaseGrallocObjectsIMG")]
+ [SupportedApiProfile("opencl", ["cl_img_use_gralloc_ptr"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueReleaseGrallocObjectsIMG")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueReleaseGrallocObjectsIMG(
+ Ref<_cl_command_queue> command_queue,
+ uint num_objects,
+ Ref2D<_cl_mem> mem_objects,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (_cl_mem** __dsl_mem_objects = mem_objects)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueReleaseGrallocObjectsIMG(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ uint num_sema_objects,
+ _cl_semaphore_khr** sema_objects,
+ ulong* sema_payload_list,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ uint num_sema_objects,
+ Ref2D<_cl_semaphore_khr> sema_objects,
+ Ref sema_payload_list,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (ulong* __dsl_sema_payload_list = sema_payload_list)
+ fixed (_cl_semaphore_khr** __dsl_sema_objects = sema_objects)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueSignalSemaphoresKHR(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ uint num_svm_pointers,
+ void** svm_pointers,
+ delegate* unmanaged<_cl_command_queue*, uint, void**, void*, void> pfn_free_func,
+ void* user_data,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ uint num_svm_pointers,
+ Ref2D svm_pointers,
+ delegate* unmanaged<_cl_command_queue*, uint, void**, void*, void> pfn_free_func,
+ Ref user_data,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_user_data = user_data)
+ fixed (void** __dsl_svm_pointers = svm_pointers)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueSvmFree(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ uint num_svm_pointers,
+ void** svm_pointers,
+ delegate* unmanaged<_cl_command_queue*, uint, void**, void*, void> pfn_free_func,
+ void* user_data,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueSVMFreeARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueSVMFreeARM")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueSvmFreeARM(
+ Ref<_cl_command_queue> command_queue,
+ uint num_svm_pointers,
+ Ref2D svm_pointers,
+ delegate* unmanaged<_cl_command_queue*, uint, void**, void*, void> pfn_free_func,
+ Ref user_data,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_user_data = user_data)
+ fixed (void** __dsl_svm_pointers = svm_pointers)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueSvmFreeARM(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ uint blocking_map,
+ ulong flags,
+ void* svm_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ MaybeBool blocking_map,
+ ulong flags,
+ Ref svm_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_svm_ptr = svm_ptr)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueSvmMap(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ uint blocking_map,
+ ulong flags,
+ void* svm_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueSVMMapARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueSVMMapARM")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueSvmMapARM(
+ Ref<_cl_command_queue> command_queue,
+ MaybeBool blocking_map,
+ ulong flags,
+ Ref svm_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_svm_ptr = svm_ptr)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueSvmMapARM(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ uint blocking_copy,
+ void* dst_ptr,
+ void* src_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ MaybeBool blocking_copy,
+ Ref dst_ptr,
+ Ref src_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_src_ptr = src_ptr)
+ fixed (void* __dsl_dst_ptr = dst_ptr)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueSvmMemcpy(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ uint blocking_copy,
+ void* dst_ptr,
+ void* src_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueSVMMemcpyARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueSVMMemcpyARM")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueSvmMemcpyARM(
+ Ref<_cl_command_queue> command_queue,
+ MaybeBool blocking_copy,
+ Ref dst_ptr,
+ Ref src_ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_src_ptr = src_ptr)
+ fixed (void* __dsl_dst_ptr = dst_ptr)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueSvmMemcpyARM(
+ __dsl_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(
+ _cl_command_queue* command_queue,
+ void* svm_ptr,
+ void* pattern,
+ nuint pattern_size,
+ nuint size,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @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(
+ Ref<_cl_command_queue> command_queue,
+ Ref svm_ptr,
+ Ref pattern,
+ nuint pattern_size,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_pattern = pattern)
+ fixed (void* __dsl_svm_ptr = svm_ptr)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueSvmMemFill(
+ __dsl_command_queue,
+ __dsl_svm_ptr,
+ __dsl_pattern,
+ pattern_size,
+ size,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueSVMMemFillARM")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueSVMMemFillARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ public static extern int EnqueueSvmMemFillARM(
+ _cl_command_queue* command_queue,
+ void* svm_ptr,
+ void* pattern,
+ nuint pattern_size,
+ nuint size,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueSVMMemFillARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueSVMMemFillARM")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueSvmMemFillARM(
+ Ref<_cl_command_queue> command_queue,
+ Ref svm_ptr,
+ Ref pattern,
+ nuint pattern_size,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_pattern = pattern)
+ fixed (void* __dsl_svm_ptr = svm_ptr)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueSvmMemFillARM(
+ __dsl_command_queue,
+ __dsl_svm_ptr,
+ __dsl_pattern,
+ pattern_size,
+ size,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueSVMMigrateMem")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueSVMMigrateMem")]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_1", "CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.1"
+ )]
+ public static extern int EnqueueSvmMigrateMem(
+ _cl_command_queue* command_queue,
+ uint num_svm_pointers,
+ void** svm_pointers,
+ nuint* sizes,
+ ulong flags,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueSVMMigrateMem")]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_1", "CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.1"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueSVMMigrateMem")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueSvmMigrateMem(
+ Ref<_cl_command_queue> command_queue,
+ uint num_svm_pointers,
+ Ref2D svm_pointers,
+ Ref sizes,
+ ulong flags,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (nuint* __dsl_sizes = sizes)
+ fixed (void** __dsl_svm_pointers = svm_pointers)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueSvmMigrateMem(
+ __dsl_command_queue,
+ num_svm_pointers,
+ __dsl_svm_pointers,
+ __dsl_sizes,
+ flags,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueSVMUnmap")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueSVMUnmap")]
+ [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 EnqueueSvmUnmap(
+ _cl_command_queue* command_queue,
+ void* svm_ptr,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueSVMUnmap")]
+ [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 = "clEnqueueSVMUnmap")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueSvmUnmap(
+ Ref<_cl_command_queue> command_queue,
+ Ref svm_ptr,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_svm_ptr = svm_ptr)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueSvmUnmap(
+ __dsl_command_queue,
+ __dsl_svm_ptr,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueSVMUnmapARM")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueSVMUnmapARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ public static extern int EnqueueSvmUnmapARM(
+ _cl_command_queue* command_queue,
+ void* svm_ptr,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueSVMUnmapARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueSVMUnmapARM")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueSvmUnmapARM(
+ Ref<_cl_command_queue> command_queue,
+ Ref svm_ptr,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_svm_ptr = svm_ptr)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueSvmUnmapARM(
+ __dsl_command_queue,
+ __dsl_svm_ptr,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueTask")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueTask")]
+ [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 EnqueueTask(
+ _cl_command_queue* command_queue,
+ _cl_kernel* kernel,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueTask")]
+ [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 = "clEnqueueTask")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueTask(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_kernel> kernel,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueTask(
+ __dsl_command_queue,
+ __dsl_kernel,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueUnmapMemObject")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueUnmapMemObject")]
+ [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 EnqueueUnmapMemObject(
+ _cl_command_queue* command_queue,
+ _cl_mem* memobj,
+ void* mapped_ptr,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueUnmapMemObject")]
+ [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 = "clEnqueueUnmapMemObject")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueUnmapMemObject(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> memobj,
+ Ref mapped_ptr,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_mapped_ptr = mapped_ptr)
+ fixed (_cl_mem* __dsl_memobj = memobj)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueUnmapMemObject(
+ __dsl_command_queue,
+ __dsl_memobj,
+ __dsl_mapped_ptr,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueWaitForEvents")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueWaitForEvents")]
+ [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 EnqueueWaitForEvents(
+ _cl_command_queue* command_queue,
+ uint num_events,
+ _cl_event** event_list
+ );
+
+ [NativeName("clEnqueueWaitForEvents")]
+ [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 = "clEnqueueWaitForEvents")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueWaitForEvents(
+ Ref<_cl_command_queue> command_queue,
+ uint num_events,
+ Ref2D<_cl_event> event_list
+ )
+ {
+ fixed (_cl_event** __dsl_event_list = event_list)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueWaitForEvents(__dsl_command_queue, num_events, __dsl_event_list);
+ }
+ }
+
+ [NativeName("clEnqueueWaitSemaphoresKHR")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueWaitSemaphoresKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_semaphore"], ImpliesSets = ["CL_VERSION_1_2"])]
+ public static extern int EnqueueWaitSemaphoresKHR(
+ _cl_command_queue* command_queue,
+ uint num_sema_objects,
+ _cl_semaphore_khr** sema_objects,
+ ulong* sema_payload_list,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueWaitSemaphoresKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_semaphore"], ImpliesSets = ["CL_VERSION_1_2"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueWaitSemaphoresKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueWaitSemaphoresKHR(
+ Ref<_cl_command_queue> command_queue,
+ uint num_sema_objects,
+ Ref2D<_cl_semaphore_khr> sema_objects,
+ Ref sema_payload_list,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (ulong* __dsl_sema_payload_list = sema_payload_list)
+ fixed (_cl_semaphore_khr** __dsl_sema_objects = sema_objects)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueWaitSemaphoresKHR(
+ __dsl_command_queue,
+ num_sema_objects,
+ __dsl_sema_objects,
+ __dsl_sema_payload_list,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueWriteBuffer")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueWriteBuffer")]
+ [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 EnqueueWriteBuffer(
+ _cl_command_queue* command_queue,
+ _cl_mem* buffer,
+ uint blocking_write,
+ nuint offset,
+ nuint size,
+ void* ptr,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueWriteBuffer")]
+ [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 = "clEnqueueWriteBuffer")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueWriteBuffer(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> buffer,
+ MaybeBool blocking_write,
+ nuint offset,
+ nuint size,
+ Ref ptr,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_ptr = ptr)
+ fixed (_cl_mem* __dsl_buffer = buffer)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueWriteBuffer(
+ __dsl_command_queue,
+ __dsl_buffer,
+ (uint)blocking_write,
+ offset,
+ size,
+ __dsl_ptr,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueWriteBufferRect")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueWriteBufferRect")]
+ [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 EnqueueWriteBufferRect(
+ _cl_command_queue* command_queue,
+ _cl_mem* buffer,
+ uint blocking_write,
+ 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,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueWriteBufferRect")]
+ [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 = "clEnqueueWriteBufferRect")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueWriteBufferRect(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> buffer,
+ MaybeBool blocking_write,
+ 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,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __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)
+ fixed (_cl_mem* __dsl_buffer = buffer)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueWriteBufferRect(
+ __dsl_command_queue,
+ __dsl_buffer,
+ (uint)blocking_write,
+ __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("clEnqueueWriteHostPipeINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueWriteHostPipeINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_program_scope_host_pipe"])]
+ public static extern int EnqueueWriteHostPipeINTEL(
+ _cl_command_queue* command_queue,
+ _cl_program* program,
+ sbyte* pipe_symbol,
+ uint blocking_write,
+ void* ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueWriteHostPipeINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_program_scope_host_pipe"])]
+ [NativeFunction("opencl", EntryPoint = "clEnqueueWriteHostPipeINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueWriteHostPipeINTEL(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_program> program,
+ Ref pipe_symbol,
+ MaybeBool blocking_write,
+ Ref ptr,
+ nuint size,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_ptr = ptr)
+ fixed (sbyte* __dsl_pipe_symbol = pipe_symbol)
+ fixed (_cl_program* __dsl_program = program)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueWriteHostPipeINTEL(
+ __dsl_command_queue,
+ __dsl_program,
+ __dsl_pipe_symbol,
+ (uint)blocking_write,
+ __dsl_ptr,
+ size,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clEnqueueWriteImage")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clEnqueueWriteImage")]
+ [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 EnqueueWriteImage(
+ _cl_command_queue* command_queue,
+ _cl_mem* image,
+ uint blocking_write,
+ nuint* origin,
+ nuint* region,
+ nuint input_row_pitch,
+ nuint input_slice_pitch,
+ void* ptr,
+ uint num_events_in_wait_list,
+ _cl_event** event_wait_list,
+ _cl_event** @event
+ );
+
+ [NativeName("clEnqueueWriteImage")]
+ [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 = "clEnqueueWriteImage")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int EnqueueWriteImage(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_mem> image,
+ MaybeBool blocking_write,
+ Ref origin,
+ Ref region,
+ nuint input_row_pitch,
+ nuint input_slice_pitch,
+ Ref ptr,
+ uint num_events_in_wait_list,
+ Ref2D<_cl_event> event_wait_list,
+ Ref2D<_cl_event> @event
+ )
+ {
+ fixed (_cl_event** __dsl_event = @event)
+ fixed (_cl_event** __dsl_event_wait_list = event_wait_list)
+ fixed (void* __dsl_ptr = ptr)
+ fixed (nuint* __dsl_region = region)
+ fixed (nuint* __dsl_origin = origin)
+ fixed (_cl_mem* __dsl_image = image)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)EnqueueWriteImage(
+ __dsl_command_queue,
+ __dsl_image,
+ (uint)blocking_write,
+ __dsl_origin,
+ __dsl_region,
+ input_row_pitch,
+ input_slice_pitch,
+ __dsl_ptr,
+ num_events_in_wait_list,
+ __dsl_event_wait_list,
+ __dsl_event
+ );
+ }
+ }
+
+ [NativeName("clFinish")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clFinish")]
+ [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 Finish(_cl_command_queue* command_queue);
+
+ [NativeName("clFinish")]
+ [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 = "clFinish")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int Finish(Ref<_cl_command_queue> command_queue)
+ {
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)Finish(__dsl_command_queue);
+ }
+ }
+
+ [NativeName("clFlush")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clFlush")]
+ [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 Flush(_cl_command_queue* command_queue);
+
+ [NativeName("clFlush")]
+ [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 = "clFlush")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int Flush(Ref<_cl_command_queue> command_queue)
+ {
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)Flush(__dsl_command_queue);
+ }
+ }
+
+ [NativeName("clGetAcceleratorInfoINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetAcceleratorInfoINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_accelerator"])]
+ public static extern int GetAcceleratorInfoINTEL(
+ _cl_accelerator_intel* accelerator,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetAcceleratorInfoINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_accelerator"])]
+ [NativeFunction("opencl", EntryPoint = "clGetAcceleratorInfoINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetAcceleratorInfoINTEL(
+ Ref<_cl_accelerator_intel> accelerator,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_accelerator_intel* __dsl_accelerator = accelerator)
+ {
+ return (int)GetAcceleratorInfoINTEL(
+ __dsl_accelerator,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetCommandQueueInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetCommandQueueInfo")]
+ [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 GetCommandQueueInfo(
+ _cl_command_queue* command_queue,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetCommandQueueInfo")]
+ [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 = "clGetCommandQueueInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetCommandQueueInfo(
+ Ref<_cl_command_queue> command_queue,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)GetCommandQueueInfo(
+ __dsl_command_queue,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetContextInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetContextInfo")]
+ [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 GetContextInfo(
+ _cl_context* context,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetContextInfo")]
+ [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 = "clGetContextInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetContextInfo(
+ Ref<_cl_context> context,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (int)GetContextInfo(
+ __dsl_context,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetDeviceAndHostTimer")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetDeviceAndHostTimer")]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_1", "CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.1"
+ )]
+ public static extern int GetDeviceAndHostTimer(
+ _cl_device_id* device,
+ ulong* device_timestamp,
+ ulong* host_timestamp
+ );
+
+ [NativeName("clGetDeviceAndHostTimer")]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_1", "CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.1"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clGetDeviceAndHostTimer")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetDeviceAndHostTimer(
+ Ref<_cl_device_id> device,
+ Ref device_timestamp,
+ Ref host_timestamp
+ )
+ {
+ fixed (ulong* __dsl_host_timestamp = host_timestamp)
+ fixed (ulong* __dsl_device_timestamp = device_timestamp)
+ fixed (_cl_device_id* __dsl_device = device)
+ {
+ return (int)GetDeviceAndHostTimer(
+ __dsl_device,
+ __dsl_device_timestamp,
+ __dsl_host_timestamp
+ );
+ }
+ }
+
+ [NativeName("clGetDeviceIDs")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetDeviceIDs")]
+ [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 GetDeviceIDs(
+ _cl_platform_id* platform,
+ ulong device_type,
+ uint num_entries,
+ _cl_device_id** devices,
+ uint* num_devices
+ );
+
+ [NativeName("clGetDeviceIDs")]
+ [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 = "clGetDeviceIDs")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetDeviceIDs(
+ Ref<_cl_platform_id> platform,
+ ulong device_type,
+ uint num_entries,
+ Ref2D<_cl_device_id> devices,
+ Ref num_devices
+ )
+ {
+ fixed (uint* __dsl_num_devices = num_devices)
+ fixed (_cl_device_id** __dsl_devices = devices)
+ fixed (_cl_platform_id* __dsl_platform = platform)
+ {
+ return (int)GetDeviceIDs(
+ __dsl_platform,
+ device_type,
+ num_entries,
+ __dsl_devices,
+ __dsl_num_devices
+ );
+ }
+ }
+
+ [NativeName("clGetDeviceImageInfoQCOM")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetDeviceImageInfoQCOM")]
+ [SupportedApiProfile("opencl", ["cl_qcom_ext_host_ptr"])]
+ public static extern int GetDeviceImageInfoQCOM(
+ _cl_device_id* device,
+ nuint image_width,
+ nuint image_height,
+ ImageFormat* image_format,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetDeviceImageInfoQCOM")]
+ [SupportedApiProfile("opencl", ["cl_qcom_ext_host_ptr"])]
+ [NativeFunction("opencl", EntryPoint = "clGetDeviceImageInfoQCOM")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetDeviceImageInfoQCOM(
+ Ref<_cl_device_id> device,
+ nuint image_width,
+ nuint image_height,
+ Ref image_format,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (ImageFormat* __dsl_image_format = image_format)
+ fixed (_cl_device_id* __dsl_device = device)
+ {
+ return (int)GetDeviceImageInfoQCOM(
+ __dsl_device,
+ image_width,
+ image_height,
+ __dsl_image_format,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetDeviceInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetDeviceInfo")]
+ [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 GetDeviceInfo(
+ _cl_device_id* device,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetDeviceInfo")]
+ [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 = "clGetDeviceInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetDeviceInfo(
+ Ref<_cl_device_id> device,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_device_id* __dsl_device = device)
+ {
+ return (int)GetDeviceInfo(
+ __dsl_device,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetEventInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetEventInfo")]
+ [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 GetEventInfo(
+ _cl_event* @event,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetEventInfo")]
+ [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 = "clGetEventInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetEventInfo(
+ Ref<_cl_event> @event,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_event* __dsl_event = @event)
+ {
+ return (int)GetEventInfo(
+ __dsl_event,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetEventProfilingInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetEventProfilingInfo")]
+ [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 GetEventProfilingInfo(
+ _cl_event* @event,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetEventProfilingInfo")]
+ [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 = "clGetEventProfilingInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetEventProfilingInfo(
+ Ref<_cl_event> @event,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_event* __dsl_event = @event)
+ {
+ return (int)GetEventProfilingInfo(
+ __dsl_event,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetExtensionFunctionAddress")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetExtensionFunctionAddress")]
+ [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 void* GetExtensionFunctionAddress(sbyte* func_name);
+
+ [NativeName("clGetExtensionFunctionAddress")]
+ [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 = "clGetExtensionFunctionAddress")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static Ptr GetExtensionFunctionAddress(Ref func_name)
+ {
+ fixed (sbyte* __dsl_func_name = func_name)
+ {
+ return (void*)GetExtensionFunctionAddress(__dsl_func_name);
+ }
+ }
+
+ [NativeName("clGetExtensionFunctionAddressForPlatform")]
+ [DllImport(
+ "opencl",
+ ExactSpelling = true,
+ EntryPoint = "clGetExtensionFunctionAddressForPlatform"
+ )]
+ [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 void* GetExtensionFunctionAddressForPlatform(
+ _cl_platform_id* platform,
+ sbyte* func_name
+ );
+
+ [NativeName("clGetExtensionFunctionAddressForPlatform")]
+ [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 = "clGetExtensionFunctionAddressForPlatform")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static Ptr GetExtensionFunctionAddressForPlatform(
+ Ref<_cl_platform_id> platform,
+ Ref func_name
+ )
+ {
+ fixed (sbyte* __dsl_func_name = func_name)
+ fixed (_cl_platform_id* __dsl_platform = platform)
+ {
+ return (void*)GetExtensionFunctionAddressForPlatform(
+ __dsl_platform,
+ __dsl_func_name
+ );
+ }
+ }
+
+ [NativeName("clGetHostTimer")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetHostTimer")]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_1", "CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.1"
+ )]
+ public static extern int GetHostTimer(_cl_device_id* device, ulong* host_timestamp);
+
+ [NativeName("clGetHostTimer")]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_1", "CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.1"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clGetHostTimer")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetHostTimer(Ref<_cl_device_id> device, Ref host_timestamp)
+ {
+ fixed (ulong* __dsl_host_timestamp = host_timestamp)
+ fixed (_cl_device_id* __dsl_device = device)
+ {
+ return (int)GetHostTimer(__dsl_device, __dsl_host_timestamp);
+ }
+ }
+
+ [NativeName("clGetICDLoaderInfoOCLICD")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetICDLoaderInfoOCLICD")]
+ [SupportedApiProfile("opencl", ["cl_loader_info"])]
+ public static extern int GetIcdLoaderInfoOclicd(
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetICDLoaderInfoOCLICD")]
+ [SupportedApiProfile("opencl", ["cl_loader_info"])]
+ [NativeFunction("opencl", EntryPoint = "clGetICDLoaderInfoOCLICD")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetIcdLoaderInfoOclicd(
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ {
+ return (int)GetIcdLoaderInfoOclicd(
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetImageInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetImageInfo")]
+ [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 GetImageInfo(
+ _cl_mem* image,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetImageInfo")]
+ [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 = "clGetImageInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetImageInfo(
+ Ref<_cl_mem> image,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_mem* __dsl_image = image)
+ {
+ return (int)GetImageInfo(
+ __dsl_image,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetImageRequirementsInfoEXT")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetImageRequirementsInfoEXT")]
+ [SupportedApiProfile(
+ "opencl",
+ ["cl_ext_image_requirements_info"],
+ ImpliesSets = ["CL_VERSION_3_0"]
+ )]
+ public static extern int GetImageRequirementsInfoEXT(
+ _cl_context* context,
+ ulong* properties,
+ ulong flags,
+ ImageFormat* image_format,
+ ImageDesc* image_desc,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetImageRequirementsInfoEXT")]
+ [SupportedApiProfile(
+ "opencl",
+ ["cl_ext_image_requirements_info"],
+ ImpliesSets = ["CL_VERSION_3_0"]
+ )]
+ [NativeFunction("opencl", EntryPoint = "clGetImageRequirementsInfoEXT")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetImageRequirementsInfoEXT(
+ Ref<_cl_context> context,
+ Ref properties,
+ ulong flags,
+ Ref image_format,
+ Ref image_desc,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (ImageDesc* __dsl_image_desc = image_desc)
+ fixed (ImageFormat* __dsl_image_format = image_format)
+ fixed (ulong* __dsl_properties = properties)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (int)GetImageRequirementsInfoEXT(
+ __dsl_context,
+ __dsl_properties,
+ flags,
+ __dsl_image_format,
+ __dsl_image_desc,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetKernelArgInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetKernelArgInfo")]
+ [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 GetKernelArgInfo(
+ _cl_kernel* kernel,
+ uint arg_indx,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetKernelArgInfo")]
+ [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 = "clGetKernelArgInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetKernelArgInfo(
+ Ref<_cl_kernel> kernel,
+ uint arg_indx,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ {
+ return (int)GetKernelArgInfo(
+ __dsl_kernel,
+ arg_indx,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetKernelInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetKernelInfo")]
+ [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 GetKernelInfo(
+ _cl_kernel* kernel,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetKernelInfo")]
+ [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 = "clGetKernelInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetKernelInfo(
+ Ref<_cl_kernel> kernel,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ {
+ return (int)GetKernelInfo(
+ __dsl_kernel,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetKernelSubGroupInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetKernelSubGroupInfo")]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_1", "CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.1"
+ )]
+ public static extern int GetKernelSubGroupInfo(
+ _cl_kernel* kernel,
+ _cl_device_id* device,
+ uint param_name,
+ nuint input_value_size,
+ void* input_value,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetKernelSubGroupInfo")]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_1", "CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.1"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clGetKernelSubGroupInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetKernelSubGroupInfo(
+ Ref<_cl_kernel> kernel,
+ Ref<_cl_device_id> device,
+ uint param_name,
+ nuint input_value_size,
+ Ref input_value,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (void* __dsl_input_value = input_value)
+ fixed (_cl_device_id* __dsl_device = device)
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ {
+ return (int)GetKernelSubGroupInfo(
+ __dsl_kernel,
+ __dsl_device,
+ param_name,
+ input_value_size,
+ __dsl_input_value,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetKernelSubGroupInfoKHR")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetKernelSubGroupInfoKHR")]
+ [Obsolete]
+ [SupportedApiProfile("opencl", ["cl_khr_subgroups"])]
+ public static extern int GetKernelSubGroupInfoKHR(
+ _cl_kernel* in_kernel,
+ _cl_device_id* in_device,
+ uint param_name,
+ nuint input_value_size,
+ void* input_value,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetKernelSubGroupInfoKHR")]
+ [Obsolete]
+ [SupportedApiProfile("opencl", ["cl_khr_subgroups"])]
+ [NativeFunction("opencl", EntryPoint = "clGetKernelSubGroupInfoKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetKernelSubGroupInfoKHR(
+ Ref<_cl_kernel> in_kernel,
+ Ref<_cl_device_id> in_device,
+ uint param_name,
+ nuint input_value_size,
+ Ref input_value,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (void* __dsl_input_value = input_value)
+ fixed (_cl_device_id* __dsl_in_device = in_device)
+ fixed (_cl_kernel* __dsl_in_kernel = in_kernel)
+ {
+ return (int)GetKernelSubGroupInfoKHR(
+ __dsl_in_kernel,
+ __dsl_in_device,
+ param_name,
+ input_value_size,
+ __dsl_input_value,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetKernelSuggestedLocalWorkSize")]
+ [DllImport(
+ "opencl",
+ ExactSpelling = true,
+ EntryPoint = "clGetKernelSuggestedLocalWorkSize"
+ )]
+ [SupportedApiProfile("opencl", ["CL_VERSION_3_1"], MinVersion = "3.1")]
+ public static extern int GetKernelSuggestedLocalWorkSize(
+ _cl_command_queue* command_queue,
+ _cl_kernel* kernel,
+ uint work_dim,
+ nuint* global_work_offset,
+ nuint* global_work_size,
+ nuint* suggested_local_work_size
+ );
+
+ [NativeName("clGetKernelSuggestedLocalWorkSize")]
+ [SupportedApiProfile("opencl", ["CL_VERSION_3_1"], MinVersion = "3.1")]
+ [NativeFunction("opencl", EntryPoint = "clGetKernelSuggestedLocalWorkSize")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetKernelSuggestedLocalWorkSize(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_kernel> kernel,
+ uint work_dim,
+ Ref global_work_offset,
+ Ref global_work_size,
+ Ref suggested_local_work_size
+ )
+ {
+ fixed (nuint* __dsl_suggested_local_work_size = suggested_local_work_size)
+ fixed (nuint* __dsl_global_work_size = global_work_size)
+ fixed (nuint* __dsl_global_work_offset = global_work_offset)
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)GetKernelSuggestedLocalWorkSize(
+ __dsl_command_queue,
+ __dsl_kernel,
+ work_dim,
+ __dsl_global_work_offset,
+ __dsl_global_work_size,
+ __dsl_suggested_local_work_size
+ );
+ }
+ }
+
+ [NativeName("clGetKernelSuggestedLocalWorkSizeKHR")]
+ [DllImport(
+ "opencl",
+ ExactSpelling = true,
+ EntryPoint = "clGetKernelSuggestedLocalWorkSizeKHR"
+ )]
+ [SupportedApiProfile("opencl", ["cl_khr_suggested_local_work_size"])]
+ public static extern int GetKernelSuggestedLocalWorkSizeKHR(
+ _cl_command_queue* command_queue,
+ _cl_kernel* kernel,
+ uint work_dim,
+ nuint* global_work_offset,
+ nuint* global_work_size,
+ nuint* suggested_local_work_size
+ );
+
+ [NativeName("clGetKernelSuggestedLocalWorkSizeKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_suggested_local_work_size"])]
+ [NativeFunction("opencl", EntryPoint = "clGetKernelSuggestedLocalWorkSizeKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetKernelSuggestedLocalWorkSizeKHR(
+ Ref<_cl_command_queue> command_queue,
+ Ref<_cl_kernel> kernel,
+ uint work_dim,
+ Ref global_work_offset,
+ Ref global_work_size,
+ Ref suggested_local_work_size
+ )
+ {
+ fixed (nuint* __dsl_suggested_local_work_size = suggested_local_work_size)
+ fixed (nuint* __dsl_global_work_size = global_work_size)
+ fixed (nuint* __dsl_global_work_offset = global_work_offset)
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)GetKernelSuggestedLocalWorkSizeKHR(
+ __dsl_command_queue,
+ __dsl_kernel,
+ work_dim,
+ __dsl_global_work_offset,
+ __dsl_global_work_size,
+ __dsl_suggested_local_work_size
+ );
+ }
+ }
+
+ [NativeName("clGetKernelWorkGroupInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetKernelWorkGroupInfo")]
+ [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 GetKernelWorkGroupInfo(
+ _cl_kernel* kernel,
+ _cl_device_id* device,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetKernelWorkGroupInfo")]
+ [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 = "clGetKernelWorkGroupInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetKernelWorkGroupInfo(
+ Ref<_cl_kernel> kernel,
+ Ref<_cl_device_id> device,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_device_id* __dsl_device = device)
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ {
+ return (int)GetKernelWorkGroupInfo(
+ __dsl_kernel,
+ __dsl_device,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetMemAllocInfoINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetMemAllocInfoINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ public static extern int GetMemAllocInfoINTEL(
+ _cl_context* context,
+ void* ptr,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetMemAllocInfoINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clGetMemAllocInfoINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetMemAllocInfoINTEL(
+ Ref<_cl_context> context,
+ Ref ptr,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (void* __dsl_ptr = ptr)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (int)GetMemAllocInfoINTEL(
+ __dsl_context,
+ __dsl_ptr,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetMemObjectInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetMemObjectInfo")]
+ [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 GetMemObjectInfo(
+ _cl_mem* memobj,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetMemObjectInfo")]
+ [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 = "clGetMemObjectInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetMemObjectInfo(
+ Ref<_cl_mem> memobj,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_mem* __dsl_memobj = memobj)
+ {
+ return (int)GetMemObjectInfo(
+ __dsl_memobj,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetPipeInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetPipeInfo")]
+ [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 GetPipeInfo(
+ _cl_mem* pipe,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetPipeInfo")]
+ [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 = "clGetPipeInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetPipeInfo(
+ Ref<_cl_mem> pipe,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_mem* __dsl_pipe = pipe)
+ {
+ return (int)GetPipeInfo(
+ __dsl_pipe,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetPlatformIDs")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetPlatformIDs")]
+ [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 GetPlatformIDs(
+ uint num_entries,
+ _cl_platform_id** platforms,
+ uint* num_platforms
+ );
+
+ [NativeName("clGetPlatformIDs")]
+ [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 = "clGetPlatformIDs")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetPlatformIDs(
+ uint num_entries,
+ Ref2D<_cl_platform_id> platforms,
+ Ref num_platforms
+ )
+ {
+ fixed (uint* __dsl_num_platforms = num_platforms)
+ fixed (_cl_platform_id** __dsl_platforms = platforms)
+ {
+ return (int)GetPlatformIDs(num_entries, __dsl_platforms, __dsl_num_platforms);
+ }
+ }
+
+ [NativeName("clGetPlatformInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetPlatformInfo")]
+ [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 GetPlatformInfo(
+ _cl_platform_id* platform,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetPlatformInfo")]
+ [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 = "clGetPlatformInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetPlatformInfo(
+ Ref<_cl_platform_id> platform,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_platform_id* __dsl_platform = platform)
+ {
+ return (int)GetPlatformInfo(
+ __dsl_platform,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetProgramBuildInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetProgramBuildInfo")]
+ [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 GetProgramBuildInfo(
+ _cl_program* program,
+ _cl_device_id* device,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetProgramBuildInfo")]
+ [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 = "clGetProgramBuildInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetProgramBuildInfo(
+ Ref<_cl_program> program,
+ Ref<_cl_device_id> device,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_device_id* __dsl_device = device)
+ fixed (_cl_program* __dsl_program = program)
+ {
+ return (int)GetProgramBuildInfo(
+ __dsl_program,
+ __dsl_device,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetProgramInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetProgramInfo")]
+ [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 GetProgramInfo(
+ _cl_program* program,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetProgramInfo")]
+ [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 = "clGetProgramInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetProgramInfo(
+ Ref<_cl_program> program,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_program* __dsl_program = program)
+ {
+ return (int)GetProgramInfo(
+ __dsl_program,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetSamplerInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetSamplerInfo")]
+ [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 GetSamplerInfo(
+ _cl_sampler* sampler,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetSamplerInfo")]
+ [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 = "clGetSamplerInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetSamplerInfo(
+ Ref<_cl_sampler> sampler,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_sampler* __dsl_sampler = sampler)
+ {
+ return (int)GetSamplerInfo(
+ __dsl_sampler,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetSemaphoreHandleForTypeKHR")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetSemaphoreHandleForTypeKHR")]
+ [SupportedApiProfile(
+ "opencl",
+ ["cl_khr_external_semaphore"],
+ ImpliesSets = ["cl_khr_semaphore", "CL_VERSION_1_2"]
+ )]
+ public static extern int GetSemaphoreHandleForTypeKHR(
+ _cl_semaphore_khr* sema_object,
+ _cl_device_id* device,
+ uint handle_type,
+ nuint handle_size,
+ void* handle_ptr,
+ nuint* handle_size_ret
+ );
+
+ [NativeName("clGetSemaphoreHandleForTypeKHR")]
+ [SupportedApiProfile(
+ "opencl",
+ ["cl_khr_external_semaphore"],
+ ImpliesSets = ["cl_khr_semaphore", "CL_VERSION_1_2"]
+ )]
+ [NativeFunction("opencl", EntryPoint = "clGetSemaphoreHandleForTypeKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetSemaphoreHandleForTypeKHR(
+ Ref<_cl_semaphore_khr> sema_object,
+ Ref<_cl_device_id> device,
+ uint handle_type,
+ nuint handle_size,
+ Ref handle_ptr,
+ Ref handle_size_ret
+ )
+ {
+ fixed (nuint* __dsl_handle_size_ret = handle_size_ret)
+ fixed (void* __dsl_handle_ptr = handle_ptr)
+ fixed (_cl_device_id* __dsl_device = device)
+ fixed (_cl_semaphore_khr* __dsl_sema_object = sema_object)
+ {
+ return (int)GetSemaphoreHandleForTypeKHR(
+ __dsl_sema_object,
+ __dsl_device,
+ handle_type,
+ handle_size,
+ __dsl_handle_ptr,
+ __dsl_handle_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetSemaphoreInfoKHR")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetSemaphoreInfoKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_semaphore"], ImpliesSets = ["CL_VERSION_1_2"])]
+ public static extern int GetSemaphoreInfoKHR(
+ _cl_semaphore_khr* sema_object,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value,
+ nuint* param_value_size_ret
+ );
+
+ [NativeName("clGetSemaphoreInfoKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_semaphore"], ImpliesSets = ["CL_VERSION_1_2"])]
+ [NativeFunction("opencl", EntryPoint = "clGetSemaphoreInfoKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetSemaphoreInfoKHR(
+ Ref<_cl_semaphore_khr> sema_object,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value,
+ Ref param_value_size_ret
+ )
+ {
+ fixed (nuint* __dsl_param_value_size_ret = param_value_size_ret)
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_semaphore_khr* __dsl_sema_object = sema_object)
+ {
+ return (int)GetSemaphoreInfoKHR(
+ __dsl_sema_object,
+ param_name,
+ param_value_size,
+ __dsl_param_value,
+ __dsl_param_value_size_ret
+ );
+ }
+ }
+
+ [NativeName("clGetSupportedImageFormats")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clGetSupportedImageFormats")]
+ [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 GetSupportedImageFormats(
+ _cl_context* context,
+ ulong flags,
+ uint image_type,
+ uint num_entries,
+ ImageFormat* image_formats,
+ uint* num_image_formats
+ );
+
+ [NativeName("clGetSupportedImageFormats")]
+ [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 = "clGetSupportedImageFormats")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int GetSupportedImageFormats(
+ Ref<_cl_context> context,
+ ulong flags,
+ uint image_type,
+ uint num_entries,
+ Ref image_formats,
+ Ref num_image_formats
+ )
+ {
+ fixed (uint* __dsl_num_image_formats = num_image_formats)
+ fixed (ImageFormat* __dsl_image_formats = image_formats)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (int)GetSupportedImageFormats(
+ __dsl_context,
+ flags,
+ image_type,
+ num_entries,
+ __dsl_image_formats,
+ __dsl_num_image_formats
+ );
+ }
+ }
+
+ [NativeName("clHostMemAllocINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clHostMemAllocINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ public static extern void* HostMemAllocINTEL(
+ _cl_context* context,
+ ulong* properties,
+ nuint size,
+ uint alignment,
+ int* errcode_ret
+ );
+
+ [NativeName("clHostMemAllocINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clHostMemAllocINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static Ptr HostMemAllocINTEL(
+ Ref<_cl_context> context,
+ Ref properties,
+ nuint size,
+ uint alignment,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (ulong* __dsl_properties = properties)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (void*)HostMemAllocINTEL(
+ __dsl_context,
+ __dsl_properties,
+ size,
+ alignment,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clIcdGetFunctionAddressForPlatformKHR")]
+ [DllImport(
+ "opencl",
+ ExactSpelling = true,
+ EntryPoint = "clIcdGetFunctionAddressForPlatformKHR"
+ )]
+ [SupportedApiProfile("opencl", ["cl_khr_icd"])]
+ public static extern void* IcdGetFunctionAddressForPlatformKHR(
+ _cl_platform_id* platform,
+ sbyte* func_name
+ );
+
+ [NativeName("clIcdGetFunctionAddressForPlatformKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_icd"])]
+ [NativeFunction("opencl", EntryPoint = "clIcdGetFunctionAddressForPlatformKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static Ptr IcdGetFunctionAddressForPlatformKHR(
+ Ref<_cl_platform_id> platform,
+ Ref func_name
+ )
+ {
+ fixed (sbyte* __dsl_func_name = func_name)
+ fixed (_cl_platform_id* __dsl_platform = platform)
+ {
+ return (void*)IcdGetFunctionAddressForPlatformKHR(__dsl_platform, __dsl_func_name);
+ }
+ }
+
+ [NativeName("clIcdGetPlatformIDsKHR")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clIcdGetPlatformIDsKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_icd"])]
+ public static extern int IcdGetPlatformIDsKHR(
+ uint num_entries,
+ _cl_platform_id** platforms,
+ uint* num_platforms
+ );
+
+ [NativeName("clIcdGetPlatformIDsKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_icd"])]
+ [NativeFunction("opencl", EntryPoint = "clIcdGetPlatformIDsKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int IcdGetPlatformIDsKHR(
+ uint num_entries,
+ Ref2D<_cl_platform_id> platforms,
+ Ref num_platforms
+ )
+ {
+ fixed (uint* __dsl_num_platforms = num_platforms)
+ fixed (_cl_platform_id** __dsl_platforms = platforms)
+ {
+ return (int)IcdGetPlatformIDsKHR(num_entries, __dsl_platforms, __dsl_num_platforms);
+ }
+ }
+
+ [NativeName("clIcdSetPlatformDispatchDataKHR")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clIcdSetPlatformDispatchDataKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_icd"])]
+ public static extern int IcdSetPlatformDispatchDataKHR(
+ _cl_platform_id* platform,
+ void* dispatch_data
+ );
+
+ [NativeName("clIcdSetPlatformDispatchDataKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_icd"])]
+ [NativeFunction("opencl", EntryPoint = "clIcdSetPlatformDispatchDataKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int IcdSetPlatformDispatchDataKHR(
+ Ref<_cl_platform_id> platform,
+ Ref dispatch_data
+ )
+ {
+ fixed (void* __dsl_dispatch_data = dispatch_data)
+ fixed (_cl_platform_id* __dsl_platform = platform)
+ {
+ return (int)IcdSetPlatformDispatchDataKHR(__dsl_platform, __dsl_dispatch_data);
+ }
+ }
+
+ [NativeName("clImportMemoryARM")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clImportMemoryARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_import_memory"])]
+ public static extern _cl_mem* ImportMemoryARM(
+ _cl_context* context,
+ ulong flags,
+ nint* properties,
+ void* memory,
+ nuint size,
+ int* errcode_ret
+ );
+
+ [NativeName("clImportMemoryARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_import_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clImportMemoryARM")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static Ptr<_cl_mem> ImportMemoryARM(
+ Ref<_cl_context> context,
+ ulong flags,
+ Ref properties,
+ Ref memory,
+ nuint size,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_memory = memory)
+ fixed (nint* __dsl_properties = properties)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_mem*)ImportMemoryARM(
+ __dsl_context,
+ flags,
+ __dsl_properties,
+ __dsl_memory,
+ size,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clLinkProgram")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clLinkProgram")]
+ [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 _cl_program* LinkProgram(
+ _cl_context* context,
+ uint num_devices,
+ _cl_device_id** device_list,
+ sbyte* options,
+ uint num_input_programs,
+ _cl_program** input_programs,
+ delegate* unmanaged<_cl_program*, void*, void> pfn_notify,
+ void* user_data,
+ int* errcode_ret
+ );
+
+ [NativeName("clLinkProgram")]
+ [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 = "clLinkProgram")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static Ptr<_cl_program> LinkProgram(
+ Ref<_cl_context> context,
+ uint num_devices,
+ Ref2D<_cl_device_id> device_list,
+ Ref options,
+ uint num_input_programs,
+ Ref2D<_cl_program> input_programs,
+ delegate* unmanaged<_cl_program*, void*, void> pfn_notify,
+ Ref user_data,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (void* __dsl_user_data = user_data)
+ fixed (_cl_program** __dsl_input_programs = input_programs)
+ fixed (sbyte* __dsl_options = options)
+ fixed (_cl_device_id** __dsl_device_list = device_list)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (_cl_program*)LinkProgram(
+ __dsl_context,
+ num_devices,
+ __dsl_device_list,
+ __dsl_options,
+ num_input_programs,
+ __dsl_input_programs,
+ pfn_notify,
+ __dsl_user_data,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clLogMessagesToStderrAPPLE")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clLogMessagesToStderrAPPLE")]
+ [SupportedApiProfile("opencl", ["cl_APPLE_ContextLoggingFunctions"])]
+ public static extern void LogMessagesToStderrAPPLE(
+ sbyte* errstr,
+ void* private_info,
+ nuint cb,
+ void* user_data
+ );
+
+ [NativeName("clLogMessagesToStderrAPPLE")]
+ [SupportedApiProfile("opencl", ["cl_APPLE_ContextLoggingFunctions"])]
+ [NativeFunction("opencl", EntryPoint = "clLogMessagesToStderrAPPLE")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static void LogMessagesToStderrAPPLE(
+ Ref errstr,
+ Ref private_info,
+ nuint cb,
+ Ref user_data
+ )
+ {
+ fixed (void* __dsl_user_data = user_data)
+ fixed (void* __dsl_private_info = private_info)
+ fixed (sbyte* __dsl_errstr = errstr)
+ {
+ LogMessagesToStderrAPPLE(__dsl_errstr, __dsl_private_info, cb, __dsl_user_data);
+ }
+ }
+
+ [NativeName("clLogMessagesToStdoutAPPLE")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clLogMessagesToStdoutAPPLE")]
+ [SupportedApiProfile("opencl", ["cl_APPLE_ContextLoggingFunctions"])]
+ public static extern void LogMessagesToStdoutAPPLE(
+ sbyte* errstr,
+ void* private_info,
+ nuint cb,
+ void* user_data
+ );
+
+ [NativeName("clLogMessagesToStdoutAPPLE")]
+ [SupportedApiProfile("opencl", ["cl_APPLE_ContextLoggingFunctions"])]
+ [NativeFunction("opencl", EntryPoint = "clLogMessagesToStdoutAPPLE")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static void LogMessagesToStdoutAPPLE(
+ Ref errstr,
+ Ref private_info,
+ nuint cb,
+ Ref user_data
+ )
+ {
+ fixed (void* __dsl_user_data = user_data)
+ fixed (void* __dsl_private_info = private_info)
+ fixed (sbyte* __dsl_errstr = errstr)
+ {
+ LogMessagesToStdoutAPPLE(__dsl_errstr, __dsl_private_info, cb, __dsl_user_data);
+ }
+ }
+
+ [NativeName("clLogMessagesToSystemLogAPPLE")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clLogMessagesToSystemLogAPPLE")]
+ [SupportedApiProfile("opencl", ["cl_APPLE_ContextLoggingFunctions"])]
+ public static extern void LogMessagesToSystemLogAPPLE(
+ sbyte* errstr,
+ void* private_info,
+ nuint cb,
+ void* user_data
+ );
+
+ [NativeName("clLogMessagesToSystemLogAPPLE")]
+ [SupportedApiProfile("opencl", ["cl_APPLE_ContextLoggingFunctions"])]
+ [NativeFunction("opencl", EntryPoint = "clLogMessagesToSystemLogAPPLE")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static void LogMessagesToSystemLogAPPLE(
+ Ref errstr,
+ Ref private_info,
+ nuint cb,
+ Ref user_data
+ )
+ {
+ fixed (void* __dsl_user_data = user_data)
+ fixed (void* __dsl_private_info = private_info)
+ fixed (sbyte* __dsl_errstr = errstr)
+ {
+ LogMessagesToSystemLogAPPLE(__dsl_errstr, __dsl_private_info, cb, __dsl_user_data);
+ }
+ }
+
+ [NativeName("clMemBlockingFreeINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clMemBlockingFreeINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ public static extern int MemBlockingFreeINTEL(_cl_context* context, void* ptr);
+
+ [NativeName("clMemBlockingFreeINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clMemBlockingFreeINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int MemBlockingFreeINTEL(Ref<_cl_context> context, Ref ptr)
+ {
+ fixed (void* __dsl_ptr = ptr)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (int)MemBlockingFreeINTEL(__dsl_context, __dsl_ptr);
+ }
+ }
+
+ [NativeName("clMemFreeINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clMemFreeINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ public static extern int MemFreeINTEL(_cl_context* context, void* ptr);
+
+ [NativeName("clMemFreeINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clMemFreeINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int MemFreeINTEL(Ref<_cl_context> context, Ref ptr)
+ {
+ fixed (void* __dsl_ptr = ptr)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (int)MemFreeINTEL(__dsl_context, __dsl_ptr);
+ }
+ }
+
+ [NativeName("clReImportSemaphoreSyncFdKHR")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clReImportSemaphoreSyncFdKHR")]
+ [SupportedApiProfile(
+ "opencl",
+ ["cl_khr_external_semaphore_sync_fd"],
+ ImpliesSets = ["cl_khr_external_semaphore", "cl_khr_semaphore", "CL_VERSION_1_2"]
+ )]
+ public static extern int ReImportSemaphoreSyncFdKHR(
+ _cl_semaphore_khr* sema_object,
+ ulong* reimport_props,
+ int fd
+ );
+
+ [NativeName("clReImportSemaphoreSyncFdKHR")]
+ [SupportedApiProfile(
+ "opencl",
+ ["cl_khr_external_semaphore_sync_fd"],
+ ImpliesSets = ["cl_khr_external_semaphore", "cl_khr_semaphore", "CL_VERSION_1_2"]
+ )]
+ [NativeFunction("opencl", EntryPoint = "clReImportSemaphoreSyncFdKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int ReImportSemaphoreSyncFdKHR(
+ Ref<_cl_semaphore_khr> sema_object,
+ Ref reimport_props,
+ int fd
+ )
+ {
+ fixed (ulong* __dsl_reimport_props = reimport_props)
+ fixed (_cl_semaphore_khr* __dsl_sema_object = sema_object)
+ {
+ return (int)ReImportSemaphoreSyncFdKHR(__dsl_sema_object, __dsl_reimport_props, fd);
+ }
+ }
+
+ [NativeName("clReleaseAcceleratorINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clReleaseAcceleratorINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_accelerator"])]
+ public static extern int ReleaseAcceleratorINTEL(_cl_accelerator_intel* accelerator);
+
+ [NativeName("clReleaseAcceleratorINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_accelerator"])]
+ [NativeFunction("opencl", EntryPoint = "clReleaseAcceleratorINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int ReleaseAcceleratorINTEL(Ref<_cl_accelerator_intel> accelerator)
+ {
+ fixed (_cl_accelerator_intel* __dsl_accelerator = accelerator)
+ {
+ return (int)ReleaseAcceleratorINTEL(__dsl_accelerator);
+ }
+ }
+
+ [NativeName("clReleaseCommandQueue")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clReleaseCommandQueue")]
+ [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 ReleaseCommandQueue(_cl_command_queue* command_queue);
+
+ [NativeName("clReleaseCommandQueue")]
+ [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 = "clReleaseCommandQueue")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int ReleaseCommandQueue(Ref<_cl_command_queue> command_queue)
+ {
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)ReleaseCommandQueue(__dsl_command_queue);
+ }
+ }
+
+ [NativeName("clReleaseContext")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clReleaseContext")]
+ [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 ReleaseContext(_cl_context* context);
+
+ [NativeName("clReleaseContext")]
+ [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 = "clReleaseContext")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int ReleaseContext(Ref<_cl_context> context)
+ {
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (int)ReleaseContext(__dsl_context);
+ }
+ }
+
+ [NativeName("clReleaseDevice")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clReleaseDevice")]
+ [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 ReleaseDevice(_cl_device_id* device);
+
+ [NativeName("clReleaseDevice")]
+ [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 = "clReleaseDevice")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int ReleaseDevice(Ref<_cl_device_id> device)
+ {
+ fixed (_cl_device_id* __dsl_device = device)
+ {
+ return (int)ReleaseDevice(__dsl_device);
+ }
+ }
+
+ [NativeName("clReleaseDeviceEXT")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clReleaseDeviceEXT")]
+ [SupportedApiProfile("opencl", ["cl_ext_device_fission"])]
+ public static extern int ReleaseDeviceEXT(_cl_device_id* device);
+
+ [NativeName("clReleaseDeviceEXT")]
+ [SupportedApiProfile("opencl", ["cl_ext_device_fission"])]
+ [NativeFunction("opencl", EntryPoint = "clReleaseDeviceEXT")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int ReleaseDeviceEXT(Ref<_cl_device_id> device)
+ {
+ fixed (_cl_device_id* __dsl_device = device)
+ {
+ return (int)ReleaseDeviceEXT(__dsl_device);
+ }
+ }
+
+ [NativeName("clReleaseEvent")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clReleaseEvent")]
+ [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 ReleaseEvent(_cl_event* @event);
+
+ [NativeName("clReleaseEvent")]
+ [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 = "clReleaseEvent")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int ReleaseEvent(Ref<_cl_event> @event)
+ {
+ fixed (_cl_event* __dsl_event = @event)
+ {
+ return (int)ReleaseEvent(__dsl_event);
+ }
+ }
+
+ [NativeName("clReleaseKernel")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clReleaseKernel")]
+ [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 ReleaseKernel(_cl_kernel* kernel);
+
+ [NativeName("clReleaseKernel")]
+ [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 = "clReleaseKernel")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int ReleaseKernel(Ref<_cl_kernel> kernel)
+ {
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ {
+ return (int)ReleaseKernel(__dsl_kernel);
+ }
+ }
+
+ [NativeName("clReleaseMemObject")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clReleaseMemObject")]
+ [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 ReleaseMemObject(_cl_mem* memobj);
+
+ [NativeName("clReleaseMemObject")]
+ [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 = "clReleaseMemObject")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int ReleaseMemObject(Ref<_cl_mem> memobj)
+ {
+ fixed (_cl_mem* __dsl_memobj = memobj)
+ {
+ return (int)ReleaseMemObject(__dsl_memobj);
+ }
+ }
+
+ [NativeName("clReleaseProgram")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clReleaseProgram")]
+ [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 ReleaseProgram(_cl_program* program);
+
+ [NativeName("clReleaseProgram")]
+ [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 = "clReleaseProgram")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int ReleaseProgram(Ref<_cl_program> program)
+ {
+ fixed (_cl_program* __dsl_program = program)
+ {
+ return (int)ReleaseProgram(__dsl_program);
+ }
+ }
+
+ [NativeName("clReleaseSampler")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clReleaseSampler")]
+ [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 ReleaseSampler(_cl_sampler* sampler);
+
+ [NativeName("clReleaseSampler")]
+ [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 = "clReleaseSampler")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int ReleaseSampler(Ref<_cl_sampler> sampler)
+ {
+ fixed (_cl_sampler* __dsl_sampler = sampler)
+ {
+ return (int)ReleaseSampler(__dsl_sampler);
+ }
+ }
+
+ [NativeName("clReleaseSemaphoreKHR")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clReleaseSemaphoreKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_semaphore"], ImpliesSets = ["CL_VERSION_1_2"])]
+ public static extern int ReleaseSemaphoreKHR(_cl_semaphore_khr* sema_object);
+
+ [NativeName("clReleaseSemaphoreKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_semaphore"], ImpliesSets = ["CL_VERSION_1_2"])]
+ [NativeFunction("opencl", EntryPoint = "clReleaseSemaphoreKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int ReleaseSemaphoreKHR(Ref<_cl_semaphore_khr> sema_object)
+ {
+ fixed (_cl_semaphore_khr* __dsl_sema_object = sema_object)
+ {
+ return (int)ReleaseSemaphoreKHR(__dsl_sema_object);
+ }
+ }
+
+ [NativeName("clRetainAcceleratorINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clRetainAcceleratorINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_accelerator"])]
+ public static extern int RetainAcceleratorINTEL(_cl_accelerator_intel* accelerator);
+
+ [NativeName("clRetainAcceleratorINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_accelerator"])]
+ [NativeFunction("opencl", EntryPoint = "clRetainAcceleratorINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int RetainAcceleratorINTEL(Ref<_cl_accelerator_intel> accelerator)
+ {
+ fixed (_cl_accelerator_intel* __dsl_accelerator = accelerator)
+ {
+ return (int)RetainAcceleratorINTEL(__dsl_accelerator);
+ }
+ }
+
+ [NativeName("clRetainCommandQueue")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clRetainCommandQueue")]
+ [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 RetainCommandQueue(_cl_command_queue* command_queue);
+
+ [NativeName("clRetainCommandQueue")]
+ [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 = "clRetainCommandQueue")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int RetainCommandQueue(Ref<_cl_command_queue> command_queue)
+ {
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ {
+ return (int)RetainCommandQueue(__dsl_command_queue);
+ }
+ }
+
+ [NativeName("clRetainContext")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clRetainContext")]
+ [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 RetainContext(_cl_context* context);
+
+ [NativeName("clRetainContext")]
+ [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 = "clRetainContext")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int RetainContext(Ref<_cl_context> context)
+ {
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (int)RetainContext(__dsl_context);
+ }
+ }
+
+ [NativeName("clRetainDevice")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clRetainDevice")]
+ [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 RetainDevice(_cl_device_id* device);
+
+ [NativeName("clRetainDevice")]
+ [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 = "clRetainDevice")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int RetainDevice(Ref<_cl_device_id> device)
+ {
+ fixed (_cl_device_id* __dsl_device = device)
+ {
+ return (int)RetainDevice(__dsl_device);
+ }
+ }
+
+ [NativeName("clRetainDeviceEXT")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clRetainDeviceEXT")]
+ [SupportedApiProfile("opencl", ["cl_ext_device_fission"])]
+ public static extern int RetainDeviceEXT(_cl_device_id* device);
+
+ [NativeName("clRetainDeviceEXT")]
+ [SupportedApiProfile("opencl", ["cl_ext_device_fission"])]
+ [NativeFunction("opencl", EntryPoint = "clRetainDeviceEXT")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int RetainDeviceEXT(Ref<_cl_device_id> device)
+ {
+ fixed (_cl_device_id* __dsl_device = device)
+ {
+ return (int)RetainDeviceEXT(__dsl_device);
+ }
+ }
+
+ [NativeName("clRetainEvent")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clRetainEvent")]
+ [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 RetainEvent(_cl_event* @event);
+
+ [NativeName("clRetainEvent")]
+ [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 = "clRetainEvent")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int RetainEvent(Ref<_cl_event> @event)
+ {
+ fixed (_cl_event* __dsl_event = @event)
+ {
+ return (int)RetainEvent(__dsl_event);
+ }
+ }
+
+ [NativeName("clRetainKernel")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clRetainKernel")]
+ [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 RetainKernel(_cl_kernel* kernel);
+
+ [NativeName("clRetainKernel")]
+ [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 = "clRetainKernel")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int RetainKernel(Ref<_cl_kernel> kernel)
+ {
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ {
+ return (int)RetainKernel(__dsl_kernel);
+ }
+ }
+
+ [NativeName("clRetainMemObject")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clRetainMemObject")]
+ [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 RetainMemObject(_cl_mem* memobj);
+
+ [NativeName("clRetainMemObject")]
+ [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 = "clRetainMemObject")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int RetainMemObject(Ref<_cl_mem> memobj)
+ {
+ fixed (_cl_mem* __dsl_memobj = memobj)
+ {
+ return (int)RetainMemObject(__dsl_memobj);
+ }
+ }
+
+ [NativeName("clRetainProgram")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clRetainProgram")]
+ [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 RetainProgram(_cl_program* program);
+
+ [NativeName("clRetainProgram")]
+ [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 = "clRetainProgram")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int RetainProgram(Ref<_cl_program> program)
+ {
+ fixed (_cl_program* __dsl_program = program)
+ {
+ return (int)RetainProgram(__dsl_program);
+ }
+ }
+
+ [NativeName("clRetainSampler")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clRetainSampler")]
+ [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 RetainSampler(_cl_sampler* sampler);
+
+ [NativeName("clRetainSampler")]
+ [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 = "clRetainSampler")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int RetainSampler(Ref<_cl_sampler> sampler)
+ {
+ fixed (_cl_sampler* __dsl_sampler = sampler)
+ {
+ return (int)RetainSampler(__dsl_sampler);
+ }
+ }
+
+ [NativeName("clRetainSemaphoreKHR")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clRetainSemaphoreKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_semaphore"], ImpliesSets = ["CL_VERSION_1_2"])]
+ public static extern int RetainSemaphoreKHR(_cl_semaphore_khr* sema_object);
+
+ [NativeName("clRetainSemaphoreKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_semaphore"], ImpliesSets = ["CL_VERSION_1_2"])]
+ [NativeFunction("opencl", EntryPoint = "clRetainSemaphoreKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int RetainSemaphoreKHR(Ref<_cl_semaphore_khr> sema_object)
+ {
+ fixed (_cl_semaphore_khr* __dsl_sema_object = sema_object)
+ {
+ return (int)RetainSemaphoreKHR(__dsl_sema_object);
+ }
+ }
+
+ [NativeName("clSetContentSizeBufferPoCL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetContentSizeBufferPoCL")]
+ [SupportedApiProfile("opencl", ["cl_pocl_content_size"])]
+ public static extern int SetContentSizeBufferPOCL(
+ _cl_mem* buffer,
+ _cl_mem* content_size_buffer
+ );
+
+ [NativeName("clSetContentSizeBufferPoCL")]
+ [SupportedApiProfile("opencl", ["cl_pocl_content_size"])]
+ [NativeFunction("opencl", EntryPoint = "clSetContentSizeBufferPoCL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetContentSizeBufferPOCL(
+ Ref<_cl_mem> buffer,
+ Ref<_cl_mem> content_size_buffer
+ )
+ {
+ fixed (_cl_mem* __dsl_content_size_buffer = content_size_buffer)
+ fixed (_cl_mem* __dsl_buffer = buffer)
+ {
+ return (int)SetContentSizeBufferPOCL(__dsl_buffer, __dsl_content_size_buffer);
+ }
+ }
+
+ [NativeName("clSetContextDestructorCallback")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetContextDestructorCallback")]
+ [SupportedApiProfile("opencl", ["CL_VERSION_3_0", "CL_VERSION_3_1"], MinVersion = "3.0")]
+ public static extern int SetContextDestructorCallback(
+ _cl_context* context,
+ delegate* unmanaged<_cl_context*, void*, void> pfn_notify,
+ void* user_data
+ );
+
+ [NativeName("clSetContextDestructorCallback")]
+ [SupportedApiProfile("opencl", ["CL_VERSION_3_0", "CL_VERSION_3_1"], MinVersion = "3.0")]
+ [NativeFunction("opencl", EntryPoint = "clSetContextDestructorCallback")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetContextDestructorCallback(
+ Ref<_cl_context> context,
+ delegate* unmanaged<_cl_context*, void*, void> pfn_notify,
+ Ref user_data
+ )
+ {
+ fixed (void* __dsl_user_data = user_data)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (int)SetContextDestructorCallback(
+ __dsl_context,
+ pfn_notify,
+ __dsl_user_data
+ );
+ }
+ }
+
+ [NativeName("clSetDefaultDeviceCommandQueue")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetDefaultDeviceCommandQueue")]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_1", "CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.1"
+ )]
+ public static extern int SetDefaultDeviceCommandQueue(
+ _cl_context* context,
+ _cl_device_id* device,
+ _cl_command_queue* command_queue
+ );
+
+ [NativeName("clSetDefaultDeviceCommandQueue")]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_1", "CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.1"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clSetDefaultDeviceCommandQueue")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetDefaultDeviceCommandQueue(
+ Ref<_cl_context> context,
+ Ref<_cl_device_id> device,
+ Ref<_cl_command_queue> command_queue
+ )
+ {
+ fixed (_cl_command_queue* __dsl_command_queue = command_queue)
+ fixed (_cl_device_id* __dsl_device = device)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (int)SetDefaultDeviceCommandQueue(
+ __dsl_context,
+ __dsl_device,
+ __dsl_command_queue
+ );
+ }
+ }
+
+ [NativeName("clSetEventCallback")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetEventCallback")]
+ [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 SetEventCallback(
+ _cl_event* @event,
+ int command_exec_callback_type,
+ delegate* unmanaged<_cl_event*, int, void*, void> pfn_notify,
+ void* user_data
+ );
+
+ [NativeName("clSetEventCallback")]
+ [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 = "clSetEventCallback")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetEventCallback(
+ Ref<_cl_event> @event,
+ int command_exec_callback_type,
+ delegate* unmanaged<_cl_event*, int, void*, void> pfn_notify,
+ Ref user_data
+ )
+ {
+ fixed (void* __dsl_user_data = user_data)
+ fixed (_cl_event* __dsl_event = @event)
+ {
+ return (int)SetEventCallback(
+ __dsl_event,
+ command_exec_callback_type,
+ pfn_notify,
+ __dsl_user_data
+ );
+ }
+ }
+
+ [NativeName("clSetKernelArg")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetKernelArg")]
+ [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 SetKernelArg(
+ _cl_kernel* kernel,
+ uint arg_index,
+ nuint arg_size,
+ void* arg_value
+ );
+
+ [NativeName("clSetKernelArg")]
+ [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 = "clSetKernelArg")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetKernelArg(
+ Ref<_cl_kernel> kernel,
+ uint arg_index,
+ nuint arg_size,
+ Ref arg_value
+ )
+ {
+ fixed (void* __dsl_arg_value = arg_value)
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ {
+ return (int)SetKernelArg(__dsl_kernel, arg_index, arg_size, __dsl_arg_value);
+ }
+ }
+
+ [NativeName("clSetKernelArgDevicePointerEXT")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetKernelArgDevicePointerEXT")]
+ [SupportedApiProfile(
+ "opencl",
+ ["cl_ext_buffer_device_address"],
+ ImpliesSets = ["CL_VERSION_3_0"]
+ )]
+ public static extern int SetKernelArgDevicePointerEXT(
+ _cl_kernel* kernel,
+ uint arg_index,
+ ulong arg_value
+ );
+
+ [NativeName("clSetKernelArgDevicePointerEXT")]
+ [SupportedApiProfile(
+ "opencl",
+ ["cl_ext_buffer_device_address"],
+ ImpliesSets = ["CL_VERSION_3_0"]
+ )]
+ [NativeFunction("opencl", EntryPoint = "clSetKernelArgDevicePointerEXT")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetKernelArgDevicePointerEXT(
+ Ref<_cl_kernel> kernel,
+ uint arg_index,
+ ulong arg_value
+ )
+ {
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ {
+ return (int)SetKernelArgDevicePointerEXT(__dsl_kernel, arg_index, arg_value);
+ }
+ }
+
+ [NativeName("clSetKernelArgMemPointerINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetKernelArgMemPointerINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ public static extern int SetKernelArgMemPointerINTEL(
+ _cl_kernel* kernel,
+ uint arg_index,
+ void* arg_value
+ );
+
+ [NativeName("clSetKernelArgMemPointerINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clSetKernelArgMemPointerINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetKernelArgMemPointerINTEL(
+ Ref<_cl_kernel> kernel,
+ uint arg_index,
+ Ref arg_value
+ )
+ {
+ fixed (void* __dsl_arg_value = arg_value)
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ {
+ return (int)SetKernelArgMemPointerINTEL(__dsl_kernel, arg_index, __dsl_arg_value);
+ }
+ }
+
+ [NativeName("clSetKernelArgSVMPointer")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetKernelArgSVMPointer")]
+ [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 SetKernelArgSvmPointer(
+ _cl_kernel* kernel,
+ uint arg_index,
+ void* arg_value
+ );
+
+ [NativeName("clSetKernelArgSVMPointer")]
+ [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 = "clSetKernelArgSVMPointer")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetKernelArgSvmPointer(
+ Ref<_cl_kernel> kernel,
+ uint arg_index,
+ Ref arg_value
+ )
+ {
+ fixed (void* __dsl_arg_value = arg_value)
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ {
+ return (int)SetKernelArgSvmPointer(__dsl_kernel, arg_index, __dsl_arg_value);
+ }
+ }
+
+ [NativeName("clSetKernelArgSVMPointerARM")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetKernelArgSVMPointerARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ public static extern int SetKernelArgSvmPointerARM(
+ _cl_kernel* kernel,
+ uint arg_index,
+ void* arg_value
+ );
+
+ [NativeName("clSetKernelArgSVMPointerARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clSetKernelArgSVMPointerARM")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetKernelArgSvmPointerARM(
+ Ref<_cl_kernel> kernel,
+ uint arg_index,
+ Ref arg_value
+ )
+ {
+ fixed (void* __dsl_arg_value = arg_value)
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ {
+ return (int)SetKernelArgSvmPointerARM(__dsl_kernel, arg_index, __dsl_arg_value);
+ }
+ }
+
+ [NativeName("clSetKernelExecInfo")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetKernelExecInfo")]
+ [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 SetKernelExecInfo(
+ _cl_kernel* kernel,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value
+ );
+
+ [NativeName("clSetKernelExecInfo")]
+ [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 = "clSetKernelExecInfo")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetKernelExecInfo(
+ Ref<_cl_kernel> kernel,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value
+ )
+ {
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ {
+ return (int)SetKernelExecInfo(
+ __dsl_kernel,
+ param_name,
+ param_value_size,
+ __dsl_param_value
+ );
+ }
+ }
+
+ [NativeName("clSetKernelExecInfoARM")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetKernelExecInfoARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ public static extern int SetKernelExecInfoARM(
+ _cl_kernel* kernel,
+ uint param_name,
+ nuint param_value_size,
+ void* param_value
+ );
+
+ [NativeName("clSetKernelExecInfoARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clSetKernelExecInfoARM")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetKernelExecInfoARM(
+ Ref<_cl_kernel> kernel,
+ uint param_name,
+ nuint param_value_size,
+ Ref param_value
+ )
+ {
+ fixed (void* __dsl_param_value = param_value)
+ fixed (_cl_kernel* __dsl_kernel = kernel)
+ {
+ return (int)SetKernelExecInfoARM(
+ __dsl_kernel,
+ param_name,
+ param_value_size,
+ __dsl_param_value
+ );
+ }
+ }
+
+ [NativeName("clSetMemObjectDestructorAPPLE")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetMemObjectDestructorAPPLE")]
+ [SupportedApiProfile("opencl", ["cl_APPLE_SetMemObjectDestructor"])]
+ public static extern int SetMemObjectDestructorAPPLE(
+ _cl_mem* memobj,
+ delegate* unmanaged<_cl_mem*, void*, void> pfn_notify,
+ void* user_data
+ );
+
+ [NativeName("clSetMemObjectDestructorAPPLE")]
+ [SupportedApiProfile("opencl", ["cl_APPLE_SetMemObjectDestructor"])]
+ [NativeFunction("opencl", EntryPoint = "clSetMemObjectDestructorAPPLE")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetMemObjectDestructorAPPLE(
+ Ref<_cl_mem> memobj,
+ delegate* unmanaged<_cl_mem*, void*, void> pfn_notify,
+ Ref user_data
+ )
+ {
+ fixed (void* __dsl_user_data = user_data)
+ fixed (_cl_mem* __dsl_memobj = memobj)
+ {
+ return (int)SetMemObjectDestructorAPPLE(__dsl_memobj, pfn_notify, __dsl_user_data);
+ }
+ }
+
+ [NativeName("clSetMemObjectDestructorCallback")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetMemObjectDestructorCallback")]
+ [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 SetMemObjectDestructorCallback(
+ _cl_mem* memobj,
+ delegate* unmanaged<_cl_mem*, void*, void> pfn_notify,
+ void* user_data
+ );
+
+ [NativeName("clSetMemObjectDestructorCallback")]
+ [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 = "clSetMemObjectDestructorCallback")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetMemObjectDestructorCallback(
+ Ref<_cl_mem> memobj,
+ delegate* unmanaged<_cl_mem*, void*, void> pfn_notify,
+ Ref user_data
+ )
+ {
+ fixed (void* __dsl_user_data = user_data)
+ fixed (_cl_mem* __dsl_memobj = memobj)
+ {
+ return (int)SetMemObjectDestructorCallback(
+ __dsl_memobj,
+ pfn_notify,
+ __dsl_user_data
+ );
+ }
+ }
+
+ [NativeName("clSetPerfHintQCOM")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetPerfHintQCOM")]
+ [SupportedApiProfile("opencl", ["cl_qcom_perf_hint"])]
+ public static extern int SetPerfHintQCOM(_cl_context* context, uint perf_hint);
+
+ [NativeName("clSetPerfHintQCOM")]
+ [SupportedApiProfile("opencl", ["cl_qcom_perf_hint"])]
+ [NativeFunction("opencl", EntryPoint = "clSetPerfHintQCOM")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetPerfHintQCOM(Ref<_cl_context> context, uint perf_hint)
+ {
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (int)SetPerfHintQCOM(__dsl_context, perf_hint);
+ }
+ }
+
+ [NativeName("clSetProgramReleaseCallback")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetProgramReleaseCallback")]
+ [Obsolete]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.2"
+ )]
+ public static extern int SetProgramReleaseCallback(
+ _cl_program* program,
+ delegate* unmanaged<_cl_program*, void*, void> pfn_notify,
+ void* user_data
+ );
+
+ [NativeName("clSetProgramReleaseCallback")]
+ [Obsolete]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.2"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clSetProgramReleaseCallback")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetProgramReleaseCallback(
+ Ref<_cl_program> program,
+ delegate* unmanaged<_cl_program*, void*, void> pfn_notify,
+ Ref user_data
+ )
+ {
+ fixed (void* __dsl_user_data = user_data)
+ fixed (_cl_program* __dsl_program = program)
+ {
+ return (int)SetProgramReleaseCallback(__dsl_program, pfn_notify, __dsl_user_data);
+ }
+ }
+
+ [NativeName("clSetProgramSpecializationConstant")]
+ [DllImport(
+ "opencl",
+ ExactSpelling = true,
+ EntryPoint = "clSetProgramSpecializationConstant"
+ )]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.2"
+ )]
+ public static extern int SetProgramSpecializationConstant(
+ _cl_program* program,
+ uint spec_id,
+ nuint spec_size,
+ void* spec_value
+ );
+
+ [NativeName("clSetProgramSpecializationConstant")]
+ [SupportedApiProfile(
+ "opencl",
+ ["CL_VERSION_2_2", "CL_VERSION_3_0", "CL_VERSION_3_1"],
+ MinVersion = "2.2"
+ )]
+ [NativeFunction("opencl", EntryPoint = "clSetProgramSpecializationConstant")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetProgramSpecializationConstant(
+ Ref<_cl_program> program,
+ uint spec_id,
+ nuint spec_size,
+ Ref spec_value
+ )
+ {
+ fixed (void* __dsl_spec_value = spec_value)
+ fixed (_cl_program* __dsl_program = program)
+ {
+ return (int)SetProgramSpecializationConstant(
+ __dsl_program,
+ spec_id,
+ spec_size,
+ __dsl_spec_value
+ );
+ }
+ }
+
+ [NativeName("clSetUserEventStatus")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSetUserEventStatus")]
+ [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 SetUserEventStatus(_cl_event* @event, int execution_status);
+
+ [NativeName("clSetUserEventStatus")]
+ [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 = "clSetUserEventStatus")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int SetUserEventStatus(Ref<_cl_event> @event, int execution_status)
+ {
+ fixed (_cl_event* __dsl_event = @event)
+ {
+ return (int)SetUserEventStatus(__dsl_event, execution_status);
+ }
+ }
+
+ [NativeName("clSharedMemAllocINTEL")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSharedMemAllocINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ public static extern void* SharedMemAllocINTEL(
+ _cl_context* context,
+ _cl_device_id* device,
+ ulong* properties,
+ nuint size,
+ uint alignment,
+ int* errcode_ret
+ );
+
+ [NativeName("clSharedMemAllocINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_unified_shared_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clSharedMemAllocINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static Ptr SharedMemAllocINTEL(
+ Ref<_cl_context> context,
+ Ref<_cl_device_id> device,
+ Ref properties,
+ nuint size,
+ uint alignment,
+ Ref errcode_ret
+ )
+ {
+ fixed (int* __dsl_errcode_ret = errcode_ret)
+ fixed (ulong* __dsl_properties = properties)
+ fixed (_cl_device_id* __dsl_device = device)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (void*)SharedMemAllocINTEL(
+ __dsl_context,
+ __dsl_device,
+ __dsl_properties,
+ size,
+ alignment,
+ __dsl_errcode_ret
+ );
+ }
+ }
+
+ [NativeName("clSVMAlloc")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSVMAlloc")]
+ [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 void* SvmAlloc(
+ _cl_context* context,
+ ulong flags,
+ nuint size,
+ uint alignment
+ );
+
+ [NativeName("clSVMAlloc")]
+ [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 = "clSVMAlloc")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static Ptr SvmAlloc(
+ Ref<_cl_context> context,
+ ulong flags,
+ nuint size,
+ uint alignment
+ )
+ {
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (void*)SvmAlloc(__dsl_context, flags, size, alignment);
+ }
+ }
+
+ [NativeName("clSVMAllocARM")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSVMAllocARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ public static extern void* SvmAllocARM(
+ _cl_context* context,
+ ulong flags,
+ nuint size,
+ uint alignment
+ );
+
+ [NativeName("clSVMAllocARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clSVMAllocARM")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static Ptr SvmAllocARM(
+ Ref<_cl_context> context,
+ ulong flags,
+ nuint size,
+ uint alignment
+ )
+ {
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (void*)SvmAllocARM(__dsl_context, flags, size, alignment);
+ }
+ }
+
+ [NativeName("clSVMFree")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSVMFree")]
+ [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 void SvmFree(_cl_context* context, void* svm_pointer);
+
+ [NativeName("clSVMFree")]
+ [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 = "clSVMFree")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static void SvmFree(Ref<_cl_context> context, Ref svm_pointer)
+ {
+ fixed (void* __dsl_svm_pointer = svm_pointer)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ SvmFree(__dsl_context, __dsl_svm_pointer);
+ }
+ }
+
+ [NativeName("clSVMFreeARM")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clSVMFreeARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ public static extern void SvmFreeARM(_cl_context* context, void* svm_pointer);
+
+ [NativeName("clSVMFreeARM")]
+ [SupportedApiProfile("opencl", ["cl_arm_shared_virtual_memory"])]
+ [NativeFunction("opencl", EntryPoint = "clSVMFreeARM")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static void SvmFreeARM(Ref<_cl_context> context, Ref svm_pointer)
+ {
+ fixed (void* __dsl_svm_pointer = svm_pointer)
+ fixed (_cl_context* __dsl_context = context)
+ {
+ SvmFreeARM(__dsl_context, __dsl_svm_pointer);
+ }
+ }
+
+ [NativeName("clTerminateContextKHR")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clTerminateContextKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_terminate_context"])]
+ public static extern int TerminateContextKHR(_cl_context* context);
+
+ [NativeName("clTerminateContextKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_terminate_context"])]
+ [NativeFunction("opencl", EntryPoint = "clTerminateContextKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int TerminateContextKHR(Ref<_cl_context> context)
+ {
+ fixed (_cl_context* __dsl_context = context)
+ {
+ return (int)TerminateContextKHR(__dsl_context);
+ }
+ }
+
+ [NativeName("clUnloadCompiler")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clUnloadCompiler")]
+ [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 UnloadCompiler();
+
+ [NativeName("clUnloadPlatformCompiler")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clUnloadPlatformCompiler")]
+ [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 UnloadPlatformCompiler(_cl_platform_id* platform);
+
+ [NativeName("clUnloadPlatformCompiler")]
+ [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 = "clUnloadPlatformCompiler")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int UnloadPlatformCompiler(Ref<_cl_platform_id> platform)
+ {
+ fixed (_cl_platform_id* __dsl_platform = platform)
+ {
+ return (int)UnloadPlatformCompiler(__dsl_platform);
+ }
+ }
+
+ [NativeName("clWaitForEvents")]
+ [DllImport("opencl", ExactSpelling = true, EntryPoint = "clWaitForEvents")]
+ [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 WaitForEvents(uint num_events, _cl_event** event_list);
+
+ [NativeName("clWaitForEvents")]
+ [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 = "clWaitForEvents")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public static int WaitForEvents(uint num_events, Ref2D<_cl_event> event_list)
+ {
+ fixed (_cl_event** __dsl_event_list = event_list)
+ {
+ return (int)WaitForEvents(num_events, __dsl_event_list);
+ }
+ }
+ }
+
+ public partial class StaticWrapper : ICl
+ where T : ICl.Static
+ {
+ [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 int BuildProgram(
+ _cl_program* program,
+ uint num_devices,
+ _cl_device_id** device_list,
+ sbyte* options,
+ delegate* unmanaged<_cl_program*, void*, void> pfn_notify,
+ void* user_data
+ ) => T.BuildProgram(program, num_devices, device_list, options, pfn_notify, 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 int BuildProgram(
+ Ref<_cl_program> program,
+ uint num_devices,
+ Ref2D<_cl_device_id> device_list,
+ Ref options,
+ delegate* unmanaged<_cl_program*, void*, void> pfn_notify,
+ Ref user_data
+ ) => T.BuildProgram(program, num_devices, device_list, options, pfn_notify, user_data);
+
+ [NativeName("clCancelCommandsIMG")]
+ [SupportedApiProfile("opencl", ["cl_img_cancel_command"])]
+ [NativeFunction("opencl", EntryPoint = "clCancelCommandsIMG")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public int CancelCommandsIMG(_cl_event** event_list, nuint num_events_in_list) =>
+ T.CancelCommandsIMG(event_list, num_events_in_list);
+
+ [NativeName("clCancelCommandsIMG")]
+ [SupportedApiProfile("opencl", ["cl_img_cancel_command"])]
+ [NativeFunction("opencl", EntryPoint = "clCancelCommandsIMG")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public int CancelCommandsIMG(Ref2D<_cl_event> event_list, nuint num_events_in_list) =>
+ T.CancelCommandsIMG(event_list, num_events_in_list);
+
+ [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 _cl_kernel* CloneKernel(_cl_kernel* source_kernel, int* errcode_ret) =>
+ T.CloneKernel(source_kernel, 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 Ptr<_cl_kernel> CloneKernel(Ref<_cl_kernel> source_kernel, Ref errcode_ret) =>
+ T.CloneKernel(source_kernel, errcode_ret);
+
+ [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 int CompileProgram(
+ _cl_program* program,
+ uint num_devices,
+ _cl_device_id** device_list,
+ sbyte* options,
+ uint num_input_headers,
+ _cl_program** input_headers,
+ sbyte** header_include_names,
+ delegate* unmanaged<_cl_program*, void*, void> pfn_notify,
+ void* user_data
+ ) =>
+ T.CompileProgram(
+ program,
+ num_devices,
+ device_list,
+ options,
+ num_input_headers,
+ input_headers,
+ header_include_names,
+ pfn_notify,
+ 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 int CompileProgram(
+ Ref<_cl_program> program,
+ uint num_devices,
+ Ref2D<_cl_device_id> device_list,
+ Ref options,
+ uint num_input_headers,
+ Ref2D<_cl_program> input_headers,
+ Ref2D header_include_names,
+ delegate* unmanaged<_cl_program*, void*, void> pfn_notify,
+ Ref user_data
+ ) =>
+ T.CompileProgram(
+ program,
+ num_devices,
+ device_list,
+ options,
+ num_input_headers,
+ input_headers,
+ header_include_names,
+ pfn_notify,
+ user_data
+ );
+
+ [NativeName("clCreateAcceleratorINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_accelerator"])]
+ [NativeFunction("opencl", EntryPoint = "clCreateAcceleratorINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public _cl_accelerator_intel* CreateAcceleratorINTEL(
+ _cl_context* context,
+ uint accelerator_type,
+ nuint descriptor_size,
+ void* descriptor,
+ int* errcode_ret
+ ) =>
+ T.CreateAcceleratorINTEL(
+ context,
+ accelerator_type,
+ descriptor_size,
+ descriptor,
+ errcode_ret
+ );
+
+ [NativeName("clCreateAcceleratorINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_accelerator"])]
+ [NativeFunction("opencl", EntryPoint = "clCreateAcceleratorINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public Ptr<_cl_accelerator_intel> CreateAcceleratorINTEL(
+ Ref<_cl_context> context,
+ uint accelerator_type,
+ nuint descriptor_size,
+ Ref descriptor,
+ Ref errcode_ret
+ ) =>
+ T.CreateAcceleratorINTEL(
+ context,
+ accelerator_type,
+ descriptor_size,
+ descriptor,
+ 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 _cl_mem* CreateBuffer(
+ _cl_context* context,
+ ulong flags,
+ nuint size,
+ void* host_ptr,
+ int* errcode_ret
+ ) => T.CreateBuffer(context, flags, size, host_ptr, 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 Ptr<_cl_mem> CreateBuffer(
+ Ref<_cl_context> context,
+ ulong flags,
+ nuint size,
+ Ref host_ptr,
+ Ref errcode_ret
+ ) => T.CreateBuffer(context, flags, size, host_ptr, 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 _cl_mem* CreateBufferWithProperties(
+ _cl_context* context,
+ ulong* properties,
+ ulong flags,
+ nuint size,
+ void* host_ptr,
+ int* errcode_ret
+ ) => T.CreateBufferWithProperties(context, properties, flags, size, host_ptr, 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 Ptr<_cl_mem> CreateBufferWithProperties(
+ Ref<_cl_context> context,
+ Ref properties,
+ ulong flags,
+ nuint size,
+ Ref host_ptr,
+ Ref errcode_ret
+ ) => T.CreateBufferWithProperties(context, properties, flags, size, host_ptr, errcode_ret);
+
+ [NativeName("clCreateBufferWithPropertiesINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_create_buffer_with_properties"])]
+ [NativeFunction("opencl", EntryPoint = "clCreateBufferWithPropertiesINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public _cl_mem* CreateBufferWithPropertiesINTEL(
+ _cl_context* context,
+ ulong* properties,
+ ulong flags,
+ nuint size,
+ void* host_ptr,
+ int* errcode_ret
+ ) =>
+ T.CreateBufferWithPropertiesINTEL(
+ context,
+ properties,
+ flags,
+ size,
+ host_ptr,
+ errcode_ret
+ );
+
+ [NativeName("clCreateBufferWithPropertiesINTEL")]
+ [SupportedApiProfile("opencl", ["cl_intel_create_buffer_with_properties"])]
+ [NativeFunction("opencl", EntryPoint = "clCreateBufferWithPropertiesINTEL")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public Ptr<_cl_mem> CreateBufferWithPropertiesINTEL(
+ Ref<_cl_context> context,
+ Ref properties,
+ ulong flags,
+ nuint size,
+ Ref host_ptr,
+ Ref errcode_ret
+ ) =>
+ T.CreateBufferWithPropertiesINTEL(
+ context,
+ properties,
+ flags,
+ size,
+ host_ptr,
+ 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 _cl_command_queue* CreateCommandQueue(
+ _cl_context* context,
+ _cl_device_id* device,
+ ulong properties,
+ int* errcode_ret
+ ) => T.CreateCommandQueue(context, device, properties, 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 Ptr<_cl_command_queue> CreateCommandQueue(
+ Ref<_cl_context> context,
+ Ref<_cl_device_id> device,
+ ulong properties,
+ Ref errcode_ret
+ ) => T.CreateCommandQueue(context, device, properties, 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 _cl_command_queue* CreateCommandQueueWithProperties(
+ _cl_context* context,
+ _cl_device_id* device,
+ ulong* properties,
+ int* errcode_ret
+ ) => T.CreateCommandQueueWithProperties(context, device, properties, 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 Ptr<_cl_command_queue> CreateCommandQueueWithProperties(
+ Ref<_cl_context> context,
+ Ref<_cl_device_id> device,
+ Ref properties,
+ Ref errcode_ret
+ ) => T.CreateCommandQueueWithProperties(context, device, properties, errcode_ret);
+
+ [NativeName("clCreateCommandQueueWithPropertiesKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_create_command_queue"])]
+ [NativeFunction("opencl", EntryPoint = "clCreateCommandQueueWithPropertiesKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public _cl_command_queue* CreateCommandQueueWithPropertiesKHR(
+ _cl_context* context,
+ _cl_device_id* device,
+ ulong* properties,
+ int* errcode_ret
+ ) => T.CreateCommandQueueWithPropertiesKHR(context, device, properties, errcode_ret);
+
+ [NativeName("clCreateCommandQueueWithPropertiesKHR")]
+ [SupportedApiProfile("opencl", ["cl_khr_create_command_queue"])]
+ [NativeFunction("opencl", EntryPoint = "clCreateCommandQueueWithPropertiesKHR")]
+ [MethodImpl(
+ MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization
+ )]
+ public Ptr<_cl_command_queue> CreateCommandQueueWithPropertiesKHR(
+ Ref<_cl_context> context,
+ Ref<_cl_device_id> device,
+ Ref properties,
+ Ref errcode_ret
+ ) => T.CreateCommandQueueWithPropertiesKHR(context, device, properties, 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 _cl_context* CreateContext(
+ nint* properties,
+ uint num_devices,
+ _cl_device_id** devices,
+ delegate* unmanaged pfn_notify,
+ void* user_data,
+ int* errcode_ret
+ ) => T.CreateContext(properties, num_devices, devices, pfn_notify, user_data, 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 Ptr<_cl_context> CreateContext(
+ Ref properties,
+ uint num_devices,
+ Ref2D<_cl_device_id> devices,
+ delegate* unmanaged pfn_notify,
+ Ref user_data,
+ Ref errcode_ret
+ ) => T.CreateContext(properties, num_devices, devices, pfn_notify, user_data, 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 _cl_context* CreateContextFromType(
+ nint* properties,
+ ulong device_type,
+ delegate* unmanaged pfn_notify,
+ void* user_data,
+ int* errcode_ret
+ ) => T.CreateContextFromType(properties, device_type, pfn_notify, user_data, 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 Ptr<_cl_context> CreateContextFromType(
+ Ref properties,
+ ulong device_type,
+ delegate* unmanaged pfn_notify,
+ Ref user_data,
+ Ref errcode_ret
+ ) => T.CreateContextFromType(properties, device_type, pfn_notify, user_data, 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 _cl_mem* CreateImage(
+ _cl_context* context,
+ ulong flags,
+ ImageFormat* image_format,
+ ImageDesc* image_desc,
+ void* host_ptr,
+ int* errcode_ret
+ ) => T.CreateImage(context, flags, image_format, image_desc, host_ptr, 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 Ptr<_cl_mem> CreateImage(
+ Ref<_cl_context> context,
+ ulong flags,
+ Ref image_format,
+ Ref image_desc,
+ Ref host_ptr,
+ Ref errcode_ret
+ ) => T.CreateImage(context, flags, image_format, image_desc, host_ptr, 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 _cl_mem* CreateImage2D(
+ _cl_context* context,
+ ulong flags,
+ ImageFormat* image_format,
+ nuint image_width,
+ nuint image_height,
+ nuint image_row_pitch,
+ void* host_ptr,
+ int* errcode_ret
+ ) =>
+ T.CreateImage2D(
+ context,
+ flags,
+ image_format,
+ image_width,
+ image_height,
+ image_row_pitch,
+ host_ptr,
+ 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 Ptr<_cl_mem> CreateImage2D(
+ Ref<_cl_context> context,
+ ulong flags,
+ Ref image_format,
+ nuint image_width,
+ nuint image_height,
+ nuint image_row_pitch,
+ Ref host_ptr,
+ Ref errcode_ret
+ ) =>
+ T.CreateImage2D(
+ context,
+ flags,
+ image_format,
+ image_width,
+ image_height,
+ image_row_pitch,
+ host_ptr,
+ 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 _cl_mem* CreateImage3D(
+ _cl_context* 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
+ ) =>
+ T.CreateImage3D(
+ context,
+ flags,
+ image_format,
+ image_width,
+ image_height,
+ image_depth,
+ image_row_pitch,
+ image_slice_pitch,
+ host_ptr,
+ 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 Ptr<_cl_mem> CreateImage3D(
+ Ref<_cl_context> 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
+ ) =>
+ T.CreateImage3D(
+ context,
+ flags,
+ image_format,
+ image_width,
+ image_height,
+ image_depth,
+ image_row_pitch,
+ image_slice_pitch,
+ host_ptr,
+ 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 _cl_mem* CreateImageWithProperties(
+ _cl_context* context,
+ ulong* properties,
+ ulong flags,
+ ImageFormat* image_format,
+ ImageDesc* image_desc,
+ void* host_ptr,
+ int* errcode_ret
+ ) =>
+ T.CreateImageWithProperties(
+ context,
+ properties,
+ flags,
+ image_format,
+ image_desc,
+ host_ptr,
+ 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 Ptr<_cl_mem> CreateImageWithProperties(
+ Ref<_cl_context> context,
+ Ref properties,
+ ulong flags,
+ Ref image_format,
+ Ref image_desc,
+ Ref host_ptr,
+ Ref errcode_ret
+ ) =>
+ T.CreateImageWithProperties(
+ context,
+ properties,
+ flags,
+ image_format,
+ image_desc,
+ host_ptr,
+ 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 _cl_kernel* CreateKernel(
+ _cl_program* program,
+ sbyte* kernel_name,
+ int* errcode_ret
+ ) => T.CreateKernel(program, kernel_name, 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 Ptr<_cl_kernel> CreateKernel(
+ Ref<_cl_program> program,
+ Ref kernel_name,
+ Ref errcode_ret
+ ) => T.CreateKernel(program, kernel_name, errcode_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 int CreateKernelsInProgram(
+ _cl_program* program,
+ uint num_kernels,
+ _cl_kernel** kernels,
+ uint* num_kernels_ret
+ ) => T.CreateKernelsInProgram(program, num_kernels, kernels, 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 int CreateKernelsInProgram(
+ Ref<_cl_program> program,
+ uint num_kernels,
+ Ref2D<_cl_kernel> kernels,
+ Ref num_kernels_ret
+ ) => T.CreateKernelsInProgram(program, num_kernels, kernels, num_kernels_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 _cl_mem* CreatePipe(
+ _cl_context* context,
+ ulong flags,
+ uint pipe_packet_size,
+ uint pipe_max_packets,
+ nint* properties,
+ int* errcode_ret
+ ) =>
+ T.CreatePipe(
+ context,
+ flags,
+ pipe_packet_size,
+ pipe_max_packets,
+ properties,
+ 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 Ptr<_cl_mem> CreatePipe(
+ Ref<_cl_context> context,
+ ulong flags,
+ uint pipe_packet_size,
+ uint pipe_max_packets,
+ Ref properties,
+ Ref errcode_ret
+ ) =>
+ T.CreatePipe(
+ context,
+ flags,
+ pipe_packet_size,
+ pipe_max_packets,
+ properties,
+ 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 _cl_program* CreateProgramWithBinary(
+ _cl_context* context,
+ uint num_devices,
+ _cl_device_id** device_list,
+ nuint* lengths,
+ byte** binaries,
+ int* binary_status,
+ int* errcode_ret
+ ) =>
+ T.CreateProgramWithBinary(
+ context,
+ num_devices,
+ device_list,
+ lengths,
+ binaries,
+ binary_status,
+ 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 Ptr<_cl_program> CreateProgramWithBinary(
+ Ref<_cl_context> context,
+ uint num_devices,
+ Ref2D<_cl_device_id> device_list,
+ Ref lengths,
+ Ref2D binaries,
+ Ref